| Step |
Hyp |
Ref |
Expression |
| 1 |
|
natoppf.o |
|- O = ( oppCat ` C ) |
| 2 |
|
natoppf.p |
|- P = ( oppCat ` D ) |
| 3 |
|
natoppf.n |
|- N = ( C Nat D ) |
| 4 |
|
natoppf.m |
|- M = ( O Nat P ) |
| 5 |
|
natoppfb.k |
|- ( ph -> K = ( oppFunc ` F ) ) |
| 6 |
|
natoppfb.l |
|- ( ph -> L = ( oppFunc ` G ) ) |
| 7 |
|
natoppfb.c |
|- ( ph -> C e. V ) |
| 8 |
|
natoppfb.d |
|- ( ph -> D e. W ) |
| 9 |
5
|
adantr |
|- ( ( ph /\ x e. ( F N G ) ) -> K = ( oppFunc ` F ) ) |
| 10 |
6
|
adantr |
|- ( ( ph /\ x e. ( F N G ) ) -> L = ( oppFunc ` G ) ) |
| 11 |
|
simpr |
|- ( ( ph /\ x e. ( F N G ) ) -> x e. ( F N G ) ) |
| 12 |
1 2 3 4 9 10 11
|
natoppf2 |
|- ( ( ph /\ x e. ( F N G ) ) -> x e. ( L M K ) ) |
| 13 |
|
eqid |
|- ( oppCat ` O ) = ( oppCat ` O ) |
| 14 |
|
eqid |
|- ( oppCat ` P ) = ( oppCat ` P ) |
| 15 |
|
eqid |
|- ( ( oppCat ` O ) Nat ( oppCat ` P ) ) = ( ( oppCat ` O ) Nat ( oppCat ` P ) ) |
| 16 |
6
|
adantr |
|- ( ( ph /\ x e. ( L M K ) ) -> L = ( oppFunc ` G ) ) |
| 17 |
16
|
fveq2d |
|- ( ( ph /\ x e. ( L M K ) ) -> ( oppFunc ` L ) = ( oppFunc ` ( oppFunc ` G ) ) ) |
| 18 |
4
|
natrcl |
|- ( x e. ( L M K ) -> ( L e. ( O Func P ) /\ K e. ( O Func P ) ) ) |
| 19 |
18
|
adantl |
|- ( ( ph /\ x e. ( L M K ) ) -> ( L e. ( O Func P ) /\ K e. ( O Func P ) ) ) |
| 20 |
19
|
simpld |
|- ( ( ph /\ x e. ( L M K ) ) -> L e. ( O Func P ) ) |
| 21 |
16 20
|
eqeltrrd |
|- ( ( ph /\ x e. ( L M K ) ) -> ( oppFunc ` G ) e. ( O Func P ) ) |
| 22 |
|
relfunc |
|- Rel ( O Func P ) |
| 23 |
|
eqid |
|- ( oppFunc ` G ) = ( oppFunc ` G ) |
| 24 |
21 22 23
|
2oppf |
|- ( ( ph /\ x e. ( L M K ) ) -> ( oppFunc ` ( oppFunc ` G ) ) = G ) |
| 25 |
17 24
|
eqtr2d |
|- ( ( ph /\ x e. ( L M K ) ) -> G = ( oppFunc ` L ) ) |
| 26 |
5
|
adantr |
|- ( ( ph /\ x e. ( L M K ) ) -> K = ( oppFunc ` F ) ) |
| 27 |
26
|
fveq2d |
|- ( ( ph /\ x e. ( L M K ) ) -> ( oppFunc ` K ) = ( oppFunc ` ( oppFunc ` F ) ) ) |
| 28 |
19
|
simprd |
|- ( ( ph /\ x e. ( L M K ) ) -> K e. ( O Func P ) ) |
| 29 |
26 28
|
eqeltrrd |
|- ( ( ph /\ x e. ( L M K ) ) -> ( oppFunc ` F ) e. ( O Func P ) ) |
| 30 |
|
eqid |
|- ( oppFunc ` F ) = ( oppFunc ` F ) |
| 31 |
29 22 30
|
2oppf |
|- ( ( ph /\ x e. ( L M K ) ) -> ( oppFunc ` ( oppFunc ` F ) ) = F ) |
| 32 |
27 31
|
eqtr2d |
|- ( ( ph /\ x e. ( L M K ) ) -> F = ( oppFunc ` K ) ) |
| 33 |
|
simpr |
|- ( ( ph /\ x e. ( L M K ) ) -> x e. ( L M K ) ) |
| 34 |
13 14 4 15 25 32 33
|
natoppf2 |
|- ( ( ph /\ x e. ( L M K ) ) -> x e. ( F ( ( oppCat ` O ) Nat ( oppCat ` P ) ) G ) ) |
| 35 |
1
|
2oppchomf |
|- ( Homf ` C ) = ( Homf ` ( oppCat ` O ) ) |
| 36 |
35
|
a1i |
|- ( ( ph /\ x e. ( L M K ) ) -> ( Homf ` C ) = ( Homf ` ( oppCat ` O ) ) ) |
| 37 |
1
|
2oppccomf |
|- ( comf ` C ) = ( comf ` ( oppCat ` O ) ) |
| 38 |
37
|
a1i |
|- ( ( ph /\ x e. ( L M K ) ) -> ( comf ` C ) = ( comf ` ( oppCat ` O ) ) ) |
| 39 |
2
|
2oppchomf |
|- ( Homf ` D ) = ( Homf ` ( oppCat ` P ) ) |
| 40 |
39
|
a1i |
|- ( ( ph /\ x e. ( L M K ) ) -> ( Homf ` D ) = ( Homf ` ( oppCat ` P ) ) ) |
| 41 |
2
|
2oppccomf |
|- ( comf ` D ) = ( comf ` ( oppCat ` P ) ) |
| 42 |
41
|
a1i |
|- ( ( ph /\ x e. ( L M K ) ) -> ( comf ` D ) = ( comf ` ( oppCat ` P ) ) ) |
| 43 |
7
|
adantr |
|- ( ( ph /\ x e. ( L M K ) ) -> C e. V ) |
| 44 |
8
|
adantr |
|- ( ( ph /\ x e. ( L M K ) ) -> D e. W ) |
| 45 |
1 2 43 44 29
|
funcoppc5 |
|- ( ( ph /\ x e. ( L M K ) ) -> F e. ( C Func D ) ) |
| 46 |
45
|
func1st2nd |
|- ( ( ph /\ x e. ( L M K ) ) -> ( 1st ` F ) ( C Func D ) ( 2nd ` F ) ) |
| 47 |
46
|
funcrcl2 |
|- ( ( ph /\ x e. ( L M K ) ) -> C e. Cat ) |
| 48 |
1
|
oppccat |
|- ( C e. Cat -> O e. Cat ) |
| 49 |
13
|
oppccat |
|- ( O e. Cat -> ( oppCat ` O ) e. Cat ) |
| 50 |
47 48 49
|
3syl |
|- ( ( ph /\ x e. ( L M K ) ) -> ( oppCat ` O ) e. Cat ) |
| 51 |
46
|
funcrcl3 |
|- ( ( ph /\ x e. ( L M K ) ) -> D e. Cat ) |
| 52 |
2
|
oppccat |
|- ( D e. Cat -> P e. Cat ) |
| 53 |
14
|
oppccat |
|- ( P e. Cat -> ( oppCat ` P ) e. Cat ) |
| 54 |
51 52 53
|
3syl |
|- ( ( ph /\ x e. ( L M K ) ) -> ( oppCat ` P ) e. Cat ) |
| 55 |
36 38 40 42 47 50 51 54
|
natpropd |
|- ( ( ph /\ x e. ( L M K ) ) -> ( C Nat D ) = ( ( oppCat ` O ) Nat ( oppCat ` P ) ) ) |
| 56 |
3 55
|
eqtrid |
|- ( ( ph /\ x e. ( L M K ) ) -> N = ( ( oppCat ` O ) Nat ( oppCat ` P ) ) ) |
| 57 |
56
|
oveqd |
|- ( ( ph /\ x e. ( L M K ) ) -> ( F N G ) = ( F ( ( oppCat ` O ) Nat ( oppCat ` P ) ) G ) ) |
| 58 |
34 57
|
eleqtrrd |
|- ( ( ph /\ x e. ( L M K ) ) -> x e. ( F N G ) ) |
| 59 |
12 58
|
impbida |
|- ( ph -> ( x e. ( F N G ) <-> x e. ( L M K ) ) ) |
| 60 |
59
|
eqrdv |
|- ( ph -> ( F N G ) = ( L M K ) ) |