| Step |
Hyp |
Ref |
Expression |
| 1 |
|
termoeu1.c |
|- ( ph -> C e. Cat ) |
| 2 |
|
termoeu1.a |
|- ( ph -> A e. ( TermO ` C ) ) |
| 3 |
|
termoeu1.b |
|- ( ph -> B e. ( TermO ` C ) ) |
| 4 |
|
eqid |
|- ( Base ` C ) = ( Base ` C ) |
| 5 |
|
eqid |
|- ( Hom ` C ) = ( Hom ` C ) |
| 6 |
4 5 1
|
istermoi |
|- ( ( ph /\ B e. ( TermO ` C ) ) -> ( B e. ( Base ` C ) /\ A. a e. ( Base ` C ) E! f f e. ( a ( Hom ` C ) B ) ) ) |
| 7 |
3 6
|
mpdan |
|- ( ph -> ( B e. ( Base ` C ) /\ A. a e. ( Base ` C ) E! f f e. ( a ( Hom ` C ) B ) ) ) |
| 8 |
4 5 1
|
istermoi |
|- ( ( ph /\ A e. ( TermO ` C ) ) -> ( A e. ( Base ` C ) /\ A. b e. ( Base ` C ) E! g g e. ( b ( Hom ` C ) A ) ) ) |
| 9 |
2 8
|
mpdan |
|- ( ph -> ( A e. ( Base ` C ) /\ A. b e. ( Base ` C ) E! g g e. ( b ( Hom ` C ) A ) ) ) |
| 10 |
|
oveq1 |
|- ( a = A -> ( a ( Hom ` C ) B ) = ( A ( Hom ` C ) B ) ) |
| 11 |
10
|
eleq2d |
|- ( a = A -> ( f e. ( a ( Hom ` C ) B ) <-> f e. ( A ( Hom ` C ) B ) ) ) |
| 12 |
11
|
eubidv |
|- ( a = A -> ( E! f f e. ( a ( Hom ` C ) B ) <-> E! f f e. ( A ( Hom ` C ) B ) ) ) |
| 13 |
12
|
rspcv |
|- ( A e. ( Base ` C ) -> ( A. a e. ( Base ` C ) E! f f e. ( a ( Hom ` C ) B ) -> E! f f e. ( A ( Hom ` C ) B ) ) ) |
| 14 |
|
eqid |
|- ( Iso ` C ) = ( Iso ` C ) |
| 15 |
1
|
adantr |
|- ( ( ph /\ ( A e. ( Base ` C ) /\ B e. ( Base ` C ) ) ) -> C e. Cat ) |
| 16 |
|
simprl |
|- ( ( ph /\ ( A e. ( Base ` C ) /\ B e. ( Base ` C ) ) ) -> A e. ( Base ` C ) ) |
| 17 |
|
simprr |
|- ( ( ph /\ ( A e. ( Base ` C ) /\ B e. ( Base ` C ) ) ) -> B e. ( Base ` C ) ) |
| 18 |
4 5 14 15 16 17
|
isohom |
|- ( ( ph /\ ( A e. ( Base ` C ) /\ B e. ( Base ` C ) ) ) -> ( A ( Iso ` C ) B ) C_ ( A ( Hom ` C ) B ) ) |
| 19 |
18
|
adantr |
|- ( ( ( ph /\ ( A e. ( Base ` C ) /\ B e. ( Base ` C ) ) ) /\ ( E! f f e. ( A ( Hom ` C ) B ) /\ A. b e. ( Base ` C ) E! g g e. ( b ( Hom ` C ) A ) ) ) -> ( A ( Iso ` C ) B ) C_ ( A ( Hom ` C ) B ) ) |
| 20 |
|
euex |
|- ( E! f f e. ( A ( Hom ` C ) B ) -> E. f f e. ( A ( Hom ` C ) B ) ) |
| 21 |
20
|
a1i |
|- ( ( ph /\ ( A e. ( Base ` C ) /\ B e. ( Base ` C ) ) ) -> ( E! f f e. ( A ( Hom ` C ) B ) -> E. f f e. ( A ( Hom ` C ) B ) ) ) |
| 22 |
|
oveq1 |
|- ( b = B -> ( b ( Hom ` C ) A ) = ( B ( Hom ` C ) A ) ) |
| 23 |
22
|
eleq2d |
|- ( b = B -> ( g e. ( b ( Hom ` C ) A ) <-> g e. ( B ( Hom ` C ) A ) ) ) |
| 24 |
23
|
eubidv |
|- ( b = B -> ( E! g g e. ( b ( Hom ` C ) A ) <-> E! g g e. ( B ( Hom ` C ) A ) ) ) |
| 25 |
24
|
rspcva |
|- ( ( B e. ( Base ` C ) /\ A. b e. ( Base ` C ) E! g g e. ( b ( Hom ` C ) A ) ) -> E! g g e. ( B ( Hom ` C ) A ) ) |
| 26 |
|
euex |
|- ( E! g g e. ( B ( Hom ` C ) A ) -> E. g g e. ( B ( Hom ` C ) A ) ) |
| 27 |
25 26
|
syl |
|- ( ( B e. ( Base ` C ) /\ A. b e. ( Base ` C ) E! g g e. ( b ( Hom ` C ) A ) ) -> E. g g e. ( B ( Hom ` C ) A ) ) |
| 28 |
27
|
ex |
|- ( B e. ( Base ` C ) -> ( A. b e. ( Base ` C ) E! g g e. ( b ( Hom ` C ) A ) -> E. g g e. ( B ( Hom ` C ) A ) ) ) |
| 29 |
28
|
ad2antll |
|- ( ( ph /\ ( A e. ( Base ` C ) /\ B e. ( Base ` C ) ) ) -> ( A. b e. ( Base ` C ) E! g g e. ( b ( Hom ` C ) A ) -> E. g g e. ( B ( Hom ` C ) A ) ) ) |
| 30 |
|
eqid |
|- ( Inv ` C ) = ( Inv ` C ) |
| 31 |
15
|
ad2antrr |
|- ( ( ( ( ph /\ ( A e. ( Base ` C ) /\ B e. ( Base ` C ) ) ) /\ g e. ( B ( Hom ` C ) A ) ) /\ f e. ( A ( Hom ` C ) B ) ) -> C e. Cat ) |
| 32 |
16
|
ad2antrr |
|- ( ( ( ( ph /\ ( A e. ( Base ` C ) /\ B e. ( Base ` C ) ) ) /\ g e. ( B ( Hom ` C ) A ) ) /\ f e. ( A ( Hom ` C ) B ) ) -> A e. ( Base ` C ) ) |
| 33 |
17
|
ad2antrr |
|- ( ( ( ( ph /\ ( A e. ( Base ` C ) /\ B e. ( Base ` C ) ) ) /\ g e. ( B ( Hom ` C ) A ) ) /\ f e. ( A ( Hom ` C ) B ) ) -> B e. ( Base ` C ) ) |
| 34 |
1 2 3
|
2termoinv |
|- ( ( ph /\ g e. ( B ( Hom ` C ) A ) /\ f e. ( A ( Hom ` C ) B ) ) -> f ( A ( Inv ` C ) B ) g ) |
| 35 |
34
|
ad4ant134 |
|- ( ( ( ( ph /\ ( A e. ( Base ` C ) /\ B e. ( Base ` C ) ) ) /\ g e. ( B ( Hom ` C ) A ) ) /\ f e. ( A ( Hom ` C ) B ) ) -> f ( A ( Inv ` C ) B ) g ) |
| 36 |
4 30 31 32 33 14 35
|
inviso1 |
|- ( ( ( ( ph /\ ( A e. ( Base ` C ) /\ B e. ( Base ` C ) ) ) /\ g e. ( B ( Hom ` C ) A ) ) /\ f e. ( A ( Hom ` C ) B ) ) -> f e. ( A ( Iso ` C ) B ) ) |
| 37 |
36
|
ex |
|- ( ( ( ph /\ ( A e. ( Base ` C ) /\ B e. ( Base ` C ) ) ) /\ g e. ( B ( Hom ` C ) A ) ) -> ( f e. ( A ( Hom ` C ) B ) -> f e. ( A ( Iso ` C ) B ) ) ) |
| 38 |
37
|
eximdv |
|- ( ( ( ph /\ ( A e. ( Base ` C ) /\ B e. ( Base ` C ) ) ) /\ g e. ( B ( Hom ` C ) A ) ) -> ( E. f f e. ( A ( Hom ` C ) B ) -> E. f f e. ( A ( Iso ` C ) B ) ) ) |
| 39 |
38
|
expcom |
|- ( g e. ( B ( Hom ` C ) A ) -> ( ( ph /\ ( A e. ( Base ` C ) /\ B e. ( Base ` C ) ) ) -> ( E. f f e. ( A ( Hom ` C ) B ) -> E. f f e. ( A ( Iso ` C ) B ) ) ) ) |
| 40 |
39
|
exlimiv |
|- ( E. g g e. ( B ( Hom ` C ) A ) -> ( ( ph /\ ( A e. ( Base ` C ) /\ B e. ( Base ` C ) ) ) -> ( E. f f e. ( A ( Hom ` C ) B ) -> E. f f e. ( A ( Iso ` C ) B ) ) ) ) |
| 41 |
40
|
com3l |
|- ( ( ph /\ ( A e. ( Base ` C ) /\ B e. ( Base ` C ) ) ) -> ( E. f f e. ( A ( Hom ` C ) B ) -> ( E. g g e. ( B ( Hom ` C ) A ) -> E. f f e. ( A ( Iso ` C ) B ) ) ) ) |
| 42 |
41
|
impd |
|- ( ( ph /\ ( A e. ( Base ` C ) /\ B e. ( Base ` C ) ) ) -> ( ( E. f f e. ( A ( Hom ` C ) B ) /\ E. g g e. ( B ( Hom ` C ) A ) ) -> E. f f e. ( A ( Iso ` C ) B ) ) ) |
| 43 |
21 29 42
|
syl2and |
|- ( ( ph /\ ( A e. ( Base ` C ) /\ B e. ( Base ` C ) ) ) -> ( ( E! f f e. ( A ( Hom ` C ) B ) /\ A. b e. ( Base ` C ) E! g g e. ( b ( Hom ` C ) A ) ) -> E. f f e. ( A ( Iso ` C ) B ) ) ) |
| 44 |
43
|
imp |
|- ( ( ( ph /\ ( A e. ( Base ` C ) /\ B e. ( Base ` C ) ) ) /\ ( E! f f e. ( A ( Hom ` C ) B ) /\ A. b e. ( Base ` C ) E! g g e. ( b ( Hom ` C ) A ) ) ) -> E. f f e. ( A ( Iso ` C ) B ) ) |
| 45 |
|
simprl |
|- ( ( ( ph /\ ( A e. ( Base ` C ) /\ B e. ( Base ` C ) ) ) /\ ( E! f f e. ( A ( Hom ` C ) B ) /\ A. b e. ( Base ` C ) E! g g e. ( b ( Hom ` C ) A ) ) ) -> E! f f e. ( A ( Hom ` C ) B ) ) |
| 46 |
|
euelss |
|- ( ( ( A ( Iso ` C ) B ) C_ ( A ( Hom ` C ) B ) /\ E. f f e. ( A ( Iso ` C ) B ) /\ E! f f e. ( A ( Hom ` C ) B ) ) -> E! f f e. ( A ( Iso ` C ) B ) ) |
| 47 |
19 44 45 46
|
syl3anc |
|- ( ( ( ph /\ ( A e. ( Base ` C ) /\ B e. ( Base ` C ) ) ) /\ ( E! f f e. ( A ( Hom ` C ) B ) /\ A. b e. ( Base ` C ) E! g g e. ( b ( Hom ` C ) A ) ) ) -> E! f f e. ( A ( Iso ` C ) B ) ) |
| 48 |
47
|
exp42 |
|- ( ph -> ( A e. ( Base ` C ) -> ( B e. ( Base ` C ) -> ( ( E! f f e. ( A ( Hom ` C ) B ) /\ A. b e. ( Base ` C ) E! g g e. ( b ( Hom ` C ) A ) ) -> E! f f e. ( A ( Iso ` C ) B ) ) ) ) ) |
| 49 |
48
|
com24 |
|- ( ph -> ( ( E! f f e. ( A ( Hom ` C ) B ) /\ A. b e. ( Base ` C ) E! g g e. ( b ( Hom ` C ) A ) ) -> ( B e. ( Base ` C ) -> ( A e. ( Base ` C ) -> E! f f e. ( A ( Iso ` C ) B ) ) ) ) ) |
| 50 |
49
|
com14 |
|- ( A e. ( Base ` C ) -> ( ( E! f f e. ( A ( Hom ` C ) B ) /\ A. b e. ( Base ` C ) E! g g e. ( b ( Hom ` C ) A ) ) -> ( B e. ( Base ` C ) -> ( ph -> E! f f e. ( A ( Iso ` C ) B ) ) ) ) ) |
| 51 |
50
|
expd |
|- ( A e. ( Base ` C ) -> ( E! f f e. ( A ( Hom ` C ) B ) -> ( A. b e. ( Base ` C ) E! g g e. ( b ( Hom ` C ) A ) -> ( B e. ( Base ` C ) -> ( ph -> E! f f e. ( A ( Iso ` C ) B ) ) ) ) ) ) |
| 52 |
13 51
|
syldc |
|- ( A. a e. ( Base ` C ) E! f f e. ( a ( Hom ` C ) B ) -> ( A e. ( Base ` C ) -> ( A. b e. ( Base ` C ) E! g g e. ( b ( Hom ` C ) A ) -> ( B e. ( Base ` C ) -> ( ph -> E! f f e. ( A ( Iso ` C ) B ) ) ) ) ) ) |
| 53 |
52
|
com15 |
|- ( ph -> ( A e. ( Base ` C ) -> ( A. b e. ( Base ` C ) E! g g e. ( b ( Hom ` C ) A ) -> ( B e. ( Base ` C ) -> ( A. a e. ( Base ` C ) E! f f e. ( a ( Hom ` C ) B ) -> E! f f e. ( A ( Iso ` C ) B ) ) ) ) ) ) |
| 54 |
53
|
impd |
|- ( ph -> ( ( A e. ( Base ` C ) /\ A. b e. ( Base ` C ) E! g g e. ( b ( Hom ` C ) A ) ) -> ( B e. ( Base ` C ) -> ( A. a e. ( Base ` C ) E! f f e. ( a ( Hom ` C ) B ) -> E! f f e. ( A ( Iso ` C ) B ) ) ) ) ) |
| 55 |
9 54
|
mpd |
|- ( ph -> ( B e. ( Base ` C ) -> ( A. a e. ( Base ` C ) E! f f e. ( a ( Hom ` C ) B ) -> E! f f e. ( A ( Iso ` C ) B ) ) ) ) |
| 56 |
55
|
impd |
|- ( ph -> ( ( B e. ( Base ` C ) /\ A. a e. ( Base ` C ) E! f f e. ( a ( Hom ` C ) B ) ) -> E! f f e. ( A ( Iso ` C ) B ) ) ) |
| 57 |
7 56
|
mpd |
|- ( ph -> E! f f e. ( A ( Iso ` C ) B ) ) |