Metamath Proof Explorer


Theorem wilthlem2

Description: Lemma for wilth : induction step. The "hand proof" version of this theorem works by writing out the list of all numbers from 1 to P - 1 in pairs such that a number is paired with its inverse. Every number has a unique inverse different from itself except 1 and P - 1 , and so each pair multiplies to 1 , and 1 and P - 1 == -u 1 multiply to -u 1 , so the full product is equal to -u 1 . Here we make this precise by doing the product pair by pair.

The induction hypothesis says that every subset S of 1 ... ( P - 1 ) that is closed under inverse (i.e. all pairs are matched up) and contains P - 1 multiplies to -u 1 mod P . Given such a set, we take out one element z =/= P - 1 . If there are no such elements, then S = { P - 1 } which forms the base case. Otherwise, S \ { z , z ^ -u 1 } is also closed under inverse and contains P - 1 , so the induction hypothesis says that this equals -u 1 ; and the remaining two elements are either equal to each other, in which case wilthlem1 gives that z = 1 or P - 1 , and we've already excluded the second case, so the product gives 1 ; or z =/= z ^ -u 1 and their product is 1 . In either case the accumulated product is unaffected. (Contributed by Mario Carneiro, 24-Jan-2015) (Proof shortened by AV, 27-Jul-2019)

Ref Expression
Hypotheses wilthlem.t T=mulGrpfld
wilthlem.a A=x𝒫1P1|P1xyxyP2modPx
wilthlem2.p φP
wilthlem2.s φSA
wilthlem2.r φsAsSTIsmodP=-1modP
Assertion wilthlem2 φTISmodP=-1modP

Proof

