Step |
Hyp |
Ref |
Expression |
1 |
|
oppcbas.1 |
|- O = ( oppCat ` C ) |
2 |
|
eqid |
|- ( Base ` C ) = ( Base ` C ) |
3 |
1 2
|
oppcbas |
|- ( Base ` C ) = ( Base ` O ) |
4 |
3
|
a1i |
|- ( C e. Cat -> ( Base ` C ) = ( Base ` O ) ) |
5 |
|
eqidd |
|- ( C e. Cat -> ( Hom ` O ) = ( Hom ` O ) ) |
6 |
|
eqidd |
|- ( C e. Cat -> ( comp ` O ) = ( comp ` O ) ) |
7 |
1
|
fvexi |
|- O e. _V |
8 |
7
|
a1i |
|- ( C e. Cat -> O e. _V ) |
9 |
|
biid |
|- ( ( ( x e. ( Base ` C ) /\ y e. ( Base ` C ) ) /\ ( z e. ( Base ` C ) /\ w e. ( Base ` C ) ) /\ ( f e. ( x ( Hom ` O ) y ) /\ g e. ( y ( Hom ` O ) z ) /\ h e. ( z ( Hom ` O ) w ) ) ) <-> ( ( x e. ( Base ` C ) /\ y e. ( Base ` C ) ) /\ ( z e. ( Base ` C ) /\ w e. ( Base ` C ) ) /\ ( f e. ( x ( Hom ` O ) y ) /\ g e. ( y ( Hom ` O ) z ) /\ h e. ( z ( Hom ` O ) w ) ) ) ) |
10 |
|
eqid |
|- ( Hom ` C ) = ( Hom ` C ) |
11 |
|
eqid |
|- ( Id ` C ) = ( Id ` C ) |
12 |
|
simpl |
|- ( ( C e. Cat /\ y e. ( Base ` C ) ) -> C e. Cat ) |
13 |
|
simpr |
|- ( ( C e. Cat /\ y e. ( Base ` C ) ) -> y e. ( Base ` C ) ) |
14 |
2 10 11 12 13
|
catidcl |
|- ( ( C e. Cat /\ y e. ( Base ` C ) ) -> ( ( Id ` C ) ` y ) e. ( y ( Hom ` C ) y ) ) |
15 |
10 1
|
oppchom |
|- ( y ( Hom ` O ) y ) = ( y ( Hom ` C ) y ) |
16 |
14 15
|
eleqtrrdi |
|- ( ( C e. Cat /\ y e. ( Base ` C ) ) -> ( ( Id ` C ) ` y ) e. ( y ( Hom ` O ) y ) ) |
17 |
|
eqid |
|- ( comp ` C ) = ( comp ` C ) |
18 |
|
simpr1l |
|- ( ( C e. Cat /\ ( ( x e. ( Base ` C ) /\ y e. ( Base ` C ) ) /\ ( z e. ( Base ` C ) /\ w e. ( Base ` C ) ) /\ ( f e. ( x ( Hom ` O ) y ) /\ g e. ( y ( Hom ` O ) z ) /\ h e. ( z ( Hom ` O ) w ) ) ) ) -> x e. ( Base ` C ) ) |
19 |
|
simpr1r |
|- ( ( C e. Cat /\ ( ( x e. ( Base ` C ) /\ y e. ( Base ` C ) ) /\ ( z e. ( Base ` C ) /\ w e. ( Base ` C ) ) /\ ( f e. ( x ( Hom ` O ) y ) /\ g e. ( y ( Hom ` O ) z ) /\ h e. ( z ( Hom ` O ) w ) ) ) ) -> y e. ( Base ` C ) ) |
20 |
2 17 1 18 19 19
|
oppcco |
|- ( ( C e. Cat /\ ( ( x e. ( Base ` C ) /\ y e. ( Base ` C ) ) /\ ( z e. ( Base ` C ) /\ w e. ( Base ` C ) ) /\ ( f e. ( x ( Hom ` O ) y ) /\ g e. ( y ( Hom ` O ) z ) /\ h e. ( z ( Hom ` O ) w ) ) ) ) -> ( ( ( Id ` C ) ` y ) ( <. x , y >. ( comp ` O ) y ) f ) = ( f ( <. y , y >. ( comp ` C ) x ) ( ( Id ` C ) ` y ) ) ) |
21 |
|
simpl |
|- ( ( C e. Cat /\ ( ( x e. ( Base ` C ) /\ y e. ( Base ` C ) ) /\ ( z e. ( Base ` C ) /\ w e. ( Base ` C ) ) /\ ( f e. ( x ( Hom ` O ) y ) /\ g e. ( y ( Hom ` O ) z ) /\ h e. ( z ( Hom ` O ) w ) ) ) ) -> C e. Cat ) |
22 |
|
simpr31 |
|- ( ( C e. Cat /\ ( ( x e. ( Base ` C ) /\ y e. ( Base ` C ) ) /\ ( z e. ( Base ` C ) /\ w e. ( Base ` C ) ) /\ ( f e. ( x ( Hom ` O ) y ) /\ g e. ( y ( Hom ` O ) z ) /\ h e. ( z ( Hom ` O ) w ) ) ) ) -> f e. ( x ( Hom ` O ) y ) ) |
23 |
10 1
|
oppchom |
|- ( x ( Hom ` O ) y ) = ( y ( Hom ` C ) x ) |
24 |
22 23
|
eleqtrdi |
|- ( ( C e. Cat /\ ( ( x e. ( Base ` C ) /\ y e. ( Base ` C ) ) /\ ( z e. ( Base ` C ) /\ w e. ( Base ` C ) ) /\ ( f e. ( x ( Hom ` O ) y ) /\ g e. ( y ( Hom ` O ) z ) /\ h e. ( z ( Hom ` O ) w ) ) ) ) -> f e. ( y ( Hom ` C ) x ) ) |
25 |
2 10 11 21 19 17 18 24
|
catrid |
|- ( ( C e. Cat /\ ( ( x e. ( Base ` C ) /\ y e. ( Base ` C ) ) /\ ( z e. ( Base ` C ) /\ w e. ( Base ` C ) ) /\ ( f e. ( x ( Hom ` O ) y ) /\ g e. ( y ( Hom ` O ) z ) /\ h e. ( z ( Hom ` O ) w ) ) ) ) -> ( f ( <. y , y >. ( comp ` C ) x ) ( ( Id ` C ) ` y ) ) = f ) |
26 |
20 25
|
eqtrd |
|- ( ( C e. Cat /\ ( ( x e. ( Base ` C ) /\ y e. ( Base ` C ) ) /\ ( z e. ( Base ` C ) /\ w e. ( Base ` C ) ) /\ ( f e. ( x ( Hom ` O ) y ) /\ g e. ( y ( Hom ` O ) z ) /\ h e. ( z ( Hom ` O ) w ) ) ) ) -> ( ( ( Id ` C ) ` y ) ( <. x , y >. ( comp ` O ) y ) f ) = f ) |
27 |
|
simpr2l |
|- ( ( C e. Cat /\ ( ( x e. ( Base ` C ) /\ y e. ( Base ` C ) ) /\ ( z e. ( Base ` C ) /\ w e. ( Base ` C ) ) /\ ( f e. ( x ( Hom ` O ) y ) /\ g e. ( y ( Hom ` O ) z ) /\ h e. ( z ( Hom ` O ) w ) ) ) ) -> z e. ( Base ` C ) ) |
28 |
2 17 1 19 19 27
|
oppcco |
|- ( ( C e. Cat /\ ( ( x e. ( Base ` C ) /\ y e. ( Base ` C ) ) /\ ( z e. ( Base ` C ) /\ w e. ( Base ` C ) ) /\ ( f e. ( x ( Hom ` O ) y ) /\ g e. ( y ( Hom ` O ) z ) /\ h e. ( z ( Hom ` O ) w ) ) ) ) -> ( g ( <. y , y >. ( comp ` O ) z ) ( ( Id ` C ) ` y ) ) = ( ( ( Id ` C ) ` y ) ( <. z , y >. ( comp ` C ) y ) g ) ) |
29 |
|
simpr32 |
|- ( ( C e. Cat /\ ( ( x e. ( Base ` C ) /\ y e. ( Base ` C ) ) /\ ( z e. ( Base ` C ) /\ w e. ( Base ` C ) ) /\ ( f e. ( x ( Hom ` O ) y ) /\ g e. ( y ( Hom ` O ) z ) /\ h e. ( z ( Hom ` O ) w ) ) ) ) -> g e. ( y ( Hom ` O ) z ) ) |
30 |
10 1
|
oppchom |
|- ( y ( Hom ` O ) z ) = ( z ( Hom ` C ) y ) |
31 |
29 30
|
eleqtrdi |
|- ( ( C e. Cat /\ ( ( x e. ( Base ` C ) /\ y e. ( Base ` C ) ) /\ ( z e. ( Base ` C ) /\ w e. ( Base ` C ) ) /\ ( f e. ( x ( Hom ` O ) y ) /\ g e. ( y ( Hom ` O ) z ) /\ h e. ( z ( Hom ` O ) w ) ) ) ) -> g e. ( z ( Hom ` C ) y ) ) |
32 |
2 10 11 21 27 17 19 31
|
catlid |
|- ( ( C e. Cat /\ ( ( x e. ( Base ` C ) /\ y e. ( Base ` C ) ) /\ ( z e. ( Base ` C ) /\ w e. ( Base ` C ) ) /\ ( f e. ( x ( Hom ` O ) y ) /\ g e. ( y ( Hom ` O ) z ) /\ h e. ( z ( Hom ` O ) w ) ) ) ) -> ( ( ( Id ` C ) ` y ) ( <. z , y >. ( comp ` C ) y ) g ) = g ) |
33 |
28 32
|
eqtrd |
|- ( ( C e. Cat /\ ( ( x e. ( Base ` C ) /\ y e. ( Base ` C ) ) /\ ( z e. ( Base ` C ) /\ w e. ( Base ` C ) ) /\ ( f e. ( x ( Hom ` O ) y ) /\ g e. ( y ( Hom ` O ) z ) /\ h e. ( z ( Hom ` O ) w ) ) ) ) -> ( g ( <. y , y >. ( comp ` O ) z ) ( ( Id ` C ) ` y ) ) = g ) |
34 |
2 17 1 18 19 27
|
oppcco |
|- ( ( C e. Cat /\ ( ( x e. ( Base ` C ) /\ y e. ( Base ` C ) ) /\ ( z e. ( Base ` C ) /\ w e. ( Base ` C ) ) /\ ( f e. ( x ( Hom ` O ) y ) /\ g e. ( y ( Hom ` O ) z ) /\ h e. ( z ( Hom ` O ) w ) ) ) ) -> ( g ( <. x , y >. ( comp ` O ) z ) f ) = ( f ( <. z , y >. ( comp ` C ) x ) g ) ) |
35 |
2 10 17 21 27 19 18 31 24
|
catcocl |
|- ( ( C e. Cat /\ ( ( x e. ( Base ` C ) /\ y e. ( Base ` C ) ) /\ ( z e. ( Base ` C ) /\ w e. ( Base ` C ) ) /\ ( f e. ( x ( Hom ` O ) y ) /\ g e. ( y ( Hom ` O ) z ) /\ h e. ( z ( Hom ` O ) w ) ) ) ) -> ( f ( <. z , y >. ( comp ` C ) x ) g ) e. ( z ( Hom ` C ) x ) ) |
36 |
34 35
|
eqeltrd |
|- ( ( C e. Cat /\ ( ( x e. ( Base ` C ) /\ y e. ( Base ` C ) ) /\ ( z e. ( Base ` C ) /\ w e. ( Base ` C ) ) /\ ( f e. ( x ( Hom ` O ) y ) /\ g e. ( y ( Hom ` O ) z ) /\ h e. ( z ( Hom ` O ) w ) ) ) ) -> ( g ( <. x , y >. ( comp ` O ) z ) f ) e. ( z ( Hom ` C ) x ) ) |
37 |
10 1
|
oppchom |
|- ( x ( Hom ` O ) z ) = ( z ( Hom ` C ) x ) |
38 |
36 37
|
eleqtrrdi |
|- ( ( C e. Cat /\ ( ( x e. ( Base ` C ) /\ y e. ( Base ` C ) ) /\ ( z e. ( Base ` C ) /\ w e. ( Base ` C ) ) /\ ( f e. ( x ( Hom ` O ) y ) /\ g e. ( y ( Hom ` O ) z ) /\ h e. ( z ( Hom ` O ) w ) ) ) ) -> ( g ( <. x , y >. ( comp ` O ) z ) f ) e. ( x ( Hom ` O ) z ) ) |
39 |
|
simpr2r |
|- ( ( C e. Cat /\ ( ( x e. ( Base ` C ) /\ y e. ( Base ` C ) ) /\ ( z e. ( Base ` C ) /\ w e. ( Base ` C ) ) /\ ( f e. ( x ( Hom ` O ) y ) /\ g e. ( y ( Hom ` O ) z ) /\ h e. ( z ( Hom ` O ) w ) ) ) ) -> w e. ( Base ` C ) ) |
40 |
|
simpr33 |
|- ( ( C e. Cat /\ ( ( x e. ( Base ` C ) /\ y e. ( Base ` C ) ) /\ ( z e. ( Base ` C ) /\ w e. ( Base ` C ) ) /\ ( f e. ( x ( Hom ` O ) y ) /\ g e. ( y ( Hom ` O ) z ) /\ h e. ( z ( Hom ` O ) w ) ) ) ) -> h e. ( z ( Hom ` O ) w ) ) |
41 |
10 1
|
oppchom |
|- ( z ( Hom ` O ) w ) = ( w ( Hom ` C ) z ) |
42 |
40 41
|
eleqtrdi |
|- ( ( C e. Cat /\ ( ( x e. ( Base ` C ) /\ y e. ( Base ` C ) ) /\ ( z e. ( Base ` C ) /\ w e. ( Base ` C ) ) /\ ( f e. ( x ( Hom ` O ) y ) /\ g e. ( y ( Hom ` O ) z ) /\ h e. ( z ( Hom ` O ) w ) ) ) ) -> h e. ( w ( Hom ` C ) z ) ) |
43 |
2 10 17 21 39 27 19 42 31 18 24
|
catass |
|- ( ( C e. Cat /\ ( ( x e. ( Base ` C ) /\ y e. ( Base ` C ) ) /\ ( z e. ( Base ` C ) /\ w e. ( Base ` C ) ) /\ ( f e. ( x ( Hom ` O ) y ) /\ g e. ( y ( Hom ` O ) z ) /\ h e. ( z ( Hom ` O ) w ) ) ) ) -> ( ( f ( <. z , y >. ( comp ` C ) x ) g ) ( <. w , z >. ( comp ` C ) x ) h ) = ( f ( <. w , y >. ( comp ` C ) x ) ( g ( <. w , z >. ( comp ` C ) y ) h ) ) ) |
44 |
2 17 1 18 27 39
|
oppcco |
|- ( ( C e. Cat /\ ( ( x e. ( Base ` C ) /\ y e. ( Base ` C ) ) /\ ( z e. ( Base ` C ) /\ w e. ( Base ` C ) ) /\ ( f e. ( x ( Hom ` O ) y ) /\ g e. ( y ( Hom ` O ) z ) /\ h e. ( z ( Hom ` O ) w ) ) ) ) -> ( h ( <. x , z >. ( comp ` O ) w ) ( f ( <. z , y >. ( comp ` C ) x ) g ) ) = ( ( f ( <. z , y >. ( comp ` C ) x ) g ) ( <. w , z >. ( comp ` C ) x ) h ) ) |
45 |
2 17 1 18 19 39
|
oppcco |
|- ( ( C e. Cat /\ ( ( x e. ( Base ` C ) /\ y e. ( Base ` C ) ) /\ ( z e. ( Base ` C ) /\ w e. ( Base ` C ) ) /\ ( f e. ( x ( Hom ` O ) y ) /\ g e. ( y ( Hom ` O ) z ) /\ h e. ( z ( Hom ` O ) w ) ) ) ) -> ( ( g ( <. w , z >. ( comp ` C ) y ) h ) ( <. x , y >. ( comp ` O ) w ) f ) = ( f ( <. w , y >. ( comp ` C ) x ) ( g ( <. w , z >. ( comp ` C ) y ) h ) ) ) |
46 |
43 44 45
|
3eqtr4rd |
|- ( ( C e. Cat /\ ( ( x e. ( Base ` C ) /\ y e. ( Base ` C ) ) /\ ( z e. ( Base ` C ) /\ w e. ( Base ` C ) ) /\ ( f e. ( x ( Hom ` O ) y ) /\ g e. ( y ( Hom ` O ) z ) /\ h e. ( z ( Hom ` O ) w ) ) ) ) -> ( ( g ( <. w , z >. ( comp ` C ) y ) h ) ( <. x , y >. ( comp ` O ) w ) f ) = ( h ( <. x , z >. ( comp ` O ) w ) ( f ( <. z , y >. ( comp ` C ) x ) g ) ) ) |
47 |
2 17 1 19 27 39
|
oppcco |
|- ( ( C e. Cat /\ ( ( x e. ( Base ` C ) /\ y e. ( Base ` C ) ) /\ ( z e. ( Base ` C ) /\ w e. ( Base ` C ) ) /\ ( f e. ( x ( Hom ` O ) y ) /\ g e. ( y ( Hom ` O ) z ) /\ h e. ( z ( Hom ` O ) w ) ) ) ) -> ( h ( <. y , z >. ( comp ` O ) w ) g ) = ( g ( <. w , z >. ( comp ` C ) y ) h ) ) |
48 |
47
|
oveq1d |
|- ( ( C e. Cat /\ ( ( x e. ( Base ` C ) /\ y e. ( Base ` C ) ) /\ ( z e. ( Base ` C ) /\ w e. ( Base ` C ) ) /\ ( f e. ( x ( Hom ` O ) y ) /\ g e. ( y ( Hom ` O ) z ) /\ h e. ( z ( Hom ` O ) w ) ) ) ) -> ( ( h ( <. y , z >. ( comp ` O ) w ) g ) ( <. x , y >. ( comp ` O ) w ) f ) = ( ( g ( <. w , z >. ( comp ` C ) y ) h ) ( <. x , y >. ( comp ` O ) w ) f ) ) |
49 |
34
|
oveq2d |
|- ( ( C e. Cat /\ ( ( x e. ( Base ` C ) /\ y e. ( Base ` C ) ) /\ ( z e. ( Base ` C ) /\ w e. ( Base ` C ) ) /\ ( f e. ( x ( Hom ` O ) y ) /\ g e. ( y ( Hom ` O ) z ) /\ h e. ( z ( Hom ` O ) w ) ) ) ) -> ( h ( <. x , z >. ( comp ` O ) w ) ( g ( <. x , y >. ( comp ` O ) z ) f ) ) = ( h ( <. x , z >. ( comp ` O ) w ) ( f ( <. z , y >. ( comp ` C ) x ) g ) ) ) |
50 |
46 48 49
|
3eqtr4d |
|- ( ( C e. Cat /\ ( ( x e. ( Base ` C ) /\ y e. ( Base ` C ) ) /\ ( z e. ( Base ` C ) /\ w e. ( Base ` C ) ) /\ ( f e. ( x ( Hom ` O ) y ) /\ g e. ( y ( Hom ` O ) z ) /\ h e. ( z ( Hom ` O ) w ) ) ) ) -> ( ( h ( <. y , z >. ( comp ` O ) w ) g ) ( <. x , y >. ( comp ` O ) w ) f ) = ( h ( <. x , z >. ( comp ` O ) w ) ( g ( <. x , y >. ( comp ` O ) z ) f ) ) ) |
51 |
4 5 6 8 9 16 26 33 38 50
|
iscatd2 |
|- ( C e. Cat -> ( O e. Cat /\ ( Id ` O ) = ( y e. ( Base ` C ) |-> ( ( Id ` C ) ` y ) ) ) ) |
52 |
2 11
|
cidfn |
|- ( C e. Cat -> ( Id ` C ) Fn ( Base ` C ) ) |
53 |
|
dffn5 |
|- ( ( Id ` C ) Fn ( Base ` C ) <-> ( Id ` C ) = ( y e. ( Base ` C ) |-> ( ( Id ` C ) ` y ) ) ) |
54 |
52 53
|
sylib |
|- ( C e. Cat -> ( Id ` C ) = ( y e. ( Base ` C ) |-> ( ( Id ` C ) ` y ) ) ) |
55 |
54
|
eqeq2d |
|- ( C e. Cat -> ( ( Id ` O ) = ( Id ` C ) <-> ( Id ` O ) = ( y e. ( Base ` C ) |-> ( ( Id ` C ) ` y ) ) ) ) |
56 |
55
|
anbi2d |
|- ( C e. Cat -> ( ( O e. Cat /\ ( Id ` O ) = ( Id ` C ) ) <-> ( O e. Cat /\ ( Id ` O ) = ( y e. ( Base ` C ) |-> ( ( Id ` C ) ` y ) ) ) ) ) |
57 |
51 56
|
mpbird |
|- ( C e. Cat -> ( O e. Cat /\ ( Id ` O ) = ( Id ` C ) ) ) |