Step |
Hyp |
Ref |
Expression |
1 |
|
fucbas.q |
|- Q = ( C FuncCat D ) |
2 |
|
fuchom.n |
|- N = ( C Nat D ) |
3 |
|
eqid |
|- ( C Func D ) = ( C Func D ) |
4 |
|
eqid |
|- ( Base ` C ) = ( Base ` C ) |
5 |
|
eqid |
|- ( comp ` D ) = ( comp ` D ) |
6 |
|
simpl |
|- ( ( C e. Cat /\ D e. Cat ) -> C e. Cat ) |
7 |
|
simpr |
|- ( ( C e. Cat /\ D e. Cat ) -> D e. Cat ) |
8 |
|
eqid |
|- ( comp ` Q ) = ( comp ` Q ) |
9 |
1 3 2 4 5 6 7 8
|
fuccofval |
|- ( ( C e. Cat /\ D e. Cat ) -> ( comp ` Q ) = ( v e. ( ( C Func D ) X. ( C Func D ) ) , h e. ( C Func D ) |-> [_ ( 1st ` v ) / f ]_ [_ ( 2nd ` v ) / g ]_ ( b e. ( g N h ) , a e. ( f N g ) |-> ( x e. ( Base ` C ) |-> ( ( b ` x ) ( <. ( ( 1st ` f ) ` x ) , ( ( 1st ` g ) ` x ) >. ( comp ` D ) ( ( 1st ` h ) ` x ) ) ( a ` x ) ) ) ) ) ) |
10 |
1 3 2 4 5 6 7 9
|
fucval |
|- ( ( C e. Cat /\ D e. Cat ) -> Q = { <. ( Base ` ndx ) , ( C Func D ) >. , <. ( Hom ` ndx ) , N >. , <. ( comp ` ndx ) , ( comp ` Q ) >. } ) |
11 |
|
catstr |
|- { <. ( Base ` ndx ) , ( C Func D ) >. , <. ( Hom ` ndx ) , N >. , <. ( comp ` ndx ) , ( comp ` Q ) >. } Struct <. 1 , ; 1 5 >. |
12 |
|
homid |
|- Hom = Slot ( Hom ` ndx ) |
13 |
|
snsstp2 |
|- { <. ( Hom ` ndx ) , N >. } C_ { <. ( Base ` ndx ) , ( C Func D ) >. , <. ( Hom ` ndx ) , N >. , <. ( comp ` ndx ) , ( comp ` Q ) >. } |
14 |
2
|
ovexi |
|- N e. _V |
15 |
14
|
a1i |
|- ( ( C e. Cat /\ D e. Cat ) -> N e. _V ) |
16 |
|
eqid |
|- ( Hom ` Q ) = ( Hom ` Q ) |
17 |
10 11 12 13 15 16
|
strfv3 |
|- ( ( C e. Cat /\ D e. Cat ) -> ( Hom ` Q ) = N ) |
18 |
17
|
eqcomd |
|- ( ( C e. Cat /\ D e. Cat ) -> N = ( Hom ` Q ) ) |
19 |
12
|
str0 |
|- (/) = ( Hom ` (/) ) |
20 |
2
|
natffn |
|- N Fn ( ( C Func D ) X. ( C Func D ) ) |
21 |
|
funcrcl |
|- ( f e. ( C Func D ) -> ( C e. Cat /\ D e. Cat ) ) |
22 |
21
|
con3i |
|- ( -. ( C e. Cat /\ D e. Cat ) -> -. f e. ( C Func D ) ) |
23 |
22
|
eq0rdv |
|- ( -. ( C e. Cat /\ D e. Cat ) -> ( C Func D ) = (/) ) |
24 |
23
|
xpeq2d |
|- ( -. ( C e. Cat /\ D e. Cat ) -> ( ( C Func D ) X. ( C Func D ) ) = ( ( C Func D ) X. (/) ) ) |
25 |
|
xp0 |
|- ( ( C Func D ) X. (/) ) = (/) |
26 |
24 25
|
eqtrdi |
|- ( -. ( C e. Cat /\ D e. Cat ) -> ( ( C Func D ) X. ( C Func D ) ) = (/) ) |
27 |
26
|
fneq2d |
|- ( -. ( C e. Cat /\ D e. Cat ) -> ( N Fn ( ( C Func D ) X. ( C Func D ) ) <-> N Fn (/) ) ) |
28 |
20 27
|
mpbii |
|- ( -. ( C e. Cat /\ D e. Cat ) -> N Fn (/) ) |
29 |
|
fn0 |
|- ( N Fn (/) <-> N = (/) ) |
30 |
28 29
|
sylib |
|- ( -. ( C e. Cat /\ D e. Cat ) -> N = (/) ) |
31 |
|
fnfuc |
|- FuncCat Fn ( Cat X. Cat ) |
32 |
31
|
fndmi |
|- dom FuncCat = ( Cat X. Cat ) |
33 |
32
|
ndmov |
|- ( -. ( C e. Cat /\ D e. Cat ) -> ( C FuncCat D ) = (/) ) |
34 |
1 33
|
eqtrid |
|- ( -. ( C e. Cat /\ D e. Cat ) -> Q = (/) ) |
35 |
34
|
fveq2d |
|- ( -. ( C e. Cat /\ D e. Cat ) -> ( Hom ` Q ) = ( Hom ` (/) ) ) |
36 |
19 30 35
|
3eqtr4a |
|- ( -. ( C e. Cat /\ D e. Cat ) -> N = ( Hom ` Q ) ) |
37 |
18 36
|
pm2.61i |
|- N = ( Hom ` Q ) |