Metamath Proof Explorer


Theorem hashfacenOLD

Description: Obsolete version of hashfacen as of 7-Aug-2024. (Contributed by Mario Carneiro, 21-Jan-2015) (Proof modification is discouraged.) (New usage is discouraged.)

Ref Expression
Assertion hashfacenOLD ABCDf|f:A1-1 ontoCf|f:B1-1 ontoD

Proof

Step Hyp Ref Expression
1 bren ABgg:A1-1 ontoB
2 bren CDhh:C1-1 ontoD
3 exdistrv ghg:A1-1 ontoBh:C1-1 ontoDgg:A1-1 ontoBhh:C1-1 ontoD
4 f1of f:A1-1 ontoCf:AC
5 f1odm h:C1-1 ontoDdomh=C
6 vex hV
7 6 dmex domhV
8 5 7 eqeltrrdi h:C1-1 ontoDCV
9 f1odm g:A1-1 ontoBdomg=A
10 vex gV
11 10 dmex domgV
12 9 11 eqeltrrdi g:A1-1 ontoBAV
13 elmapg CVAVfCAf:AC
14 8 12 13 syl2anr g:A1-1 ontoBh:C1-1 ontoDfCAf:AC
15 4 14 imbitrrid g:A1-1 ontoBh:C1-1 ontoDf:A1-1 ontoCfCA
16 15 abssdv g:A1-1 ontoBh:C1-1 ontoDf|f:A1-1 ontoCCA
17 ovex CAV
18 17 ssex f|f:A1-1 ontoCCAf|f:A1-1 ontoCV
19 16 18 syl g:A1-1 ontoBh:C1-1 ontoDf|f:A1-1 ontoCV
20 f1of f:B1-1 ontoDf:BD
21 f1ofo h:C1-1 ontoDh:ContoD
22 forn h:ContoDranh=D
23 21 22 syl h:C1-1 ontoDranh=D
24 6 rnex ranhV
25 23 24 eqeltrrdi h:C1-1 ontoDDV
26 f1ofo g:A1-1 ontoBg:AontoB
27 forn g:AontoBrang=B
28 26 27 syl g:A1-1 ontoBrang=B
29 10 rnex rangV
30 28 29 eqeltrrdi g:A1-1 ontoBBV
31 elmapg DVBVfDBf:BD
32 25 30 31 syl2anr g:A1-1 ontoBh:C1-1 ontoDfDBf:BD
33 20 32 imbitrrid g:A1-1 ontoBh:C1-1 ontoDf:B1-1 ontoDfDB
34 33 abssdv g:A1-1 ontoBh:C1-1 ontoDf|f:B1-1 ontoDDB
35 ovex DBV
36 35 ssex f|f:B1-1 ontoDDBf|f:B1-1 ontoDV
37 34 36 syl g:A1-1 ontoBh:C1-1 ontoDf|f:B1-1 ontoDV
38 f1oco h:C1-1 ontoDx:A1-1 ontoChx:A1-1 ontoD
39 38 adantll g:A1-1 ontoBh:C1-1 ontoDx:A1-1 ontoChx:A1-1 ontoD
40 f1ocnv g:A1-1 ontoBg-1:B1-1 ontoA
41 40 ad2antrr g:A1-1 ontoBh:C1-1 ontoDx:A1-1 ontoCg-1:B1-1 ontoA
42 f1oco hx:A1-1 ontoDg-1:B1-1 ontoAhxg-1:B1-1 ontoD
43 39 41 42 syl2anc g:A1-1 ontoBh:C1-1 ontoDx:A1-1 ontoChxg-1:B1-1 ontoD
44 43 ex g:A1-1 ontoBh:C1-1 ontoDx:A1-1 ontoChxg-1:B1-1 ontoD
45 vex xV
46 f1oeq1 f=xf:A1-1 ontoCx:A1-1 ontoC
47 45 46 elab xf|f:A1-1 ontoCx:A1-1 ontoC
48 6 45 coex hxV
49 10 cnvex g-1V
50 48 49 coex hxg-1V
51 f1oeq1 f=hxg-1f:B1-1 ontoDhxg-1:B1-1 ontoD
52 50 51 elab hxg-1f|f:B1-1 ontoDhxg-1:B1-1 ontoD
53 44 47 52 3imtr4g g:A1-1 ontoBh:C1-1 ontoDxf|f:A1-1 ontoChxg-1f|f:B1-1 ontoD
54 f1ocnv h:C1-1 ontoDh-1:D1-1 ontoC
55 54 ad2antlr g:A1-1 ontoBh:C1-1 ontoDy:B1-1 ontoDh-1:D1-1 ontoC
56 f1oco y:B1-1 ontoDg:A1-1 ontoByg:A1-1 ontoD
57 56 ancoms g:A1-1 ontoBy:B1-1 ontoDyg:A1-1 ontoD
58 57 adantlr g:A1-1 ontoBh:C1-1 ontoDy:B1-1 ontoDyg:A1-1 ontoD
59 f1oco h-1:D1-1 ontoCyg:A1-1 ontoDh-1yg:A1-1 ontoC
60 55 58 59 syl2anc g:A1-1 ontoBh:C1-1 ontoDy:B1-1 ontoDh-1yg:A1-1 ontoC
61 60 ex g:A1-1 ontoBh:C1-1 ontoDy:B1-1 ontoDh-1yg:A1-1 ontoC
62 vex yV
63 f1oeq1 f=yf:B1-1 ontoDy:B1-1 ontoD
64 62 63 elab yf|f:B1-1 ontoDy:B1-1 ontoD
65 6 cnvex h-1V
66 62 10 coex ygV
67 65 66 coex h-1ygV
68 f1oeq1 f=h-1ygf:A1-1 ontoCh-1yg:A1-1 ontoC
69 67 68 elab h-1ygf|f:A1-1 ontoCh-1yg:A1-1 ontoC
70 61 64 69 3imtr4g g:A1-1 ontoBh:C1-1 ontoDyf|f:B1-1 ontoDh-1ygf|f:A1-1 ontoC
71 47 64 anbi12i xf|f:A1-1 ontoCyf|f:B1-1 ontoDx:A1-1 ontoCy:B1-1 ontoD
72 coass hxg-1g=hxg-1g
73 f1ococnv1 g:A1-1 ontoBg-1g=IA
74 73 ad2antrr g:A1-1 ontoBh:C1-1 ontoDx:A1-1 ontoCy:B1-1 ontoDg-1g=IA
75 74 coeq2d g:A1-1 ontoBh:C1-1 ontoDx:A1-1 ontoCy:B1-1 ontoDhxg-1g=hxIA
76 39 adantrr g:A1-1 ontoBh:C1-1 ontoDx:A1-1 ontoCy:B1-1 ontoDhx:A1-1 ontoD
77 f1of hx:A1-1 ontoDhx:AD
78 fcoi1 hx:ADhxIA=hx
79 76 77 78 3syl g:A1-1 ontoBh:C1-1 ontoDx:A1-1 ontoCy:B1-1 ontoDhxIA=hx
80 75 79 eqtrd g:A1-1 ontoBh:C1-1 ontoDx:A1-1 ontoCy:B1-1 ontoDhxg-1g=hx
81 72 80 eqtr2id g:A1-1 ontoBh:C1-1 ontoDx:A1-1 ontoCy:B1-1 ontoDhx=hxg-1g
82 coass hh-1yg=hh-1yg
83 f1ococnv2 h:C1-1 ontoDhh-1=ID
84 83 ad2antlr g:A1-1 ontoBh:C1-1 ontoDx:A1-1 ontoCy:B1-1 ontoDhh-1=ID
85 84 coeq1d g:A1-1 ontoBh:C1-1 ontoDx:A1-1 ontoCy:B1-1 ontoDhh-1yg=IDyg
86 58 adantrl g:A1-1 ontoBh:C1-1 ontoDx:A1-1 ontoCy:B1-1 ontoDyg:A1-1 ontoD
87 f1of yg:A1-1 ontoDyg:AD
88 fcoi2 yg:ADIDyg=yg
89 86 87 88 3syl g:A1-1 ontoBh:C1-1 ontoDx:A1-1 ontoCy:B1-1 ontoDIDyg=yg
90 85 89 eqtrd g:A1-1 ontoBh:C1-1 ontoDx:A1-1 ontoCy:B1-1 ontoDhh-1yg=yg
91 82 90 eqtr3id g:A1-1 ontoBh:C1-1 ontoDx:A1-1 ontoCy:B1-1 ontoDhh-1yg=yg
92 81 91 eqeq12d g:A1-1 ontoBh:C1-1 ontoDx:A1-1 ontoCy:B1-1 ontoDhx=hh-1yghxg-1g=yg
93 eqcom hxg-1g=ygyg=hxg-1g
94 92 93 bitrdi g:A1-1 ontoBh:C1-1 ontoDx:A1-1 ontoCy:B1-1 ontoDhx=hh-1ygyg=hxg-1g
95 f1of1 h:C1-1 ontoDh:C1-1D
96 95 ad2antlr g:A1-1 ontoBh:C1-1 ontoDx:A1-1 ontoCy:B1-1 ontoDh:C1-1D
97 f1of x:A1-1 ontoCx:AC
98 97 ad2antrl g:A1-1 ontoBh:C1-1 ontoDx:A1-1 ontoCy:B1-1 ontoDx:AC
99 60 adantrl g:A1-1 ontoBh:C1-1 ontoDx:A1-1 ontoCy:B1-1 ontoDh-1yg:A1-1 ontoC
100 f1of h-1yg:A1-1 ontoCh-1yg:AC
101 99 100 syl g:A1-1 ontoBh:C1-1 ontoDx:A1-1 ontoCy:B1-1 ontoDh-1yg:AC
102 cocan1 h:C1-1Dx:ACh-1yg:AChx=hh-1ygx=h-1yg
103 96 98 101 102 syl3anc g:A1-1 ontoBh:C1-1 ontoDx:A1-1 ontoCy:B1-1 ontoDhx=hh-1ygx=h-1yg
104 26 ad2antrr g:A1-1 ontoBh:C1-1 ontoDx:A1-1 ontoCy:B1-1 ontoDg:AontoB
105 f1ofn y:B1-1 ontoDyFnB
106 105 ad2antll g:A1-1 ontoBh:C1-1 ontoDx:A1-1 ontoCy:B1-1 ontoDyFnB
107 43 adantrr g:A1-1 ontoBh:C1-1 ontoDx:A1-1 ontoCy:B1-1 ontoDhxg-1:B1-1 ontoD
108 f1ofn hxg-1:B1-1 ontoDhxg-1FnB
109 107 108 syl g:A1-1 ontoBh:C1-1 ontoDx:A1-1 ontoCy:B1-1 ontoDhxg-1FnB
110 cocan2 g:AontoByFnBhxg-1FnByg=hxg-1gy=hxg-1
111 104 106 109 110 syl3anc g:A1-1 ontoBh:C1-1 ontoDx:A1-1 ontoCy:B1-1 ontoDyg=hxg-1gy=hxg-1
112 94 103 111 3bitr3d g:A1-1 ontoBh:C1-1 ontoDx:A1-1 ontoCy:B1-1 ontoDx=h-1ygy=hxg-1
113 112 ex g:A1-1 ontoBh:C1-1 ontoDx:A1-1 ontoCy:B1-1 ontoDx=h-1ygy=hxg-1
114 71 113 biimtrid g:A1-1 ontoBh:C1-1 ontoDxf|f:A1-1 ontoCyf|f:B1-1 ontoDx=h-1ygy=hxg-1
115 19 37 53 70 114 en3d g:A1-1 ontoBh:C1-1 ontoDf|f:A1-1 ontoCf|f:B1-1 ontoD
116 115 exlimivv ghg:A1-1 ontoBh:C1-1 ontoDf|f:A1-1 ontoCf|f:B1-1 ontoD
117 3 116 sylbir gg:A1-1 ontoBhh:C1-1 ontoDf|f:A1-1 ontoCf|f:B1-1 ontoD
118 1 2 117 syl2anb ABCDf|f:A1-1 ontoCf|f:B1-1 ontoD