| Step |
Hyp |
Ref |
Expression |
| 1 |
|
ssidd |
|- ( C e. Cat -> ( Base ` C ) C_ ( Base ` C ) ) |
| 2 |
|
ssidd |
|- ( ( C e. Cat /\ ( x e. ( Base ` C ) /\ y e. ( Base ` C ) ) ) -> ( x ( Homf ` C ) y ) C_ ( x ( Homf ` C ) y ) ) |
| 3 |
2
|
ralrimivva |
|- ( C e. Cat -> A. x e. ( Base ` C ) A. y e. ( Base ` C ) ( x ( Homf ` C ) y ) C_ ( x ( Homf ` C ) y ) ) |
| 4 |
|
eqid |
|- ( Homf ` C ) = ( Homf ` C ) |
| 5 |
|
eqid |
|- ( Base ` C ) = ( Base ` C ) |
| 6 |
4 5
|
homffn |
|- ( Homf ` C ) Fn ( ( Base ` C ) X. ( Base ` C ) ) |
| 7 |
6
|
a1i |
|- ( C e. Cat -> ( Homf ` C ) Fn ( ( Base ` C ) X. ( Base ` C ) ) ) |
| 8 |
|
fvexd |
|- ( C e. Cat -> ( Base ` C ) e. _V ) |
| 9 |
7 7 8
|
isssc |
|- ( C e. Cat -> ( ( Homf ` C ) C_cat ( Homf ` C ) <-> ( ( Base ` C ) C_ ( Base ` C ) /\ A. x e. ( Base ` C ) A. y e. ( Base ` C ) ( x ( Homf ` C ) y ) C_ ( x ( Homf ` C ) y ) ) ) ) |
| 10 |
1 3 9
|
mpbir2and |
|- ( C e. Cat -> ( Homf ` C ) C_cat ( Homf ` C ) ) |
| 11 |
|
eqid |
|- ( Hom ` C ) = ( Hom ` C ) |
| 12 |
|
eqid |
|- ( Id ` C ) = ( Id ` C ) |
| 13 |
|
simpl |
|- ( ( C e. Cat /\ x e. ( Base ` C ) ) -> C e. Cat ) |
| 14 |
|
simpr |
|- ( ( C e. Cat /\ x e. ( Base ` C ) ) -> x e. ( Base ` C ) ) |
| 15 |
5 11 12 13 14
|
catidcl |
|- ( ( C e. Cat /\ x e. ( Base ` C ) ) -> ( ( Id ` C ) ` x ) e. ( x ( Hom ` C ) x ) ) |
| 16 |
4 5 11 14 14
|
homfval |
|- ( ( C e. Cat /\ x e. ( Base ` C ) ) -> ( x ( Homf ` C ) x ) = ( x ( Hom ` C ) x ) ) |
| 17 |
15 16
|
eleqtrrd |
|- ( ( C e. Cat /\ x e. ( Base ` C ) ) -> ( ( Id ` C ) ` x ) e. ( x ( Homf ` C ) x ) ) |
| 18 |
|
eqid |
|- ( comp ` C ) = ( comp ` C ) |
| 19 |
13
|
adantr |
|- ( ( ( C e. Cat /\ x e. ( Base ` C ) ) /\ ( y e. ( Base ` C ) /\ z e. ( Base ` C ) ) ) -> C e. Cat ) |
| 20 |
19
|
adantr |
|- ( ( ( ( C e. Cat /\ x e. ( Base ` C ) ) /\ ( y e. ( Base ` C ) /\ z e. ( Base ` C ) ) ) /\ ( f e. ( x ( Homf ` C ) y ) /\ g e. ( y ( Homf ` C ) z ) ) ) -> C e. Cat ) |
| 21 |
14
|
adantr |
|- ( ( ( C e. Cat /\ x e. ( Base ` C ) ) /\ ( y e. ( Base ` C ) /\ z e. ( Base ` C ) ) ) -> x e. ( Base ` C ) ) |
| 22 |
21
|
adantr |
|- ( ( ( ( C e. Cat /\ x e. ( Base ` C ) ) /\ ( y e. ( Base ` C ) /\ z e. ( Base ` C ) ) ) /\ ( f e. ( x ( Homf ` C ) y ) /\ g e. ( y ( Homf ` C ) z ) ) ) -> x e. ( Base ` C ) ) |
| 23 |
|
simpl |
|- ( ( y e. ( Base ` C ) /\ z e. ( Base ` C ) ) -> y e. ( Base ` C ) ) |
| 24 |
23
|
adantl |
|- ( ( ( C e. Cat /\ x e. ( Base ` C ) ) /\ ( y e. ( Base ` C ) /\ z e. ( Base ` C ) ) ) -> y e. ( Base ` C ) ) |
| 25 |
24
|
adantr |
|- ( ( ( ( C e. Cat /\ x e. ( Base ` C ) ) /\ ( y e. ( Base ` C ) /\ z e. ( Base ` C ) ) ) /\ ( f e. ( x ( Homf ` C ) y ) /\ g e. ( y ( Homf ` C ) z ) ) ) -> y e. ( Base ` C ) ) |
| 26 |
|
simpr |
|- ( ( y e. ( Base ` C ) /\ z e. ( Base ` C ) ) -> z e. ( Base ` C ) ) |
| 27 |
26
|
adantl |
|- ( ( ( C e. Cat /\ x e. ( Base ` C ) ) /\ ( y e. ( Base ` C ) /\ z e. ( Base ` C ) ) ) -> z e. ( Base ` C ) ) |
| 28 |
27
|
adantr |
|- ( ( ( ( C e. Cat /\ x e. ( Base ` C ) ) /\ ( y e. ( Base ` C ) /\ z e. ( Base ` C ) ) ) /\ ( f e. ( x ( Homf ` C ) y ) /\ g e. ( y ( Homf ` C ) z ) ) ) -> z e. ( Base ` C ) ) |
| 29 |
4 5 11 21 24
|
homfval |
|- ( ( ( C e. Cat /\ x e. ( Base ` C ) ) /\ ( y e. ( Base ` C ) /\ z e. ( Base ` C ) ) ) -> ( x ( Homf ` C ) y ) = ( x ( Hom ` C ) y ) ) |
| 30 |
29
|
eleq2d |
|- ( ( ( C e. Cat /\ x e. ( Base ` C ) ) /\ ( y e. ( Base ` C ) /\ z e. ( Base ` C ) ) ) -> ( f e. ( x ( Homf ` C ) y ) <-> f e. ( x ( Hom ` C ) y ) ) ) |
| 31 |
30
|
biimpcd |
|- ( f e. ( x ( Homf ` C ) y ) -> ( ( ( C e. Cat /\ x e. ( Base ` C ) ) /\ ( y e. ( Base ` C ) /\ z e. ( Base ` C ) ) ) -> f e. ( x ( Hom ` C ) y ) ) ) |
| 32 |
31
|
adantr |
|- ( ( f e. ( x ( Homf ` C ) y ) /\ g e. ( y ( Homf ` C ) z ) ) -> ( ( ( C e. Cat /\ x e. ( Base ` C ) ) /\ ( y e. ( Base ` C ) /\ z e. ( Base ` C ) ) ) -> f e. ( x ( Hom ` C ) y ) ) ) |
| 33 |
32
|
impcom |
|- ( ( ( ( C e. Cat /\ x e. ( Base ` C ) ) /\ ( y e. ( Base ` C ) /\ z e. ( Base ` C ) ) ) /\ ( f e. ( x ( Homf ` C ) y ) /\ g e. ( y ( Homf ` C ) z ) ) ) -> f e. ( x ( Hom ` C ) y ) ) |
| 34 |
4 5 11 24 27
|
homfval |
|- ( ( ( C e. Cat /\ x e. ( Base ` C ) ) /\ ( y e. ( Base ` C ) /\ z e. ( Base ` C ) ) ) -> ( y ( Homf ` C ) z ) = ( y ( Hom ` C ) z ) ) |
| 35 |
34
|
eleq2d |
|- ( ( ( C e. Cat /\ x e. ( Base ` C ) ) /\ ( y e. ( Base ` C ) /\ z e. ( Base ` C ) ) ) -> ( g e. ( y ( Homf ` C ) z ) <-> g e. ( y ( Hom ` C ) z ) ) ) |
| 36 |
35
|
biimpd |
|- ( ( ( C e. Cat /\ x e. ( Base ` C ) ) /\ ( y e. ( Base ` C ) /\ z e. ( Base ` C ) ) ) -> ( g e. ( y ( Homf ` C ) z ) -> g e. ( y ( Hom ` C ) z ) ) ) |
| 37 |
36
|
adantld |
|- ( ( ( C e. Cat /\ x e. ( Base ` C ) ) /\ ( y e. ( Base ` C ) /\ z e. ( Base ` C ) ) ) -> ( ( f e. ( x ( Homf ` C ) y ) /\ g e. ( y ( Homf ` C ) z ) ) -> g e. ( y ( Hom ` C ) z ) ) ) |
| 38 |
37
|
imp |
|- ( ( ( ( C e. Cat /\ x e. ( Base ` C ) ) /\ ( y e. ( Base ` C ) /\ z e. ( Base ` C ) ) ) /\ ( f e. ( x ( Homf ` C ) y ) /\ g e. ( y ( Homf ` C ) z ) ) ) -> g e. ( y ( Hom ` C ) z ) ) |
| 39 |
5 11 18 20 22 25 28 33 38
|
catcocl |
|- ( ( ( ( C e. Cat /\ x e. ( Base ` C ) ) /\ ( y e. ( Base ` C ) /\ z e. ( Base ` C ) ) ) /\ ( f e. ( x ( Homf ` C ) y ) /\ g e. ( y ( Homf ` C ) z ) ) ) -> ( g ( <. x , y >. ( comp ` C ) z ) f ) e. ( x ( Hom ` C ) z ) ) |
| 40 |
4 5 11 21 27
|
homfval |
|- ( ( ( C e. Cat /\ x e. ( Base ` C ) ) /\ ( y e. ( Base ` C ) /\ z e. ( Base ` C ) ) ) -> ( x ( Homf ` C ) z ) = ( x ( Hom ` C ) z ) ) |
| 41 |
40
|
adantr |
|- ( ( ( ( C e. Cat /\ x e. ( Base ` C ) ) /\ ( y e. ( Base ` C ) /\ z e. ( Base ` C ) ) ) /\ ( f e. ( x ( Homf ` C ) y ) /\ g e. ( y ( Homf ` C ) z ) ) ) -> ( x ( Homf ` C ) z ) = ( x ( Hom ` C ) z ) ) |
| 42 |
39 41
|
eleqtrrd |
|- ( ( ( ( C e. Cat /\ x e. ( Base ` C ) ) /\ ( y e. ( Base ` C ) /\ z e. ( Base ` C ) ) ) /\ ( f e. ( x ( Homf ` C ) y ) /\ g e. ( y ( Homf ` C ) z ) ) ) -> ( g ( <. x , y >. ( comp ` C ) z ) f ) e. ( x ( Homf ` C ) z ) ) |
| 43 |
42
|
ralrimivva |
|- ( ( ( C e. Cat /\ x e. ( Base ` C ) ) /\ ( y e. ( Base ` C ) /\ z e. ( Base ` C ) ) ) -> A. f e. ( x ( Homf ` C ) y ) A. g e. ( y ( Homf ` C ) z ) ( g ( <. x , y >. ( comp ` C ) z ) f ) e. ( x ( Homf ` C ) z ) ) |
| 44 |
43
|
ralrimivva |
|- ( ( C e. Cat /\ x e. ( Base ` C ) ) -> A. y e. ( Base ` C ) A. z e. ( Base ` C ) A. f e. ( x ( Homf ` C ) y ) A. g e. ( y ( Homf ` C ) z ) ( g ( <. x , y >. ( comp ` C ) z ) f ) e. ( x ( Homf ` C ) z ) ) |
| 45 |
17 44
|
jca |
|- ( ( C e. Cat /\ x e. ( Base ` C ) ) -> ( ( ( Id ` C ) ` x ) e. ( x ( Homf ` C ) x ) /\ A. y e. ( Base ` C ) A. z e. ( Base ` C ) A. f e. ( x ( Homf ` C ) y ) A. g e. ( y ( Homf ` C ) z ) ( g ( <. x , y >. ( comp ` C ) z ) f ) e. ( x ( Homf ` C ) z ) ) ) |
| 46 |
45
|
ralrimiva |
|- ( C e. Cat -> A. x e. ( Base ` C ) ( ( ( Id ` C ) ` x ) e. ( x ( Homf ` C ) x ) /\ A. y e. ( Base ` C ) A. z e. ( Base ` C ) A. f e. ( x ( Homf ` C ) y ) A. g e. ( y ( Homf ` C ) z ) ( g ( <. x , y >. ( comp ` C ) z ) f ) e. ( x ( Homf ` C ) z ) ) ) |
| 47 |
|
id |
|- ( C e. Cat -> C e. Cat ) |
| 48 |
4 12 18 47 7
|
issubc2 |
|- ( C e. Cat -> ( ( Homf ` C ) e. ( Subcat ` C ) <-> ( ( Homf ` C ) C_cat ( Homf ` C ) /\ A. x e. ( Base ` C ) ( ( ( Id ` C ) ` x ) e. ( x ( Homf ` C ) x ) /\ A. y e. ( Base ` C ) A. z e. ( Base ` C ) A. f e. ( x ( Homf ` C ) y ) A. g e. ( y ( Homf ` C ) z ) ( g ( <. x , y >. ( comp ` C ) z ) f ) e. ( x ( Homf ` C ) z ) ) ) ) ) |
| 49 |
10 46 48
|
mpbir2and |
|- ( C e. Cat -> ( Homf ` C ) e. ( Subcat ` C ) ) |