Metamath Proof Explorer


Theorem hashf1lem2

Description: Lemma for hashf1 . (Contributed by Mario Carneiro, 17-Apr-2015)

Ref Expression
Hypotheses hashf1lem2.1 φAFin
hashf1lem2.2 φBFin
hashf1lem2.3 φ¬zA
hashf1lem2.4 φA+1B
Assertion hashf1lem2 φf|f:Az1-1B=BAf|f:A1-1B

Proof

Step Hyp Ref Expression
1 hashf1lem2.1 φAFin
2 hashf1lem2.2 φBFin
3 hashf1lem2.3 φ¬zA
4 hashf1lem2.4 φA+1B
5 ssid f|f:A1-1Bf|f:A1-1B
6 mapfi BFinAFinBAFin
7 2 1 6 syl2anc φBAFin
8 f1f f:A1-1Bf:AB
9 2 1 elmapd φfBAf:AB
10 8 9 imbitrrid φf:A1-1BfBA
11 10 abssdv φf|f:A1-1BBA
12 7 11 ssfid φf|f:A1-1BFin
13 sseq1 x=xf|f:A1-1Bf|f:A1-1B
14 eleq2 x=fAxfA
15 noel ¬fA
16 15 pm2.21i fAf
17 14 16 syl6bi x=fAxf
18 17 adantrd x=fAxf:Az1-1Bf
19 18 abssdv x=f|fAxf:Az1-1B
20 ss0 f|fAxf:Az1-1Bf|fAxf:Az1-1B=
21 19 20 syl x=f|fAxf:Az1-1B=
22 21 fveq2d x=f|fAxf:Az1-1B=
23 hash0 =0
24 22 23 eqtrdi x=f|fAxf:Az1-1B=0
25 fveq2 x=x=
26 25 23 eqtrdi x=x=0
27 26 oveq2d x=BAx=BA0
28 24 27 eqeq12d x=f|fAxf:Az1-1B=BAx0=BA0
29 13 28 imbi12d x=xf|f:A1-1Bf|fAxf:Az1-1B=BAxf|f:A1-1B0=BA0
30 29 imbi2d x=φxf|f:A1-1Bf|fAxf:Az1-1B=BAxφf|f:A1-1B0=BA0
31 sseq1 x=yxf|f:A1-1Byf|f:A1-1B
32 eleq2 x=yfAxfAy
33 32 anbi1d x=yfAxf:Az1-1BfAyf:Az1-1B
34 33 abbidv x=yf|fAxf:Az1-1B=f|fAyf:Az1-1B
35 34 fveq2d x=yf|fAxf:Az1-1B=f|fAyf:Az1-1B
36 fveq2 x=yx=y
37 36 oveq2d x=yBAx=BAy
38 35 37 eqeq12d x=yf|fAxf:Az1-1B=BAxf|fAyf:Az1-1B=BAy
39 31 38 imbi12d x=yxf|f:A1-1Bf|fAxf:Az1-1B=BAxyf|f:A1-1Bf|fAyf:Az1-1B=BAy
40 39 imbi2d x=yφxf|f:A1-1Bf|fAxf:Az1-1B=BAxφyf|f:A1-1Bf|fAyf:Az1-1B=BAy
41 sseq1 x=yaxf|f:A1-1Byaf|f:A1-1B
42 eleq2 x=yafAxfAya
43 42 anbi1d x=yafAxf:Az1-1BfAyaf:Az1-1B
44 43 abbidv x=yaf|fAxf:Az1-1B=f|fAyaf:Az1-1B
45 44 fveq2d x=yaf|fAxf:Az1-1B=f|fAyaf:Az1-1B
46 fveq2 x=yax=ya
47 46 oveq2d x=yaBAx=BAya
48 45 47 eqeq12d x=yaf|fAxf:Az1-1B=BAxf|fAyaf:Az1-1B=BAya
49 41 48 imbi12d x=yaxf|f:A1-1Bf|fAxf:Az1-1B=BAxyaf|f:A1-1Bf|fAyaf:Az1-1B=BAya
50 49 imbi2d x=yaφxf|f:A1-1Bf|fAxf:Az1-1B=BAxφyaf|f:A1-1Bf|fAyaf:Az1-1B=BAya
51 sseq1 x=f|f:A1-1Bxf|f:A1-1Bf|f:A1-1Bf|f:A1-1B
52 f1eq1 f=yf:A1-1By:A1-1B
53 52 cbvabv f|f:A1-1B=y|y:A1-1B
54 53 eqeq2i x=f|f:A1-1Bx=y|y:A1-1B
55 ssun1 AAz
56 f1ssres f:Az1-1BAAzfA:A1-1B
57 55 56 mpan2 f:Az1-1BfA:A1-1B
58 vex fV
59 58 resex fAV
60 f1eq1 y=fAy:A1-1BfA:A1-1B
61 59 60 elab fAy|y:A1-1BfA:A1-1B
62 57 61 sylibr f:Az1-1BfAy|y:A1-1B
63 eleq2 x=y|y:A1-1BfAxfAy|y:A1-1B
64 62 63 imbitrrid x=y|y:A1-1Bf:Az1-1BfAx
65 64 pm4.71rd x=y|y:A1-1Bf:Az1-1BfAxf:Az1-1B
66 65 bicomd x=y|y:A1-1BfAxf:Az1-1Bf:Az1-1B
67 66 abbidv x=y|y:A1-1Bf|fAxf:Az1-1B=f|f:Az1-1B
68 54 67 sylbi x=f|f:A1-1Bf|fAxf:Az1-1B=f|f:Az1-1B
69 68 fveq2d x=f|f:A1-1Bf|fAxf:Az1-1B=f|f:Az1-1B
70 fveq2 x=f|f:A1-1Bx=f|f:A1-1B
71 70 oveq2d x=f|f:A1-1BBAx=BAf|f:A1-1B
72 69 71 eqeq12d x=f|f:A1-1Bf|fAxf:Az1-1B=BAxf|f:Az1-1B=BAf|f:A1-1B
73 51 72 imbi12d x=f|f:A1-1Bxf|f:A1-1Bf|fAxf:Az1-1B=BAxf|f:A1-1Bf|f:A1-1Bf|f:Az1-1B=BAf|f:A1-1B
74 73 imbi2d x=f|f:A1-1Bφxf|f:A1-1Bf|fAxf:Az1-1B=BAxφf|f:A1-1Bf|f:A1-1Bf|f:Az1-1B=BAf|f:A1-1B
75 hashcl BFinB0
76 2 75 syl φB0
77 76 nn0cnd φB
78 hashcl AFinA0
79 1 78 syl φA0
80 79 nn0cnd φA
81 77 80 subcld φBA
82 81 mul01d φBA0=0
83 82 eqcomd φ0=BA0
84 83 a1d φf|f:A1-1B0=BA0
85 ssun1 yya
86 sstr yyayaf|f:A1-1Byf|f:A1-1B
87 85 86 mpan yaf|f:A1-1Byf|f:A1-1B
88 87 imim1i yf|f:A1-1Bf|fAyf:Az1-1B=BAyyaf|f:A1-1Bf|fAyf:Az1-1B=BAy
89 oveq1 f|fAyf:Az1-1B=BAyf|fAyf:Az1-1B+B-A=BAy+B-A
90 elun fAyafAyfAa
91 59 elsn fAafA=a
92 91 orbi2i fAyfAafAyfA=a
93 90 92 bitri fAyafAyfA=a
94 93 anbi1i fAyaf:Az1-1BfAyfA=af:Az1-1B
95 andir fAyfA=af:Az1-1BfAyf:Az1-1BfA=af:Az1-1B
96 94 95 bitri fAyaf:Az1-1BfAyf:Az1-1BfA=af:Az1-1B
97 96 abbii f|fAyaf:Az1-1B=f|fAyf:Az1-1BfA=af:Az1-1B
98 unab f|fAyf:Az1-1Bf|fA=af:Az1-1B=f|fAyf:Az1-1BfA=af:Az1-1B
99 97 98 eqtr4i f|fAyaf:Az1-1B=f|fAyf:Az1-1Bf|fA=af:Az1-1B
100 99 fveq2i f|fAyaf:Az1-1B=f|fAyf:Az1-1Bf|fA=af:Az1-1B
101 snfi zFin
102 unfi AFinzFinAzFin
103 1 101 102 sylancl φAzFin
104 mapvalg BFinAzFinBAz=f|f:AzB
105 2 103 104 syl2anc φBAz=f|f:AzB
106 mapfi BFinAzFinBAzFin
107 2 103 106 syl2anc φBAzFin
108 105 107 eqeltrrd φf|f:AzBFin
109 f1f f:Az1-1Bf:AzB
110 109 adantl fAyf:Az1-1Bf:AzB
111 110 ss2abi f|fAyf:Az1-1Bf|f:AzB
112 ssfi f|f:AzBFinf|fAyf:Az1-1Bf|f:AzBf|fAyf:Az1-1BFin
113 108 111 112 sylancl φf|fAyf:Az1-1BFin
114 113 adantr φyFin¬ayyaf|f:A1-1Bf|fAyf:Az1-1BFin
115 109 adantl fA=af:Az1-1Bf:AzB
116 115 ss2abi f|fA=af:Az1-1Bf|f:AzB
117 ssfi f|f:AzBFinf|fA=af:Az1-1Bf|f:AzBf|fA=af:Az1-1BFin
118 108 116 117 sylancl φf|fA=af:Az1-1BFin
119 118 adantr φyFin¬ayyaf|f:A1-1Bf|fA=af:Az1-1BFin
120 inab f|fAyf:Az1-1Bf|fA=af:Az1-1B=f|fAyf:Az1-1BfA=af:Az1-1B
121 simprlr φyFin¬ayyaf|f:A1-1B¬ay
122 abn0 f|fAyf:Az1-1BfA=af:Az1-1BffAyf:Az1-1BfA=af:Az1-1B
123 simprl fAyf:Az1-1BfA=af:Az1-1BfA=a
124 simpll fAyf:Az1-1BfA=af:Az1-1BfAy
125 123 124 eqeltrrd fAyf:Az1-1BfA=af:Az1-1Bay
126 125 exlimiv ffAyf:Az1-1BfA=af:Az1-1Bay
127 122 126 sylbi f|fAyf:Az1-1BfA=af:Az1-1Bay
128 127 necon1bi ¬ayf|fAyf:Az1-1BfA=af:Az1-1B=
129 121 128 syl φyFin¬ayyaf|f:A1-1Bf|fAyf:Az1-1BfA=af:Az1-1B=
130 120 129 eqtrid φyFin¬ayyaf|f:A1-1Bf|fAyf:Az1-1Bf|fA=af:Az1-1B=
131 hashun f|fAyf:Az1-1BFinf|fA=af:Az1-1BFinf|fAyf:Az1-1Bf|fA=af:Az1-1B=f|fAyf:Az1-1Bf|fA=af:Az1-1B=f|fAyf:Az1-1B+f|fA=af:Az1-1B
132 114 119 130 131 syl3anc φyFin¬ayyaf|f:A1-1Bf|fAyf:Az1-1Bf|fA=af:Az1-1B=f|fAyf:Az1-1B+f|fA=af:Az1-1B
133 100 132 eqtrid φyFin¬ayyaf|f:A1-1Bf|fAyaf:Az1-1B=f|fAyf:Az1-1B+f|fA=af:Az1-1B
134 simpr yFin¬ayyaf|f:A1-1Byaf|f:A1-1B
135 134 unssbd yFin¬ayyaf|f:A1-1Baf|f:A1-1B
136 vex aV
137 136 snss af|f:A1-1Baf|f:A1-1B
138 135 137 sylibr yFin¬ayyaf|f:A1-1Baf|f:A1-1B
139 f1eq1 f=af:A1-1Ba:A1-1B
140 136 139 elab af|f:A1-1Ba:A1-1B
141 138 140 sylib yFin¬ayyaf|f:A1-1Ba:A1-1B
142 80 adantr φa:A1-1BA
143 118 adantr φa:A1-1Bf|fA=af:Az1-1BFin
144 hashcl f|fA=af:Az1-1BFinf|fA=af:Az1-1B0
145 143 144 syl φa:A1-1Bf|fA=af:Az1-1B0
146 145 nn0cnd φa:A1-1Bf|fA=af:Az1-1B
147 142 146 pncan2d φa:A1-1BA+f|fA=af:Az1-1B-A=f|fA=af:Az1-1B
148 f1f1orn a:A1-1Ba:A1-1 ontorana
149 148 adantl φa:A1-1Ba:A1-1 ontorana
150 f1oen3g aVa:A1-1 ontoranaArana
151 136 149 150 sylancr φa:A1-1BArana
152 hasheni AranaA=rana
153 151 152 syl φa:A1-1BA=rana
154 1 adantr φa:A1-1BAFin
155 2 adantr φa:A1-1BBFin
156 3 adantr φa:A1-1B¬zA
157 4 adantr φa:A1-1BA+1B
158 simpr φa:A1-1Ba:A1-1B
159 154 155 156 157 158 hashf1lem1 φa:A1-1Bf|fA=af:Az1-1BBrana
160 hasheni f|fA=af:Az1-1BBranaf|fA=af:Az1-1B=Brana
161 159 160 syl φa:A1-1Bf|fA=af:Az1-1B=Brana
162 153 161 oveq12d φa:A1-1BA+f|fA=af:Az1-1B=rana+Brana
163 f1f a:A1-1Ba:AB
164 163 frnd a:A1-1BranaB
165 164 adantl φa:A1-1BranaB
166 155 165 ssfid φa:A1-1BranaFin
167 diffi BFinBranaFin
168 155 167 syl φa:A1-1BBranaFin
169 disjdif ranaBrana=
170 169 a1i φa:A1-1BranaBrana=
171 hashun ranaFinBranaFinranaBrana=ranaBrana=rana+Brana
172 166 168 170 171 syl3anc φa:A1-1BranaBrana=rana+Brana
173 undif ranaBranaBrana=B
174 165 173 sylib φa:A1-1BranaBrana=B
175 174 fveq2d φa:A1-1BranaBrana=B
176 162 172 175 3eqtr2d φa:A1-1BA+f|fA=af:Az1-1B=B
177 176 oveq1d φa:A1-1BA+f|fA=af:Az1-1B-A=BA
178 147 177 eqtr3d φa:A1-1Bf|fA=af:Az1-1B=BA
179 141 178 sylan2 φyFin¬ayyaf|f:A1-1Bf|fA=af:Az1-1B=BA
180 179 oveq2d φyFin¬ayyaf|f:A1-1Bf|fAyf:Az1-1B+f|fA=af:Az1-1B=f|fAyf:Az1-1B+B-A
181 133 180 eqtrd φyFin¬ayyaf|f:A1-1Bf|fAyaf:Az1-1B=f|fAyf:Az1-1B+B-A
182 hashunsng aVyFin¬ayya=y+1
183 182 elv yFin¬ayya=y+1
184 183 ad2antrl φyFin¬ayyaf|f:A1-1Bya=y+1
185 184 oveq2d φyFin¬ayyaf|f:A1-1BBAya=BAy+1
186 81 adantr φyFin¬ayyaf|f:A1-1BBA
187 simprll φyFin¬ayyaf|f:A1-1ByFin
188 hashcl yFiny0
189 187 188 syl φyFin¬ayyaf|f:A1-1By0
190 189 nn0cnd φyFin¬ayyaf|f:A1-1By
191 1cnd φyFin¬ayyaf|f:A1-1B1
192 186 190 191 adddid φyFin¬ayyaf|f:A1-1BBAy+1=BAy+BA1
193 186 mulridd φyFin¬ayyaf|f:A1-1BBA1=BA
194 193 oveq2d φyFin¬ayyaf|f:A1-1BBAy+BA1=BAy+B-A
195 185 192 194 3eqtrd φyFin¬ayyaf|f:A1-1BBAya=BAy+B-A
196 181 195 eqeq12d φyFin¬ayyaf|f:A1-1Bf|fAyaf:Az1-1B=BAyaf|fAyf:Az1-1B+B-A=BAy+B-A
197 89 196 imbitrrid φyFin¬ayyaf|f:A1-1Bf|fAyf:Az1-1B=BAyf|fAyaf:Az1-1B=BAya
198 197 expr φyFin¬ayyaf|f:A1-1Bf|fAyf:Az1-1B=BAyf|fAyaf:Az1-1B=BAya
199 198 a2d φyFin¬ayyaf|f:A1-1Bf|fAyf:Az1-1B=BAyyaf|f:A1-1Bf|fAyaf:Az1-1B=BAya
200 88 199 syl5 φyFin¬ayyf|f:A1-1Bf|fAyf:Az1-1B=BAyyaf|f:A1-1Bf|fAyaf:Az1-1B=BAya
201 200 expcom yFin¬ayφyf|f:A1-1Bf|fAyf:Az1-1B=BAyyaf|f:A1-1Bf|fAyaf:Az1-1B=BAya
202 201 a2d yFin¬ayφyf|f:A1-1Bf|fAyf:Az1-1B=BAyφyaf|f:A1-1Bf|fAyaf:Az1-1B=BAya
203 30 40 50 74 84 202 findcard2s f|f:A1-1BFinφf|f:A1-1Bf|f:A1-1Bf|f:Az1-1B=BAf|f:A1-1B
204 12 203 mpcom φf|f:A1-1Bf|f:A1-1Bf|f:Az1-1B=BAf|f:A1-1B
205 5 204 mpi φf|f:Az1-1B=BAf|f:A1-1B