Metamath Proof Explorer


Theorem fucoppc

Description: The isomorphism from the opposite category of functors to the category of opposite functors. (Contributed by Zhi Wang, 18-Nov-2025)

Ref Expression
Hypotheses fucoppc.o O = oppCat C
fucoppc.p P = oppCat D
fucoppc.q Q = C FuncCat D
fucoppc.r R = oppCat Q
fucoppc.s S = O FuncCat P
fucoppc.n N = C Nat D
fucoppc.f No typesetting found for |- ( ph -> F = ( oppFunc |` ( C Func D ) ) ) with typecode |-
fucoppc.g φ G = x C Func D , y C Func D I y N x
fucoppc.t T = CatCat U
fucoppc.b B = Base T
fucoppc.i I = Iso T
fucoppc.c φ C V
fucoppc.d φ D W
fucoppc.1 φ R B
fucoppc.2 φ S B
Assertion fucoppc φ F R I S G

Proof

Step Hyp Ref Expression
1 fucoppc.o O = oppCat C
2 fucoppc.p P = oppCat D
3 fucoppc.q Q = C FuncCat D
4 fucoppc.r R = oppCat Q
5 fucoppc.s S = O FuncCat P
6 fucoppc.n N = C Nat D
7 fucoppc.f Could not format ( ph -> F = ( oppFunc |` ( C Func D ) ) ) : No typesetting found for |- ( ph -> F = ( oppFunc |` ( C Func D ) ) ) with typecode |-
8 fucoppc.g φ G = x C Func D , y C Func D I y N x
9 fucoppc.t T = CatCat U
10 fucoppc.b B = Base T
11 fucoppc.i I = Iso T
12 fucoppc.c φ C V
13 fucoppc.d φ D W
14 fucoppc.1 φ R B
15 fucoppc.2 φ S B
16 3 fucbas C Func D = Base Q
17 4 16 oppcbas C Func D = Base R
18 5 fucbas O Func P = Base S
19 eqid Hom R = Hom R
20 eqid O Nat P = O Nat P
21 5 20 fuchom O Nat P = Hom S
22 eqid Id R = Id R
23 eqid Id S = Id S
24 eqid comp R = comp R
25 eqid comp S = comp S
26 9 10 elbasfv R B U V
27 14 26 syl φ U V
28 9 10 27 catcbas φ B = U Cat
29 14 28 eleqtrd φ R U Cat
30 29 elin2d φ R Cat
31 15 28 eleqtrd φ S U Cat
32 31 elin2d φ S Cat
33 1 2 12 13 oppff1o Could not format ( ph -> ( oppFunc |` ( C Func D ) ) : ( C Func D ) -1-1-onto-> ( O Func P ) ) : No typesetting found for |- ( ph -> ( oppFunc |` ( C Func D ) ) : ( C Func D ) -1-1-onto-> ( O Func P ) ) with typecode |-
34 7 f1oeq1d Could not format ( ph -> ( F : ( C Func D ) -1-1-onto-> ( O Func P ) <-> ( oppFunc |` ( C Func D ) ) : ( C Func D ) -1-1-onto-> ( O Func P ) ) ) : No typesetting found for |- ( ph -> ( F : ( C Func D ) -1-1-onto-> ( O Func P ) <-> ( oppFunc |` ( C Func D ) ) : ( C Func D ) -1-1-onto-> ( O Func P ) ) ) with typecode |-
35 33 34 mpbird φ F : C Func D 1-1 onto O Func P
36 f1of F : C Func D 1-1 onto O Func P F : C Func D O Func P
37 35 36 syl φ F : C Func D O Func P
38 eqid x C Func D , y C Func D I y N x = x C Func D , y C Func D I y N x
39 ovex y N x V
40 resiexg y N x V I y N x V
41 39 40 ax-mp I y N x V
42 38 41 fnmpoi x C Func D , y C Func D I y N x Fn C Func D × C Func D
43 8 fneq1d φ G Fn C Func D × C Func D x C Func D , y C Func D I y N x Fn C Func D × C Func D
44 42 43 mpbiri φ G Fn C Func D × C Func D
45 f1oi I g N f : g N f 1-1 onto g N f
46 8 adantr φ f C Func D g C Func D G = x C Func D , y C Func D I y N x
47 simprl φ f C Func D g C Func D f C Func D
48 simprr φ f C Func D g C Func D g C Func D
49 46 47 48 opf2fval φ f C Func D g C Func D f G g = I g N f
50 3 6 fuchom N = Hom Q
51 50 4 oppchom f Hom R g = g N f
52 51 a1i φ f C Func D g C Func D f Hom R g = g N f
53 7 adantr Could not format ( ( ph /\ ( f e. ( C Func D ) /\ g e. ( C Func D ) ) ) -> F = ( oppFunc |` ( C Func D ) ) ) : No typesetting found for |- ( ( ph /\ ( f e. ( C Func D ) /\ g e. ( C Func D ) ) ) -> F = ( oppFunc |` ( C Func D ) ) ) with typecode |-
54 1 2 6 53 47 48 fucoppclem φ f C Func D g C Func D g N f = F f O Nat P F g
55 54 eqcomd φ f C Func D g C Func D F f O Nat P F g = g N f
56 49 52 55 f1oeq123d φ f C Func D g C Func D f G g : f Hom R g 1-1 onto F f O Nat P F g I g N f : g N f 1-1 onto g N f
57 45 56 mpbiri φ f C Func D g C Func D f G g : f Hom R g 1-1 onto F f O Nat P F g
58 f1of f G g : f Hom R g 1-1 onto F f O Nat P F g f G g : f Hom R g F f O Nat P F g
59 57 58 syl φ f C Func D g C Func D f G g : f Hom R g F f O Nat P F g
60 7 adantr Could not format ( ( ph /\ f e. ( C Func D ) ) -> F = ( oppFunc |` ( C Func D ) ) ) : No typesetting found for |- ( ( ph /\ f e. ( C Func D ) ) -> F = ( oppFunc |` ( C Func D ) ) ) with typecode |-
61 8 adantr φ f C Func D G = x C Func D , y C Func D I y N x
62 simpr φ f C Func D f C Func D
63 1 2 3 4 5 6 60 61 62 fucoppcid φ f C Func D f G f Id R f = Id S F f
64 7 3ad2ant1 Could not format ( ( ph /\ ( f e. ( C Func D ) /\ g e. ( C Func D ) /\ k e. ( C Func D ) ) /\ ( a e. ( f ( Hom ` R ) g ) /\ b e. ( g ( Hom ` R ) k ) ) ) -> F = ( oppFunc |` ( C Func D ) ) ) : No typesetting found for |- ( ( ph /\ ( f e. ( C Func D ) /\ g e. ( C Func D ) /\ k e. ( C Func D ) ) /\ ( a e. ( f ( Hom ` R ) g ) /\ b e. ( g ( Hom ` R ) k ) ) ) -> F = ( oppFunc |` ( C Func D ) ) ) with typecode |-
65 8 3ad2ant1 φ f C Func D g C Func D k C Func D a f Hom R g b g Hom R k G = x C Func D , y C Func D I y N x
66 simp3l φ f C Func D g C Func D k C Func D a f Hom R g b g Hom R k a f Hom R g
67 simp3r φ f C Func D g C Func D k C Func D a f Hom R g b g Hom R k b g Hom R k
68 1 2 3 4 5 6 64 65 66 67 fucoppcco φ f C Func D g C Func D k C Func D a f Hom R g b g Hom R k f G k b f g comp R k a = g G k b F f F g comp S F k f G g a
69 17 18 19 21 22 23 24 25 30 32 37 44 59 63 68 isfuncd φ F R Func S G
70 57 ralrimivva φ f C Func D g C Func D f G g : f Hom R g 1-1 onto F f O Nat P F g
71 17 19 21 isffth2 F R Full S R Faith S G F R Func S G f C Func D g C Func D f G g : f Hom R g 1-1 onto F f O Nat P F g
72 69 70 71 sylanbrc φ F R Full S R Faith S G
73 df-br F R Full S R Faith S G F G R Full S R Faith S
74 72 73 sylib φ F G R Full S R Faith S
75 69 func1st φ 1 st F G = F
76 75 f1oeq1d φ 1 st F G : C Func D 1-1 onto O Func P F : C Func D 1-1 onto O Func P
77 35 76 mpbird φ 1 st F G : C Func D 1-1 onto O Func P
78 9 10 17 18 27 14 15 11 catciso φ F G R I S F G R Full S R Faith S 1 st F G : C Func D 1-1 onto O Func P
79 74 77 78 mpbir2and φ F G R I S
80 df-br F R I S G F G R I S
81 79 80 sylibr φ F R I S G