Metamath Proof Explorer


Theorem ranfval

Description: Value of the function generating the set of right Kan extensions. (Contributed by Zhi Wang, 4-Nov-2025)

Ref Expression
Hypotheses lanfval.r ⊢ R = D FuncCat E
lanfval.s ⊢ S = C FuncCat E
lanfval.c ⊢ φ → C ∈ U
lanfval.d ⊢ φ → D ∈ V
lanfval.e ⊢ φ → E ∈ W
ranfval.o ⊢ O = oppCat ⁡ R
ranfval.p ⊢ P = oppCat ⁡ S
Assertion ranfval Could not format assertion : No typesetting found for |- ( ph -> ( <. C , D >. Ran E ) = ( f e. ( C Func D ) , x e. ( C Func E ) |-> ( ( oppFunc ` ( <. D , E >. -o.F f ) ) ( O UP P ) x ) ) ) with typecode |-

Proof

Step Hyp Ref Expression
1 lanfval.r ⊢ R = D FuncCat E
2 lanfval.s ⊢ S = C FuncCat E
3 lanfval.c ⊢ φ → C ∈ U
4 lanfval.d ⊢ φ → D ∈ V
5 lanfval.e ⊢ φ → E ∈ W
6 ranfval.o ⊢ O = oppCat ⁡ R
7 ranfval.p ⊢ P = oppCat ⁡ S
8 df-ran Could not format Ran = ( p e. ( _V X. _V ) , e e. _V |-> [_ ( 1st ` p ) / c ]_ [_ ( 2nd ` p ) / d ]_ ( f e. ( c Func d ) , x e. ( c Func e ) |-> ( ( oppFunc ` ( <. d , e >. -o.F f ) ) ( ( oppCat ` ( d FuncCat e ) ) UP ( oppCat ` ( c FuncCat e ) ) ) x ) ) ) : No typesetting found for |- Ran = ( p e. ( _V X. _V ) , e e. _V |-> [_ ( 1st ` p ) / c ]_ [_ ( 2nd ` p ) / d ]_ ( f e. ( c Func d ) , x e. ( c Func e ) |-> ( ( oppFunc ` ( <. d , e >. -o.F f ) ) ( ( oppCat ` ( d FuncCat e ) ) UP ( oppCat ` ( c FuncCat e ) ) ) x ) ) ) with typecode |-
9 8 a1i Could not format ( ph -> Ran = ( p e. ( _V X. _V ) , e e. _V |-> [_ ( 1st ` p ) / c ]_ [_ ( 2nd ` p ) / d ]_ ( f e. ( c Func d ) , x e. ( c Func e ) |-> ( ( oppFunc ` ( <. d , e >. -o.F f ) ) ( ( oppCat ` ( d FuncCat e ) ) UP ( oppCat ` ( c FuncCat e ) ) ) x ) ) ) ) : No typesetting found for |- ( ph -> Ran = ( p e. ( _V X. _V ) , e e. _V |-> [_ ( 1st ` p ) / c ]_ [_ ( 2nd ` p ) / d ]_ ( f e. ( c Func d ) , x e. ( c Func e ) |-> ( ( oppFunc ` ( <. d , e >. -o.F f ) ) ( ( oppCat ` ( d FuncCat e ) ) UP ( oppCat ` ( c FuncCat e ) ) ) x ) ) ) ) with typecode |-
10 fvexd ⊢ φ ∧ p = C D ∧ e = E → 1 st ⁡ p ∈ V
11 simprl ⊢ φ ∧ p = C D ∧ e = E → p = C D
12 11 fveq2d ⊢ φ ∧ p = C D ∧ e = E → 1 st ⁡ p = 1 st ⁡ C D
13 op1stg ⊢ C ∈ U ∧ D ∈ V → 1 st ⁡ C D = C
14 3 4 13 syl2anc ⊢ φ → 1 st ⁡ C D = C
15 14 adantr ⊢ φ ∧ p = C D ∧ e = E → 1 st ⁡ C D = C
16 12 15 eqtrd ⊢ φ ∧ p = C D ∧ e = E → 1 st ⁡ p = C
17 fvexd ⊢ φ ∧ p = C D ∧ e = E ∧ c = C → 2 nd ⁡ p ∈ V
18 simplrl ⊢ φ ∧ p = C D ∧ e = E ∧ c = C → p = C D
19 18 fveq2d ⊢ φ ∧ p = C D ∧ e = E ∧ c = C → 2 nd ⁡ p = 2 nd ⁡ C D
20 op2ndg ⊢ C ∈ U ∧ D ∈ V → 2 nd ⁡ C D = D
21 3 4 20 syl2anc ⊢ φ → 2 nd ⁡ C D = D
22 21 ad2antrr ⊢ φ ∧ p = C D ∧ e = E ∧ c = C → 2 nd ⁡ C D = D
23 19 22 eqtrd ⊢ φ ∧ p = C D ∧ e = E ∧ c = C → 2 nd ⁡ p = D
24 simplr ⊢ φ ∧ p = C D ∧ e = E ∧ c = C ∧ d = D → c = C
25 simpr ⊢ φ ∧ p = C D ∧ e = E ∧ c = C ∧ d = D → d = D
26 24 25 oveq12d ⊢ φ ∧ p = C D ∧ e = E ∧ c = C ∧ d = D → c Func d = C Func D
27 simpllr ⊢ φ ∧ p = C D ∧ e = E ∧ c = C ∧ d = D → p = C D ∧ e = E
28 27 simprd ⊢ φ ∧ p = C D ∧ e = E ∧ c = C ∧ d = D → e = E
29 24 28 oveq12d ⊢ φ ∧ p = C D ∧ e = E ∧ c = C ∧ d = D → c Func e = C Func E
30 25 28 oveq12d ⊢ φ ∧ p = C D ∧ e = E ∧ c = C ∧ d = D → d FuncCat e = D FuncCat E
31 30 fveq2d ⊢ φ ∧ p = C D ∧ e = E ∧ c = C ∧ d = D → oppCat ⁡ d FuncCat e = oppCat ⁡ D FuncCat E
32 1 fveq2i ⊢ oppCat ⁡ R = oppCat ⁡ D FuncCat E
33 6 32 eqtri ⊢ O = oppCat ⁡ D FuncCat E
34 31 33 eqtr4di ⊢ φ ∧ p = C D ∧ e = E ∧ c = C ∧ d = D → oppCat ⁡ d FuncCat e = O
35 24 28 oveq12d ⊢ φ ∧ p = C D ∧ e = E ∧ c = C ∧ d = D → c FuncCat e = C FuncCat E
36 35 fveq2d ⊢ φ ∧ p = C D ∧ e = E ∧ c = C ∧ d = D → oppCat ⁡ c FuncCat e = oppCat ⁡ C FuncCat E
37 2 fveq2i ⊢ oppCat ⁡ S = oppCat ⁡ C FuncCat E
38 7 37 eqtri ⊢ P = oppCat ⁡ C FuncCat E
39 36 38 eqtr4di ⊢ φ ∧ p = C D ∧ e = E ∧ c = C ∧ d = D → oppCat ⁡ c FuncCat e = P
40 34 39 oveq12d Could not format ( ( ( ( ph /\ ( p = <. C , D >. /\ e = E ) ) /\ c = C ) /\ d = D ) -> ( ( oppCat ` ( d FuncCat e ) ) UP ( oppCat ` ( c FuncCat e ) ) ) = ( O UP P ) ) : No typesetting found for |- ( ( ( ( ph /\ ( p = <. C , D >. /\ e = E ) ) /\ c = C ) /\ d = D ) -> ( ( oppCat ` ( d FuncCat e ) ) UP ( oppCat ` ( c FuncCat e ) ) ) = ( O UP P ) ) with typecode |-
41 25 28 opeq12d ⊢ φ ∧ p = C D ∧ e = E ∧ c = C ∧ d = D → d e = D E
42 41 fvoveq1d Could not format ( ( ( ( ph /\ ( p = <. C , D >. /\ e = E ) ) /\ c = C ) /\ d = D ) -> ( oppFunc ` ( <. d , e >. -o.F f ) ) = ( oppFunc ` ( <. D , E >. -o.F f ) ) ) : No typesetting found for |- ( ( ( ( ph /\ ( p = <. C , D >. /\ e = E ) ) /\ c = C ) /\ d = D ) -> ( oppFunc ` ( <. d , e >. -o.F f ) ) = ( oppFunc ` ( <. D , E >. -o.F f ) ) ) with typecode |-
43 eqidd ⊢ φ ∧ p = C D ∧ e = E ∧ c = C ∧ d = D → x = x
44 40 42 43 oveq123d Could not format ( ( ( ( ph /\ ( p = <. C , D >. /\ e = E ) ) /\ c = C ) /\ d = D ) -> ( ( oppFunc ` ( <. d , e >. -o.F f ) ) ( ( oppCat ` ( d FuncCat e ) ) UP ( oppCat ` ( c FuncCat e ) ) ) x ) = ( ( oppFunc ` ( <. D , E >. -o.F f ) ) ( O UP P ) x ) ) : No typesetting found for |- ( ( ( ( ph /\ ( p = <. C , D >. /\ e = E ) ) /\ c = C ) /\ d = D ) -> ( ( oppFunc ` ( <. d , e >. -o.F f ) ) ( ( oppCat ` ( d FuncCat e ) ) UP ( oppCat ` ( c FuncCat e ) ) ) x ) = ( ( oppFunc ` ( <. D , E >. -o.F f ) ) ( O UP P ) x ) ) with typecode |-
45 26 29 44 mpoeq123dv Could not format ( ( ( ( ph /\ ( p = <. C , D >. /\ e = E ) ) /\ c = C ) /\ d = D ) -> ( f e. ( c Func d ) , x e. ( c Func e ) |-> ( ( oppFunc ` ( <. d , e >. -o.F f ) ) ( ( oppCat ` ( d FuncCat e ) ) UP ( oppCat ` ( c FuncCat e ) ) ) x ) ) = ( f e. ( C Func D ) , x e. ( C Func E ) |-> ( ( oppFunc ` ( <. D , E >. -o.F f ) ) ( O UP P ) x ) ) ) : No typesetting found for |- ( ( ( ( ph /\ ( p = <. C , D >. /\ e = E ) ) /\ c = C ) /\ d = D ) -> ( f e. ( c Func d ) , x e. ( c Func e ) |-> ( ( oppFunc ` ( <. d , e >. -o.F f ) ) ( ( oppCat ` ( d FuncCat e ) ) UP ( oppCat ` ( c FuncCat e ) ) ) x ) ) = ( f e. ( C Func D ) , x e. ( C Func E ) |-> ( ( oppFunc ` ( <. D , E >. -o.F f ) ) ( O UP P ) x ) ) ) with typecode |-
46 17 23 45 csbied2 Could not format ( ( ( ph /\ ( p = <. C , D >. /\ e = E ) ) /\ c = C ) -> [_ ( 2nd ` p ) / d ]_ ( f e. ( c Func d ) , x e. ( c Func e ) |-> ( ( oppFunc ` ( <. d , e >. -o.F f ) ) ( ( oppCat ` ( d FuncCat e ) ) UP ( oppCat ` ( c FuncCat e ) ) ) x ) ) = ( f e. ( C Func D ) , x e. ( C Func E ) |-> ( ( oppFunc ` ( <. D , E >. -o.F f ) ) ( O UP P ) x ) ) ) : No typesetting found for |- ( ( ( ph /\ ( p = <. C , D >. /\ e = E ) ) /\ c = C ) -> [_ ( 2nd ` p ) / d ]_ ( f e. ( c Func d ) , x e. ( c Func e ) |-> ( ( oppFunc ` ( <. d , e >. -o.F f ) ) ( ( oppCat ` ( d FuncCat e ) ) UP ( oppCat ` ( c FuncCat e ) ) ) x ) ) = ( f e. ( C Func D ) , x e. ( C Func E ) |-> ( ( oppFunc ` ( <. D , E >. -o.F f ) ) ( O UP P ) x ) ) ) with typecode |-
47 10 16 46 csbied2 Could not format ( ( ph /\ ( p = <. C , D >. /\ e = E ) ) -> [_ ( 1st ` p ) / c ]_ [_ ( 2nd ` p ) / d ]_ ( f e. ( c Func d ) , x e. ( c Func e ) |-> ( ( oppFunc ` ( <. d , e >. -o.F f ) ) ( ( oppCat ` ( d FuncCat e ) ) UP ( oppCat ` ( c FuncCat e ) ) ) x ) ) = ( f e. ( C Func D ) , x e. ( C Func E ) |-> ( ( oppFunc ` ( <. D , E >. -o.F f ) ) ( O UP P ) x ) ) ) : No typesetting found for |- ( ( ph /\ ( p = <. C , D >. /\ e = E ) ) -> [_ ( 1st ` p ) / c ]_ [_ ( 2nd ` p ) / d ]_ ( f e. ( c Func d ) , x e. ( c Func e ) |-> ( ( oppFunc ` ( <. d , e >. -o.F f ) ) ( ( oppCat ` ( d FuncCat e ) ) UP ( oppCat ` ( c FuncCat e ) ) ) x ) ) = ( f e. ( C Func D ) , x e. ( C Func E ) |-> ( ( oppFunc ` ( <. D , E >. -o.F f ) ) ( O UP P ) x ) ) ) with typecode |-
48 3 elexd ⊢ φ → C ∈ V
49 4 elexd ⊢ φ → D ∈ V
50 48 49 opelxpd ⊢ φ → C D ∈ V × V
51 5 elexd ⊢ φ → E ∈ V
52 ovex ⊢ C Func D ∈ V
53 ovex ⊢ C Func E ∈ V
54 52 53 mpoex Could not format ( f e. ( C Func D ) , x e. ( C Func E ) |-> ( ( oppFunc ` ( <. D , E >. -o.F f ) ) ( O UP P ) x ) ) e. _V : No typesetting found for |- ( f e. ( C Func D ) , x e. ( C Func E ) |-> ( ( oppFunc ` ( <. D , E >. -o.F f ) ) ( O UP P ) x ) ) e. _V with typecode |-
55 54 a1i Could not format ( ph -> ( f e. ( C Func D ) , x e. ( C Func E ) |-> ( ( oppFunc ` ( <. D , E >. -o.F f ) ) ( O UP P ) x ) ) e. _V ) : No typesetting found for |- ( ph -> ( f e. ( C Func D ) , x e. ( C Func E ) |-> ( ( oppFunc ` ( <. D , E >. -o.F f ) ) ( O UP P ) x ) ) e. _V ) with typecode |-
56 9 47 50 51 55 ovmpod Could not format ( ph -> ( <. C , D >. Ran E ) = ( f e. ( C Func D ) , x e. ( C Func E ) |-> ( ( oppFunc ` ( <. D , E >. -o.F f ) ) ( O UP P ) x ) ) ) : No typesetting found for |- ( ph -> ( <. C , D >. Ran E ) = ( f e. ( C Func D ) , x e. ( C Func E ) |-> ( ( oppFunc ` ( <. D , E >. -o.F f ) ) ( O UP P ) x ) ) ) with typecode |-