Metamath Proof Explorer < Previous   Next > Nearby theorems Mirrors  >  Home  >  MPE Home  >  Th. List  >  4sqlem12 Unicode version

Theorem 4sqlem12 13279
 Description: Lemma for 4sq 13287. For any odd prime , there is a such that is a sum of two squares. (Contributed by Mario Carneiro, 15-Jul-2014.)
Hypotheses
Ref Expression
4sq.1
4sq.2
4sq.3
4sq.4
4sqlem11.5
4sqlem11.6
Assertion
Ref Expression
4sqlem12
Distinct variable groups:   ,,,,   ,,,   ,   ,,,,,   ,,,,,   ,,,,,   ,,,,,
Allowed substitution hints:   (,,,)   (,,,,,)   (,,,)   (,,,)   (,,,,,,,)   (,,,)

Proof of Theorem 4sqlem12
Dummy variable is distinct from all other variables.
StepHypRef Expression
1 4sq.1 . . . 4
2 4sq.2 . . . 4
3 4sq.3 . . . 4
4 4sq.4 . . . 4
5 4sqlem11.5 . . . 4
6 4sqlem11.6 . . . 4
71, 2, 3, 4, 5, 64sqlem11 13278 . . 3
8 n0 3597 . . 3
97, 8sylib 189 . 2
10 vex 2919 . . . . . . 7
11 eqeq1 2410 . . . . . . . 8
1211rexbidv 2687 . . . . . . 7
1310, 12, 5elab2 3045 . . . . . 6
14 abid 2392 . . . . . . . . 9
155rexeqi 2869 . . . . . . . . 9
16 oveq1 6047 . . . . . . . . . . . . . 14
1716oveq1d 6055 . . . . . . . . . . . . 13
1817eqeq2d 2415 . . . . . . . . . . . 12
1918cbvrexv 2893 . . . . . . . . . . 11
20 eqeq1 2410 . . . . . . . . . . . 12
2120rexbidv 2687 . . . . . . . . . . 11
2219, 21syl5bb 249 . . . . . . . . . 10
2322rexab 3057 . . . . . . . . 9
2414, 15, 233bitri 263 . . . . . . . 8
256rnmpt 5075 . . . . . . . . 9
2625eleq2i 2468 . . . . . . . 8
27 rexcom4 2935 . . . . . . . . 9
28 r19.41v 2821 . . . . . . . . . 10
2928exbii 1589 . . . . . . . . 9
3027, 29bitri 241 . . . . . . . 8
3124, 26, 303bitr4i 269 . . . . . . 7
32 ovex 6065 . . . . . . . . 9
33 oveq2 6048 . . . . . . . . . 10
3433eqeq2d 2415 . . . . . . . . 9
3532, 34ceqsexv 2951 . . . . . . . 8
3635rexbii 2691 . . . . . . 7
3731, 36bitri 241 . . . . . 6
3813, 37anbi12i 679 . . . . 5
39 elin 3490 . . . . 5
40 reeanv 2835 . . . . 5
4138, 39, 403bitr4i 269 . . . 4
42 eqtr2 2422 . . . . . 6
4343ad2ant1 978 . . . . . . . . . . . . . . . . . . 19
44 prmnn 13037 . . . . . . . . . . . . . . . . . . 19
4543, 44syl 16 . . . . . . . . . . . . . . . . . 18
46 nnm1nn0 10217 . . . . . . . . . . . . . . . . . 18
4745, 46syl 16 . . . . . . . . . . . . . . . . 17
4847nn0red 10231 . . . . . . . . . . . . . . . 16
4945nnrpd 10603 . . . . . . . . . . . . . . . 16
5047nn0ge0d 10233 . . . . . . . . . . . . . . . 16
5145nnred 9971 . . . . . . . . . . . . . . . . 17
5251ltm1d 9899 . . . . . . . . . . . . . . . 16
53 modid 11225 . . . . . . . . . . . . . . . 16
5448, 49, 50, 52, 53syl22anc 1185 . . . . . . . . . . . . . . 15
5554oveq1d 6055 . . . . . . . . . . . . . 14
56 simp2r 984 . . . . . . . . . . . . . . . . . . . . 21
57 elfzelz 11015 . . . . . . . . . . . . . . . . . . . . 21
5856, 57syl 16 . . . . . . . . . . . . . . . . . . . 20
59 zsqcl2 11414 . . . . . . . . . . . . . . . . . . . 20
6058, 59syl 16 . . . . . . . . . . . . . . . . . . 19
6160nn0red 10231 . . . . . . . . . . . . . . . . . 18
62 modlt 11213 . . . . . . . . . . . . . . . . . 18
6361, 49, 62syl2anc 643 . . . . . . . . . . . . . . . . 17
64 zsqcl 11407 . . . . . . . . . . . . . . . . . . . . 21
6558, 64syl 16 . . . . . . . . . . . . . . . . . . . 20
6665, 45zmodcld 11222 . . . . . . . . . . . . . . . . . . 19
6766nn0zd 10329 . . . . . . . . . . . . . . . . . 18
68 prmz 13038 . . . . . . . . . . . . . . . . . . 19
6943, 68syl 16 . . . . . . . . . . . . . . . . . 18
70 zltlem1 10284 . . . . . . . . . . . . . . . . . 18
7167, 69, 70syl2anc 643 . . . . . . . . . . . . . . . . 17
7263, 71mpbid 202 . . . . . . . . . . . . . . . 16
7372, 54breqtrrd 4198 . . . . . . . . . . . . . . 15
74 modsubdir 11240 . . . . . . . . . . . . . . . 16
7548, 61, 49, 74syl3anc 1184 . . . . . . . . . . . . . . 15
7673, 75mpbid 202 . . . . . . . . . . . . . 14
77 simp3 959 . . . . . . . . . . . . . 14
7855, 76, 773eqtr4rd 2447 . . . . . . . . . . . . 13
79 simp2l 983 . . . . . . . . . . . . . . . 16
80 elfzelz 11015 . . . . . . . . . . . . . . . 16
8179, 80syl 16 . . . . . . . . . . . . . . 15
82 zsqcl 11407 . . . . . . . . . . . . . . 15
8381, 82syl 16 . . . . . . . . . . . . . 14
8447nn0zd 10329 . . . . . . . . . . . . . . 15
8584, 65zsubcld 10336 . . . . . . . . . . . . . 14
86 moddvds 12814 . . . . . . . . . . . . . 14
8745, 83, 85, 86syl3anc 1184 . . . . . . . . . . . . 13
8878, 87mpbid 202 . . . . . . . . . . . 12
89 zsqcl2 11414 . . . . . . . . . . . . . . . 16
9081, 89syl 16 . . . . . . . . . . . . . . 15
9190nn0cnd 10232 . . . . . . . . . . . . . 14
9247nn0cnd 10232 . . . . . . . . . . . . . 14
9360nn0cnd 10232 . . . . . . . . . . . . . 14
9491, 92, 93subsub3d 9397 . . . . . . . . . . . . 13
9590, 60nn0addcld 10234 . . . . . . . . . . . . . . 15
9695nn0cnd 10232 . . . . . . . . . . . . . 14
9745nncnd 9972 . . . . . . . . . . . . . 14
98 ax-1cn 9004 . . . . . . . . . . . . . . 15
9998a1i 11 . . . . . . . . . . . . . 14
10096, 97, 99subsub3d 9397 . . . . . . . . . . . . 13
10194, 100eqtrd 2436 . . . . . . . . . . . 12
10288, 101breqtrd 4196 . . . . . . . . . . 11
103 nn0p1nn 10215 . . . . . . . . . . . . . 14
10495, 103syl 16 . . . . . . . . . . . . 13
105104nnzd 10330 . . . . . . . . . . . 12
106 dvdssubr 12846 . . . . . . . . . . . 12
10769, 105, 106syl2anc 643 . . . . . . . . . . 11
108102, 107mpbird 224 . . . . . . . . . 10
10945nnne0d 10000 . . . . . . . . . . 11
110 dvdsval2 12810 . . . . . . . . . . 11
11169, 109, 105, 110syl3anc 1184 . . . . . . . . . 10
112108, 111mpbid 202 . . . . . . . . 9
113 nnrp 10577 . . . . . . . . . . . . . 14
114 nnrp 10577 . . . . . . . . . . . . . 14
115 rpdivcl 10590 . . . . . . . . . . . . . 14
116113, 114, 115syl2an 464 . . . . . . . . . . . . 13
117104, 45, 116syl2anc 643 . . . . . . . . . . . 12
118117rpgt0d 10607 . . . . . . . . . . 11
119 elnnz 10248 . . . . . . . . . . 11
120112, 118, 119sylanbrc 646 . . . . . . . . . 10
121120nnge1d 9998 . . . . . . . . 9
12295nn0red 10231 . . . . . . . . . . . 12
123 2nn 10089 . . . . . . . . . . . . . . . 16
12423ad2ant1 978 . . . . . . . . . . . . . . . 16
125 nnmulcl 9979 . . . . . . . . . . . . . . . 16
126123, 124, 125sylancr 645 . . . . . . . . . . . . . . 15
127126nnred 9971 . . . . . . . . . . . . . 14
128127resqcld 11504 . . . . . . . . . . . . 13
129 nnmulcl 9979 . . . . . . . . . . . . . . 15
130123, 126, 129sylancr 645 . . . . . . . . . . . . . 14
131130nnred 9971 . . . . . . . . . . . . 13
132128, 131readdcld 9071 . . . . . . . . . . . 12
133 1re 9046 . . . . . . . . . . . . 13
134133a1i 11 . . . . . . . . . . . 12
135124nnsqcld 11498 . . . . . . . . . . . . . . . 16
136 nnmulcl 9979 . . . . . . . . . . . . . . . 16
137123, 135, 136sylancr 645 . . . . . . . . . . . . . . 15
138137nnred 9971 . . . . . . . . . . . . . 14
13990nn0red 10231 . . . . . . . . . . . . . . . 16
140135nnred 9971 . . . . . . . . . . . . . . . 16
14181zred 10331 . . . . . . . . . . . . . . . . 17
142 elfzle1 11016 . . . . . . . . . . . . . . . . . 18
14379, 142syl 16 . . . . . . . . . . . . . . . . 17
144124nnred 9971 . . . . . . . . . . . . . . . . 17
145 elfzle2 11017 . . . . . . . . . . . . . . . . . 18
14679, 145syl 16 . . . . . . . . . . . . . . . . 17
147 le2sq2 11412 . . . . . . . . . . . . . . . . 17
148141, 143, 144, 146, 147syl22anc 1185 . . . . . . . . . . . . . . . 16
14958zred 10331 . . . . . . . . . . . . . . . . 17
150 elfzle1 11016 . . . . . . . . . . . . . . . . . 18
15156, 150syl 16 . . . . . . . . . . . . . . . . 17
152 elfzle2 11017 . . . . . . . . . . . . . . . . . 18
15356, 152syl 16 . . . . . . . . . . . . . . . . 17
154 le2sq2 11412 . . . . . . . . . . . . . . . . 17
155149, 151, 144, 153, 154syl22anc 1185 . . . . . . . . . . . . . . . 16
156139, 61, 140, 140, 148, 155le2addd 9600 . . . . . . . . . . . . . . 15
157135nncnd 9972 . . . . . . . . . . . . . . . 16
1581572timesd 10166 . . . . . . . . . . . . . . 15
159156, 158breqtrrd 4198 . . . . . . . . . . . . . 14
160 2lt4 10102 . . . . . . . . . . . . . . . 16
161 2re 10025 . . . . . . . . . . . . . . . . . 18
162161a1i 11 . . . . . . . . . . . . . . . . 17
163 4re 10029 . . . . . . . . . . . . . . . . . 18
164163a1i 11 . . . . . . . . . . . . . . . . 17
165135nngt0d 9999 . . . . . . . . . . . . . . . . 17
166 ltmul1 9816 . . . . . . . . . . . . . . . . 17
167162, 164, 140, 165, 166syl112anc 1188 . . . . . . . . . . . . . . . 16
168160, 167mpbii 203 . . . . . . . . . . . . . . 15
169 2cn 10026 . . . . . . . . . . . . . . . . 17
170124nncnd 9972 . . . . . . . . . . . . . . . . 17
171 sqmul 11400 . . . . . . . . . . . . . . . . 17
172169, 170, 171sylancr 645 . . . . . . . . . . . . . . . 16
173 sq2 11432 . . . . . . . . . . . . . . . . 17
174173oveq1i 6050 . . . . . . . . . . . . . . . 16
175172, 174syl6eq 2452 . . . . . . . . . . . . . . 15
176168, 175breqtrrd 4198 . . . . . . . . . . . . . 14
177122, 138, 128, 159, 176lelttrd 9184 . . . . . . . . . . . . 13
178130nnrpd 10603 . . . . . . . . . . . . . 14
179128, 178ltaddrpd 10633 . . . . . . . . . . . . 13
180122, 128, 132, 177, 179lttrd 9187 . . . . . . . . . . . 12
181122, 132, 134, 180ltadd1dd 9593 . . . . . . . . . . 11
18233ad2ant1 978 . . . . . . . . . . . . 13
183182oveq1d 6055 . . . . . . . . . . . 12
18497sqvald 11475 . . . . . . . . . . . 12
185126nncnd 9972 . . . . . . . . . . . . 13
186 binom21 11452 . . . . . . . . . . . . 13
187185, 186syl 16 . . . . . . . . . . . 12
188183, 184, 1873eqtr3d 2444 . . . . . . . . . . 11
189181, 188breqtrrd 4198 . . . . . . . . . 10
190104nnred 9971 . . . . . . . . . . 11
19145nngt0d 9999 . . . . . . . . . . 11
192 ltdivmul 9838 . . . . . . . . . . 11
193190, 51, 51, 191, 192syl112anc 1188 . . . . . . . . . 10
194189, 193mpbird 224 . . . . . . . . 9
195 1z 10267 . . . . . . . . . 10
196 elfzm11 11071 . . . . . . . . . 10
197195, 69, 196sylancr 645 . . . . . . . . 9
198112, 121, 194, 197mpbir3and 1137 . . . . . . . 8
199 gzreim 13262 . . . . . . . . 9
20081, 58, 199syl2anc 643 . . . . . . . 8
201 gzcn 13255 . . . . . . . . . . . . 13
202200, 201syl 16 . . . . . . . . . . . 12
203202absvalsq2d 12200 . . . . . . . . . . 11
204141, 149crred 11991 . . . . . . . . . . . . 13
205204oveq1d 6055 . . . . . . . . . . . 12
206141, 149crimd 11992 . . . . . . . . . . . . 13
207206oveq1d 6055 . . . . . . . . . . . 12
208205, 207oveq12d 6058 . . . . . . . . . . 11
209203, 208eqtrd 2436 . . . . . . . . . 10
210209oveq1d 6055 . . . . . . . . 9
211104nncnd 9972 . . . . . . . . . 10
212211, 97, 109divcan1d 9747 . . . . . . . . 9
213210, 212eqtr4d 2439 . . . . . . . 8
214 oveq1 6047 . . . . . . . . . 10
215214eqeq2d 2415 . . . . . . . . 9
216 fveq2 5687 . . . . . . . . . . . 12
217216oveq1d 6055 . . . . . . . . . . 11
218217oveq1d 6055 . . . . . . . . . 10
219218eqeq1d 2412 . . . . . . . . 9
220215, 219rspc2ev 3020 . . . . . . . 8
221198, 200, 213, 220syl3anc 1184 . . . . . . 7
2222213expia 1155 . . . . . 6
22342, 222syl5 30 . . . . 5
224223rexlimdvva 2797 . . . 4
22541, 224syl5bi 209 . . 3
226225exlimdv 1643 . 2
2279, 226mpd 15 1
 Colors of variables: wff set class Syntax hints:   wi 4   wb 177   wa 359   w3a 936  wex 1547   wceq 1649   wcel 1721  cab 2390   wne 2567  wrex 2667   cin 3279  c0 3588   class class class wbr 4172   cmpt 4226   crn 4838  cfv 5413  (class class class)co 6040  cc 8944  cr 8945  cc0 8946  c1 8947  ci 8948   caddc 8949   cmul 8951   clt 9076   cle 9077   cmin 9247   cdiv 9633  cn 9956  c2 10005  c4 10007  cn0 10177  cz 10238  crp 10568  cfz 10999   cmo 11205  cexp 11337  cre 11857  cim 11858  cabs 11994   cdivides 12807  cprime 13034  cgz 13252 This theorem is referenced by:  4sqlem13  13280 This theorem was proved from axioms:  ax-1 5  ax-2 6  ax-3 7  ax-mp 8  ax-gen 1552  ax-5 1563  ax-17 1623  ax-9 1662  ax-8 1683  ax-13 1723  ax-14 1725  ax-6 1740  ax-7 1745  ax-11 1757  ax-12 1946  ax-ext 2385  ax-rep 4280  ax-sep 4290  ax-nul 4298  ax-pow 4337  ax-pr 4363  ax-un 4660  ax-cnex 9002  ax-resscn 9003  ax-1cn 9004  ax-icn 9005  ax-addcl 9006  ax-addrcl 9007  ax-mulcl 9008  ax-mulrcl 9009  ax-mulcom 9010  ax-addass 9011  ax-mulass 9012  ax-distr 9013  ax-i2m1 9014  ax-1ne0 9015  ax-1rid 9016  ax-rnegex 9017  ax-rrecex 9018  ax-cnre 9019  ax-pre-lttri 9020  ax-pre-lttrn 9021  ax-pre-ltadd 9022  ax-pre-mulgt0 9023  ax-pre-sup 9024 This theorem depends on definitions:  df-bi 178  df-or 360  df-an 361  df-3or 937  df-3an 938  df-tru 1325  df-ex 1548  df-nf 1551  df-sb 1656  df-eu 2258  df-mo 2259  df-clab 2391  df-cleq 2397  df-clel 2400  df-nfc 2529  df-ne 2569  df-nel 2570  df-ral 2671  df-rex 2672  df-reu 2673  df-rmo 2674  df-rab 2675  df-v 2918  df-sbc 3122  df-csb 3212  df-dif 3283  df-un 3285  df-in 3287  df-ss 3294  df-pss 3296  df-nul 3589  df-if 3700  df-pw 3761  df-sn 3780  df-pr 3781  df-tp 3782  df-op 3783  df-uni 3976  df-int 4011  df-iun 4055  df-br 4173  df-opab 4227  df-mpt 4228  df-tr 4263  df-eprel 4454  df-id 4458  df-po 4463  df-so 4464  df-fr 4501  df-we 4503  df-ord 4544  df-on 4545  df-lim 4546  df-suc 4547  df-om 4805  df-xp 4843  df-rel 4844  df-cnv 4845  df-co 4846  df-dm 4847  df-rn 4848  df-res 4849  df-ima 4850  df-iota 5377  df-fun 5415  df-fn 5416  df-f 5417  df-f1 5418  df-fo 5419  df-f1o 5420  df-fv 5421  df-ov 6043  df-oprab 6044  df-mpt2 6045  df-1st 6308  df-2nd 6309  df-riota 6508  df-recs 6592  df-rdg 6627  df-1o 6683  df-2o 6684  df-oadd 6687  df-er 6864  df-en 7069  df-dom 7070  df-sdom 7071  df-fin 7072  df-sup 7404  df-card 7782  df-cda 8004  df-pnf 9078  df-mnf 9079  df-xr 9080  df-ltxr 9081  df-le 9082  df-sub 9249  df-neg 9250  df-div 9634  df-nn 9957  df-2 10014  df-3 10015  df-4 10016  df-n0 10178  df-z 10239  df-uz 10445  df-rp 10569  df-fz 11000  df-fl 11157  df-mod 11206  df-seq 11279  df-exp 11338  df-hash 11574  df-cj 11859  df-re 11860  df-im 11861  df-sqr 11995  df-abs 11996  df-dvds 12808  df-gcd 12962  df-prm 13035  df-gz 13253
 Copyright terms: Public domain W3C validator