Step Hyp Ref Expression
1 wilthlem.t T=mulGrpfld
2 wilthlem.a A=x𝒫1P1|P1xyxyP2modPx
3 wilthlem2.p φP
4 wilthlem2.s φSA
5 wilthlem2.r φsAsSTIsmodP=-1modP
6 simpr φSP1SP1
7 eleq2 x=SP1xP1S
8 eleq2 x=SyP2modPxyP2modPS
9 8 raleqbi1dv x=SyxyP2modPxySyP2modPS
10 7 9 anbi12d x=SP1xyxyP2modPxP1SySyP2modPS
11 10 2 elrab2 SAS𝒫1P1P1SySyP2modPS
12 4 11 sylib φS𝒫1P1P1SySyP2modPS
13 12 simprd φP1SySyP2modPS
14 13 simpld φP1S
15 14 snssd φP1S
16 15 adantr φSP1P1S
17 6 16 eqssd φSP1S=P1
18 17 reseq2d φSP1IS=IP1
19 mptresid IP1=zP1z
20 18 19 eqtrdi φSP1IS=zP1z
21 20 oveq2d φSP1TIS=TzP1z
22 21 oveq1d φSP1TISmodP=TzP1zmodP
23 prmnn PP
24 3 23 syl φP
25 24 nncnd φP
26 ax-1cn 1
27 negsub P1P+-1=P1
28 25 26 27 sylancl φP+-1=P1
29 neg1cn 1
30 addcom P1P+-1=-1+P
31 25 29 30 sylancl φP+-1=-1+P
32 28 31 eqtr3d φP1=-1+P
33 cnring fldRing
34 1 ringmgp fldRingTMnd
35 33 34 mp1i φTMnd
36 nnm1nn0 PP10
37 24 36 syl φP10
38 37 nn0cnd φP1
39 cnfldbas =Basefld
40 1 39 mgpbas =BaseT
41 id z=P1z=P1
42 40 41 gsumsn TMndP1P1TzP1z=P1
43 35 38 38 42 syl3anc φTzP1z=P1
44 25 mullidd φ1P=P
45 44 oveq2d φ-1+1P=-1+P
46 32 43 45 3eqtr4d φTzP1z=-1+1P
47 46 oveq1d φTzP1zmodP=-1+1PmodP
48 neg1rr 1
49 48 a1i φ1
50 24 nnrpd φP+
51 1zzd φ1
52 modcyc 1P+1-1+1PmodP=-1modP
53 49 50 51 52 syl3anc φ-1+1PmodP=-1modP
54 47 53 eqtrd φTzP1zmodP=-1modP
55 54 adantr φSP1TzP1zmodP=-1modP
56 22 55 eqtrd φSP1TISmodP=-1modP
57 56 ex φSP1TISmodP=-1modP
58 nss ¬SP1zzS¬zP1
59 cnfld1 1=1fld
60 1 59 ringidval 1=0T
61 cnfldmul ×=fld
62 1 61 mgpplusg ×=+T
63 cncrng fldCRing
64 1 crngmgp fldCRingTCMnd
65 63 64 ax-mp TCMnd
66 65 a1i φzS¬zP1TCMnd
67 4 adantr φzS¬zP1SA
68 f1oi IS:S1-1 ontoS
69 f1of IS:S1-1 ontoSIS:SS
70 68 69 ax-mp IS:SS
71 12 simpld φS𝒫1P1
72 71 elpwid φS1P1
73 fzssz 1P1
74 72 73 sstrdi φS
75 zsscn
76 74 75 sstrdi φS
77 fss IS:SSSIS:S
78 70 76 77 sylancr φIS:S
79 78 adantr φzS¬zP1IS:S
80 fzfi 1P1Fin
81 ssfi 1P1FinS1P1SFin
82 80 72 81 sylancr φSFin
83 1ex 1V
84 83 a1i φ1V
85 78 82 84 fdmfifsupp φfinSupp1IS
86 85 adantr φzS¬zP1finSupp1IS
87 disjdif zzP2modPSzzP2modP=
88 87 a1i φzS¬zP1zzP2modPSzzP2modP=
89 undif2 zzP2modPSzzP2modP=zzP2modPS
90 simprl φzS¬zP1zS
91 oveq1 y=zyP2=zP2
92 91 oveq1d y=zyP2modP=zP2modP
93 92 eleq1d y=zyP2modPSzP2modPS
94 13 simprd φySyP2modPS
95 94 adantr φzS¬zP1ySyP2modPS
96 93 95 90 rspcdva φzS¬zP1zP2modPS
97 90 96 prssd φzS¬zP1zzP2modPS
98 ssequn1 zzP2modPSzzP2modPS=S
99 97 98 sylib φzS¬zP1zzP2modPS=S
100 89 99 eqtr2id φzS¬zP1S=zzP2modPSzzP2modP
101 40 60 62 66 67 79 86 88 100 gsumsplit φzS¬zP1TIS=TISzzP2modPTISSzzP2modP
102 97 resabs1d φzS¬zP1ISzzP2modP=IzzP2modP
103 102 oveq2d φzS¬zP1TISzzP2modP=TIzzP2modP
104 difss SzzP2modPS
105 resabs1 SzzP2modPSISSzzP2modP=ISzzP2modP
106 104 105 ax-mp ISSzzP2modP=ISzzP2modP
107 106 oveq2i TISSzzP2modP=TISzzP2modP
108 107 a1i φzS¬zP1TISSzzP2modP=TISzzP2modP
109 103 108 oveq12d φzS¬zP1TISzzP2modPTISSzzP2modP=TIzzP2modPTISzzP2modP
110 101 109 eqtrd φzS¬zP1TIS=TIzzP2modPTISzzP2modP
111 110 oveq1d φzS¬zP1TISmodP=TIzzP2modPTISzzP2modPmodP
112 prfi zzP2modPFin
113 112 a1i φzS¬zP1zzP2modPFin
114 zsubrg SubRingfld
115 1 subrgsubm SubRingfldSubMndT
116 114 115 mp1i φzS¬zP1SubMndT
117 f1oi IzzP2modP:zzP2modP1-1 ontozzP2modP
118 f1of IzzP2modP:zzP2modP1-1 ontozzP2modPIzzP2modP:zzP2modPzzP2modP
119 117 118 ax-mp IzzP2modP:zzP2modPzzP2modP
120 74 adantr φzS¬zP1S
121 97 120 sstrd φzS¬zP1zzP2modP
122 fss IzzP2modP:zzP2modPzzP2modPzzP2modPIzzP2modP:zzP2modP
123 119 121 122 sylancr φzS¬zP1IzzP2modP:zzP2modP
124 83 a1i φzS¬zP11V
125 123 113 124 fdmfifsupp φzS¬zP1finSupp1IzzP2modP
126 60 66 113 116 123 125 gsumsubmcl φzS¬zP1TIzzP2modP
127 126 zred φzS¬zP1TIzzP2modP
128 1red φzS¬zP11
129 72 adantr φzS¬zP1S1P1
130 129 ssdifssd φzS¬zP1SzzP2modP1P1
131 ssfi 1P1FinSzzP2modP1P1SzzP2modPFin
132 80 130 131 sylancr φzS¬zP1SzzP2modPFin
133 f1oi ISzzP2modP:SzzP2modP1-1 ontoSzzP2modP
134 f1of ISzzP2modP:SzzP2modP1-1 ontoSzzP2modPISzzP2modP:SzzP2modPSzzP2modP
135 133 134 ax-mp ISzzP2modP:SzzP2modPSzzP2modP
136 120 ssdifssd φzS¬zP1SzzP2modP
137 fss ISzzP2modP:SzzP2modPSzzP2modPSzzP2modPISzzP2modP:SzzP2modP
138 135 136 137 sylancr φzS¬zP1ISzzP2modP:SzzP2modP
139 138 132 124 fdmfifsupp φzS¬zP1finSupp1ISzzP2modP
140 60 66 132 116 138 139 gsumsubmcl φzS¬zP1TISzzP2modP
141 50 adantr φzS¬zP1P+
142 35 adantr φzS¬zP1TMnd
143 76 adantr φzS¬zP1S
144 143 90 sseldd φzS¬zP1z
145 id w=zw=z
146 40 145 gsumsn TMndzzTwzw=z
147 142 144 144 146 syl3anc φzS¬zP1Twzw=z
148 147 adantr φzS¬zP1z=1Twzw=z
149 mptresid Iz=wzw
150 dfsn2 z=zz
151 animorrl φzS¬zP1z=1z=1z=P1
152 3 adantr φzS¬zP1P
153 129 90 sseldd φzS¬zP1z1P1
154 wilthlem1 Pz1P1z=zP2modPz=1z=P1
155 152 153 154 syl2anc φzS¬zP1z=zP2modPz=1z=P1
156 155 biimpar φzS¬zP1z=1z=P1z=zP2modP
157 151 156 syldan φzS¬zP1z=1z=zP2modP
158 157 preq2d φzS¬zP1z=1zz=zzP2modP
159 150 158 eqtrid φzS¬zP1z=1z=zzP2modP
160 159 reseq2d φzS¬zP1z=1Iz=IzzP2modP
161 149 160 eqtr3id φzS¬zP1z=1wzw=IzzP2modP
162 161 oveq2d φzS¬zP1z=1Twzw=TIzzP2modP
163 simpr φzS¬zP1z=1z=1
164 148 162 163 3eqtr3d φzS¬zP1z=1TIzzP2modP=1
165 164 oveq1d φzS¬zP1z=1TIzzP2modPmodP=1modP
166 df-pr zzP2modP=zzP2modP
167 166 reseq2i IzzP2modP=IzzP2modP
168 mptresid IzzP2modP=wzzP2modPw
169 167 168 eqtri IzzP2modP=wzzP2modPw
170 169 oveq2i TIzzP2modP=TwzzP2modPw
171 65 a1i φzS¬zP1z1TCMnd
172 snfi zFin
173 172 a1i φzS¬zP1z1zFin
174 elsni wzw=z
175 174 adantl φzS¬zP1wzw=z
176 144 adantr φzS¬zP1wzz
177 175 176 eqeltrd φzS¬zP1wzw
178 177 adantlr φzS¬zP1z1wzw
179 143 96 sseldd φzS¬zP1zP2modP
180 179 adantr φzS¬zP1z1zP2modP
181 simprr φzS¬zP1¬zP1
182 velsn zP1z=P1
183 181 182 sylnib φzS¬zP1¬z=P1
184 biorf ¬z=P1z=1z=P1z=1
185 183 184 syl φzS¬zP1z=1z=P1z=1
186 ovex zP2modPV
187 186 elsn zP2modPzzP2modP=z
188 eqcom zP2modP=zz=zP2modP
189 187 188 bitri zP2modPzz=zP2modP
190 orcom z=P1z=1z=1z=P1
191 155 189 190 3bitr4g φzS¬zP1zP2modPzz=P1z=1
192 185 191 bitr4d φzS¬zP1z=1zP2modPz
193 192 necon3abid φzS¬zP1z1¬zP2modPz
194 193 biimpa φzS¬zP1z1¬zP2modPz
195 id w=zP2modPw=zP2modP
196 40 62 171 173 178 180 194 180 195 gsumunsn φzS¬zP1z1TwzzP2modPw=TwzwzP2modP
197 170 196 eqtrid φzS¬zP1z1TIzzP2modP=TwzwzP2modP
198 147 adantr φzS¬zP1z1Twzw=z
199 198 oveq1d φzS¬zP1z1TwzwzP2modP=zzP2modP
200 197 199 eqtrd φzS¬zP1z1TIzzP2modP=zzP2modP
201 200 oveq1d φzS¬zP1z1TIzzP2modPmodP=zzP2modPmodP
202 153 elfzelzd φzS¬zP1z
203 24 adantr φzS¬zP1P
204 fzm1ndvds Pz1P1¬Pz
205 203 153 204 syl2anc φzS¬zP1¬Pz
206 eqid zP2modP=zP2modP
207 206 prmdiv Pz¬PzzP2modP1P1PzzP2modP1
208 152 202 205 207 syl3anc φzS¬zP1zP2modP1P1PzzP2modP1
209 208 simprd φzS¬zP1PzzP2modP1
210 elfznn z1P1z
211 153 210 syl φzS¬zP1z
212 129 96 sseldd φzS¬zP1zP2modP1P1
213 elfznn zP2modP1P1zP2modP
214 212 213 syl φzS¬zP1zP2modP
215 211 214 nnmulcld φzS¬zP1zzP2modP
216 215 nnzd φzS¬zP1zzP2modP
217 1zzd φzS¬zP11
218 moddvds PzzP2modP1zzP2modPmodP=1modPPzzP2modP1
219 203 216 217 218 syl3anc φzS¬zP1zzP2modPmodP=1modPPzzP2modP1
220 209 219 mpbird φzS¬zP1zzP2modPmodP=1modP
221 220 adantr φzS¬zP1z1zzP2modPmodP=1modP
222 201 221 eqtrd φzS¬zP1z1TIzzP2modPmodP=1modP
223 165 222 pm2.61dane φzS¬zP1TIzzP2modPmodP=1modP
224 modmul1 TIzzP2modP1TISzzP2modPP+TIzzP2modPmodP=1modPTIzzP2modPTISzzP2modPmodP=1TISzzP2modPmodP
225 127 128 140 141 223 224 syl221anc φzS¬zP1TIzzP2modPTISzzP2modPmodP=1TISzzP2modPmodP
226 140 zcnd φzS¬zP1TISzzP2modP
227 226 mullidd φzS¬zP11TISzzP2modP=TISzzP2modP
228 227 oveq1d φzS¬zP11TISzzP2modPmodP=TISzzP2modPmodP
229 sseqin2 zzP2modPSSzzP2modP=zzP2modP
230 97 229 sylib φzS¬zP1SzzP2modP=zzP2modP
231 vex zV
232 231 prnz zzP2modP
233 232 a1i φzS¬zP1zzP2modP
234 230 233 eqnetrd φzS¬zP1SzzP2modP
235 disj4 SzzP2modP=¬SzzP2modPS
236 235 necon2abii SzzP2modPSSzzP2modP
237 234 236 sylibr φzS¬zP1SzzP2modPS
238 psseq1 s=SzzP2modPsSSzzP2modPS
239 reseq2 s=SzzP2modPIs=ISzzP2modP
240 239 oveq2d s=SzzP2modPTIs=TISzzP2modP
241 240 oveq1d s=SzzP2modPTIsmodP=TISzzP2modPmodP
242 241 eqeq1d s=SzzP2modPTIsmodP=-1modPTISzzP2modPmodP=-1modP
243 238 242 imbi12d s=SzzP2modPsSTIsmodP=-1modPSzzP2modPSTISzzP2modPmodP=-1modP
244 5 adantr φzS¬zP1sAsSTIsmodP=-1modP
245 ovex 1P1V
246 245 elpw2 SzzP2modP𝒫1P1SzzP2modP1P1
247 130 246 sylibr φzS¬zP1SzzP2modP𝒫1P1
248 14 adantr φzS¬zP1P1S
249 eqcom z=P1P1=z
250 182 249 bitri zP1P1=z
251 181 250 sylnib φzS¬zP1¬P1=z
252 oveq1 P1=zP2modPP1P2=zP2modPP2
253 252 oveq1d P1=zP2modPP1P2modP=zP2modPP2modP
254 203 36 syl φzS¬zP1P10
255 nn0uz 0=0
256 254 255 eleqtrdi φzS¬zP1P10
257 eluzfz2 P10P10P1
258 256 257 syl φzS¬zP1P10P1
259 prmz PP
260 152 259 syl φzS¬zP1P
261 120 248 sseldd φzS¬zP1P1
262 1z 1
263 zsubcl P11P-1-1
264 261 262 263 sylancl φzS¬zP1P-1-1
265 dvdsmul1 PP-1-1PPP-1-1
266 260 264 265 syl2anc φzS¬zP1PPP-1-1
267 203 nncnd φzS¬zP1P
268 264 zcnd φzS¬zP1P-1-1
269 267 268 mulcld φzS¬zP1PP-1-1
270 1cnd φzS¬zP11
271 254 nn0cnd φzS¬zP1P1
272 267 270 271 subdird φzS¬zP1P1P1=PP11P1
273 267 271 mulcld φzS¬zP1PP1
274 273 267 270 subsubd φzS¬zP1PP1P1=PP1-P+1
275 271 mullidd φzS¬zP11P1=P1
276 275 oveq2d φzS¬zP1PP11P1=PP1P1
277 267 271 muls1d φzS¬zP1PP-1-1=PP1P
278 277 oveq1d φzS¬zP1PP-1-1+1=PP1-P+1
279 274 276 278 3eqtr4d φzS¬zP1PP11P1=PP-1-1+1
280 272 279 eqtrd φzS¬zP1P1P1=PP-1-1+1
281 269 270 280 mvrraddd φzS¬zP1P1P11=PP-1-1
282 266 281 breqtrrd φzS¬zP1PP1P11
283 129 248 sseldd φzS¬zP1P11P1
284 fzm1ndvds PP11P1¬PP1
285 203 283 284 syl2anc φzS¬zP1¬PP1
286 eqid P1P2modP=P1P2modP
287 286 prmdiveq PP1¬PP1P10P1PP1P11P1=P1P2modP
288 152 261 285 287 syl3anc φzS¬zP1P10P1PP1P11P1=P1P2modP
289 258 282 288 mpbi2and φzS¬zP1P1=P1P2modP
290 206 prmdivdiv Pz1P1z=zP2modPP2modP
291 152 153 290 syl2anc φzS¬zP1z=zP2modPP2modP
292 289 291 eqeq12d φzS¬zP1P1=zP1P2modP=zP2modPP2modP
293 253 292 imbitrrid φzS¬zP1P1=zP2modPP1=z
294 251 293 mtod φzS¬zP1¬P1=zP2modP
295 ioran ¬P1=zP1=zP2modP¬P1=z¬P1=zP2modP
296 251 294 295 sylanbrc φzS¬zP1¬P1=zP1=zP2modP
297 ovex P1V
298 297 elpr P1zzP2modPP1=zP1=zP2modP
299 296 298 sylnibr φzS¬zP1¬P1zzP2modP
300 248 299 eldifd φzS¬zP1P1SzzP2modP
301 eldifi ySzzP2modPyS
302 95 r19.21bi φzS¬zP1ySyP2modPS
303 301 302 sylan2 φzS¬zP1ySzzP2modPyP2modPS
304 eldif ySzzP2modPyS¬yzzP2modP
305 152 adantr φzS¬zP1ySP
306 129 sselda φzS¬zP1ySy1P1
307 eqid yP2modP=yP2modP
308 307 prmdivdiv Py1P1y=yP2modPP2modP
309 305 306 308 syl2anc φzS¬zP1ySy=yP2modPP2modP
310 oveq1 yP2modP=zyP2modPP2=zP2
311 310 oveq1d yP2modP=zyP2modPP2modP=zP2modP
312 311 eqeq2d yP2modP=zy=yP2modPP2modPy=zP2modP
313 309 312 syl5ibcom φzS¬zP1ySyP2modP=zy=zP2modP
314 oveq1 yP2modP=zP2modPyP2modPP2=zP2modPP2
315 314 oveq1d yP2modP=zP2modPyP2modPP2modP=zP2modPP2modP
316 291 adantr φzS¬zP1ySz=zP2modPP2modP
317 309 316 eqeq12d φzS¬zP1ySy=zyP2modPP2modP=zP2modPP2modP
318 315 317 imbitrrid φzS¬zP1ySyP2modP=zP2modPy=z
319 313 318 orim12d φzS¬zP1ySyP2modP=zyP2modP=zP2modPy=zP2modPy=z
320 ovex yP2modPV
321 320 elpr yP2modPzzP2modPyP2modP=zyP2modP=zP2modP
322 vex yV
323 322 elpr yzzP2modPy=zy=zP2modP
324 orcom y=zy=zP2modPy=zP2modPy=z
325 323 324 bitri yzzP2modPy=zP2modPy=z
326 319 321 325 3imtr4g φzS¬zP1ySyP2modPzzP2modPyzzP2modP
327 326 con3d φzS¬zP1yS¬yzzP2modP¬yP2modPzzP2modP
328 327 impr φzS¬zP1yS¬yzzP2modP¬yP2modPzzP2modP
329 304 328 sylan2b φzS¬zP1ySzzP2modP¬yP2modPzzP2modP
330 303 329 eldifd φzS¬zP1ySzzP2modPyP2modPSzzP2modP
331 330 ralrimiva φzS¬zP1ySzzP2modPyP2modPSzzP2modP
332 300 331 jca φzS¬zP1P1SzzP2modPySzzP2modPyP2modPSzzP2modP
333 eleq2 x=SzzP2modPP1xP1SzzP2modP
334 eleq2 x=SzzP2modPyP2modPxyP2modPSzzP2modP
335 334 raleqbi1dv x=SzzP2modPyxyP2modPxySzzP2modPyP2modPSzzP2modP
336 333 335 anbi12d x=SzzP2modPP1xyxyP2modPxP1SzzP2modPySzzP2modPyP2modPSzzP2modP
337 336 2 elrab2 SzzP2modPASzzP2modP𝒫1P1P1SzzP2modPySzzP2modPyP2modPSzzP2modP
338 247 332 337 sylanbrc φzS¬zP1SzzP2modPA
339 243 244 338 rspcdva φzS¬zP1SzzP2modPSTISzzP2modPmodP=-1modP
340 237 339 mpd φzS¬zP1TISzzP2modPmodP=-1modP
341 228 340 eqtrd φzS¬zP11TISzzP2modPmodP=-1modP
342 111 225 341 3eqtrd φzS¬zP1TISmodP=-1modP
343 342 ex φzS¬zP1TISmodP=-1modP
344 343 exlimdv φzzS¬zP1TISmodP=-1modP
345 58 344 biimtrid φ¬SP1TISmodP=-1modP
346 57 345 pm2.61d φTISmodP=-1modP