MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  gausslemma2d Structured version   Visualization version   GIF version

Theorem gausslemma2d 27285
Description: Gauss' Lemma (see also theorem 9.6 in [ApostolNT] p. 182) for integer 2: Let p be an odd prime. Let S = {2, 4, 6, ..., p - 1}. Let n denote the number of elements of S whose least positive residue modulo p is greater than p/2. Then ( 2 | p ) = (-1)^n. (Contributed by AV, 14-Jul-2021.)
Hypotheses
Ref Expression
gausslemma2d.p (𝜑𝑃 ∈ (ℙ ∖ {2}))
gausslemma2d.h 𝐻 = ((𝑃 − 1) / 2)
gausslemma2d.r 𝑅 = (𝑥 ∈ (1...𝐻) ↦ if((𝑥 · 2) < (𝑃 / 2), (𝑥 · 2), (𝑃 − (𝑥 · 2))))
gausslemma2d.m 𝑀 = (⌊‘(𝑃 / 4))
gausslemma2d.n 𝑁 = (𝐻𝑀)
Assertion
Ref Expression
gausslemma2d (𝜑 → (2 /L 𝑃) = (-1↑𝑁))
Distinct variable groups:   𝑥,𝐻   𝑥,𝑃   𝜑,𝑥   𝑥,𝑀
Allowed substitution hints:   𝑅(𝑥)   𝑁(𝑥)

Proof of Theorem gausslemma2d
StepHypRef Expression
1 gausslemma2d.p . . 3 (𝜑𝑃 ∈ (ℙ ∖ {2}))
2 gausslemma2d.h . . 3 𝐻 = ((𝑃 − 1) / 2)
3 gausslemma2d.r . . 3 𝑅 = (𝑥 ∈ (1...𝐻) ↦ if((𝑥 · 2) < (𝑃 / 2), (𝑥 · 2), (𝑃 − (𝑥 · 2))))
4 gausslemma2d.m . . 3 𝑀 = (⌊‘(𝑃 / 4))
5 gausslemma2d.n . . 3 𝑁 = (𝐻𝑀)
61, 2, 3, 4, 5gausslemma2dlem7 27284 . 2 (𝜑 → (((-1↑𝑁) · (2↑𝐻)) mod 𝑃) = 1)
7 eldifi 4094 . . . . . 6 (𝑃 ∈ (ℙ ∖ {2}) → 𝑃 ∈ ℙ)
8 prmnn 16644 . . . . . . . 8 (𝑃 ∈ ℙ → 𝑃 ∈ ℕ)
98nnred 12201 . . . . . . 7 (𝑃 ∈ ℙ → 𝑃 ∈ ℝ)
10 prmgt1 16667 . . . . . . 7 (𝑃 ∈ ℙ → 1 < 𝑃)
119, 10jca 511 . . . . . 6 (𝑃 ∈ ℙ → (𝑃 ∈ ℝ ∧ 1 < 𝑃))
12 1mod 13865 . . . . . 6 ((𝑃 ∈ ℝ ∧ 1 < 𝑃) → (1 mod 𝑃) = 1)
131, 7, 11, 124syl 19 . . . . 5 (𝜑 → (1 mod 𝑃) = 1)
1413eqcomd 2735 . . . 4 (𝜑 → 1 = (1 mod 𝑃))
1514eqeq2d 2740 . . 3 (𝜑 → ((((-1↑𝑁) · (2↑𝐻)) mod 𝑃) = 1 ↔ (((-1↑𝑁) · (2↑𝐻)) mod 𝑃) = (1 mod 𝑃)))
16 neg1z 12569 . . . . . . . . . . 11 -1 ∈ ℤ
171, 4, 2, 5gausslemma2dlem0h 27274 . . . . . . . . . . 11 (𝜑𝑁 ∈ ℕ0)
18 zexpcl 14041 . . . . . . . . . . 11 ((-1 ∈ ℤ ∧ 𝑁 ∈ ℕ0) → (-1↑𝑁) ∈ ℤ)
1916, 17, 18sylancr 587 . . . . . . . . . 10 (𝜑 → (-1↑𝑁) ∈ ℤ)
20 2nn 12259 . . . . . . . . . . . . 13 2 ∈ ℕ
2120a1i 11 . . . . . . . . . . . 12 (𝜑 → 2 ∈ ℕ)
221, 2gausslemma2dlem0b 27268 . . . . . . . . . . . . 13 (𝜑𝐻 ∈ ℕ)
2322nnnn0d 12503 . . . . . . . . . . . 12 (𝜑𝐻 ∈ ℕ0)
2421, 23nnexpcld 14210 . . . . . . . . . . 11 (𝜑 → (2↑𝐻) ∈ ℕ)
2524nnzd 12556 . . . . . . . . . 10 (𝜑 → (2↑𝐻) ∈ ℤ)
2619, 25zmulcld 12644 . . . . . . . . 9 (𝜑 → ((-1↑𝑁) · (2↑𝐻)) ∈ ℤ)
2726zred 12638 . . . . . . . 8 (𝜑 → ((-1↑𝑁) · (2↑𝐻)) ∈ ℝ)
28 1red 11175 . . . . . . . 8 (𝜑 → 1 ∈ ℝ)
2927, 28jca 511 . . . . . . 7 (𝜑 → (((-1↑𝑁) · (2↑𝐻)) ∈ ℝ ∧ 1 ∈ ℝ))
3029adantr 480 . . . . . 6 ((𝜑 ∧ (((-1↑𝑁) · (2↑𝐻)) mod 𝑃) = (1 mod 𝑃)) → (((-1↑𝑁) · (2↑𝐻)) ∈ ℝ ∧ 1 ∈ ℝ))
311gausslemma2dlem0a 27267 . . . . . . . . 9 (𝜑𝑃 ∈ ℕ)
3231nnrpd 12993 . . . . . . . 8 (𝜑𝑃 ∈ ℝ+)
3319, 32jca 511 . . . . . . 7 (𝜑 → ((-1↑𝑁) ∈ ℤ ∧ 𝑃 ∈ ℝ+))
3433adantr 480 . . . . . 6 ((𝜑 ∧ (((-1↑𝑁) · (2↑𝐻)) mod 𝑃) = (1 mod 𝑃)) → ((-1↑𝑁) ∈ ℤ ∧ 𝑃 ∈ ℝ+))
35 simpr 484 . . . . . 6 ((𝜑 ∧ (((-1↑𝑁) · (2↑𝐻)) mod 𝑃) = (1 mod 𝑃)) → (((-1↑𝑁) · (2↑𝐻)) mod 𝑃) = (1 mod 𝑃))
36 modmul1 13889 . . . . . 6 (((((-1↑𝑁) · (2↑𝐻)) ∈ ℝ ∧ 1 ∈ ℝ) ∧ ((-1↑𝑁) ∈ ℤ ∧ 𝑃 ∈ ℝ+) ∧ (((-1↑𝑁) · (2↑𝐻)) mod 𝑃) = (1 mod 𝑃)) → ((((-1↑𝑁) · (2↑𝐻)) · (-1↑𝑁)) mod 𝑃) = ((1 · (-1↑𝑁)) mod 𝑃))
3730, 34, 35, 36syl3anc 1373 . . . . 5 ((𝜑 ∧ (((-1↑𝑁) · (2↑𝐻)) mod 𝑃) = (1 mod 𝑃)) → ((((-1↑𝑁) · (2↑𝐻)) · (-1↑𝑁)) mod 𝑃) = ((1 · (-1↑𝑁)) mod 𝑃))
3837ex 412 . . . 4 (𝜑 → ((((-1↑𝑁) · (2↑𝐻)) mod 𝑃) = (1 mod 𝑃) → ((((-1↑𝑁) · (2↑𝐻)) · (-1↑𝑁)) mod 𝑃) = ((1 · (-1↑𝑁)) mod 𝑃)))
3919zcnd 12639 . . . . . . . . 9 (𝜑 → (-1↑𝑁) ∈ ℂ)
4024nncnd 12202 . . . . . . . . 9 (𝜑 → (2↑𝐻) ∈ ℂ)
4139, 40, 39mul32d 11384 . . . . . . . 8 (𝜑 → (((-1↑𝑁) · (2↑𝐻)) · (-1↑𝑁)) = (((-1↑𝑁) · (-1↑𝑁)) · (2↑𝐻)))
4217nn0cnd 12505 . . . . . . . . . . . . 13 (𝜑𝑁 ∈ ℂ)
43422timesd 12425 . . . . . . . . . . . 12 (𝜑 → (2 · 𝑁) = (𝑁 + 𝑁))
4443eqcomd 2735 . . . . . . . . . . 11 (𝜑 → (𝑁 + 𝑁) = (2 · 𝑁))
4544oveq2d 7403 . . . . . . . . . 10 (𝜑 → (-1↑(𝑁 + 𝑁)) = (-1↑(2 · 𝑁)))
46 neg1cn 12171 . . . . . . . . . . . 12 -1 ∈ ℂ
4746a1i 11 . . . . . . . . . . 11 (𝜑 → -1 ∈ ℂ)
4847, 17, 17expaddd 14113 . . . . . . . . . 10 (𝜑 → (-1↑(𝑁 + 𝑁)) = ((-1↑𝑁) · (-1↑𝑁)))
4917nn0zd 12555 . . . . . . . . . . 11 (𝜑𝑁 ∈ ℤ)
50 m1expeven 14074 . . . . . . . . . . 11 (𝑁 ∈ ℤ → (-1↑(2 · 𝑁)) = 1)
5149, 50syl 17 . . . . . . . . . 10 (𝜑 → (-1↑(2 · 𝑁)) = 1)
5245, 48, 513eqtr3d 2772 . . . . . . . . 9 (𝜑 → ((-1↑𝑁) · (-1↑𝑁)) = 1)
5352oveq1d 7402 . . . . . . . 8 (𝜑 → (((-1↑𝑁) · (-1↑𝑁)) · (2↑𝐻)) = (1 · (2↑𝐻)))
5440mullidd 11192 . . . . . . . 8 (𝜑 → (1 · (2↑𝐻)) = (2↑𝐻))
5541, 53, 543eqtrd 2768 . . . . . . 7 (𝜑 → (((-1↑𝑁) · (2↑𝐻)) · (-1↑𝑁)) = (2↑𝐻))
5655oveq1d 7402 . . . . . 6 (𝜑 → ((((-1↑𝑁) · (2↑𝐻)) · (-1↑𝑁)) mod 𝑃) = ((2↑𝐻) mod 𝑃))
5739mullidd 11192 . . . . . . 7 (𝜑 → (1 · (-1↑𝑁)) = (-1↑𝑁))
5857oveq1d 7402 . . . . . 6 (𝜑 → ((1 · (-1↑𝑁)) mod 𝑃) = ((-1↑𝑁) mod 𝑃))
5956, 58eqeq12d 2745 . . . . 5 (𝜑 → (((((-1↑𝑁) · (2↑𝐻)) · (-1↑𝑁)) mod 𝑃) = ((1 · (-1↑𝑁)) mod 𝑃) ↔ ((2↑𝐻) mod 𝑃) = ((-1↑𝑁) mod 𝑃)))
602oveq2i 7398 . . . . . . . 8 (2↑𝐻) = (2↑((𝑃 − 1) / 2))
6160oveq1i 7397 . . . . . . 7 ((2↑𝐻) mod 𝑃) = ((2↑((𝑃 − 1) / 2)) mod 𝑃)
6261eqeq1i 2734 . . . . . 6 (((2↑𝐻) mod 𝑃) = ((-1↑𝑁) mod 𝑃) ↔ ((2↑((𝑃 − 1) / 2)) mod 𝑃) = ((-1↑𝑁) mod 𝑃))
63 2z 12565 . . . . . . . . . 10 2 ∈ ℤ
64 lgsvalmod 27227 . . . . . . . . . 10 ((2 ∈ ℤ ∧ 𝑃 ∈ (ℙ ∖ {2})) → ((2 /L 𝑃) mod 𝑃) = ((2↑((𝑃 − 1) / 2)) mod 𝑃))
6563, 1, 64sylancr 587 . . . . . . . . 9 (𝜑 → ((2 /L 𝑃) mod 𝑃) = ((2↑((𝑃 − 1) / 2)) mod 𝑃))
6665eqcomd 2735 . . . . . . . 8 (𝜑 → ((2↑((𝑃 − 1) / 2)) mod 𝑃) = ((2 /L 𝑃) mod 𝑃))
6766eqeq1d 2731 . . . . . . 7 (𝜑 → (((2↑((𝑃 − 1) / 2)) mod 𝑃) = ((-1↑𝑁) mod 𝑃) ↔ ((2 /L 𝑃) mod 𝑃) = ((-1↑𝑁) mod 𝑃)))
681, 4, 2, 5gausslemma2dlem0i 27275 . . . . . . 7 (𝜑 → (((2 /L 𝑃) mod 𝑃) = ((-1↑𝑁) mod 𝑃) → (2 /L 𝑃) = (-1↑𝑁)))
6967, 68sylbid 240 . . . . . 6 (𝜑 → (((2↑((𝑃 − 1) / 2)) mod 𝑃) = ((-1↑𝑁) mod 𝑃) → (2 /L 𝑃) = (-1↑𝑁)))
7062, 69biimtrid 242 . . . . 5 (𝜑 → (((2↑𝐻) mod 𝑃) = ((-1↑𝑁) mod 𝑃) → (2 /L 𝑃) = (-1↑𝑁)))
7159, 70sylbid 240 . . . 4 (𝜑 → (((((-1↑𝑁) · (2↑𝐻)) · (-1↑𝑁)) mod 𝑃) = ((1 · (-1↑𝑁)) mod 𝑃) → (2 /L 𝑃) = (-1↑𝑁)))
7238, 71syld 47 . . 3 (𝜑 → ((((-1↑𝑁) · (2↑𝐻)) mod 𝑃) = (1 mod 𝑃) → (2 /L 𝑃) = (-1↑𝑁)))
7315, 72sylbid 240 . 2 (𝜑 → ((((-1↑𝑁) · (2↑𝐻)) mod 𝑃) = 1 → (2 /L 𝑃) = (-1↑𝑁)))
746, 73mpd 15 1 (𝜑 → (2 /L 𝑃) = (-1↑𝑁))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wa 395   = wceq 1540  wcel 2109  cdif 3911  ifcif 4488  {csn 4589   class class class wbr 5107  cmpt 5188  cfv 6511  (class class class)co 7387  cc 11066  cr 11067  1c1 11069   + caddc 11071   · cmul 11073   < clt 11208  cmin 11405  -cneg 11406   / cdiv 11835  cn 12186  2c2 12241  4c4 12243  0cn0 12442  cz 12529  +crp 12951  ...cfz 13468  cfl 13752   mod cmo 13831  cexp 14026  cprime 16641   /L clgs 27205
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1795  ax-4 1809  ax-5 1910  ax-6 1967  ax-7 2008  ax-8 2111  ax-9 2119  ax-10 2142  ax-11 2158  ax-12 2178  ax-ext 2701  ax-rep 5234  ax-sep 5251  ax-nul 5261  ax-pow 5320  ax-pr 5387  ax-un 7711  ax-inf2 9594  ax-cnex 11124  ax-resscn 11125  ax-1cn 11126  ax-icn 11127  ax-addcl 11128  ax-addrcl 11129  ax-mulcl 11130  ax-mulrcl 11131  ax-mulcom 11132  ax-addass 11133  ax-mulass 11134  ax-distr 11135  ax-i2m1 11136  ax-1ne0 11137  ax-1rid 11138  ax-rnegex 11139  ax-rrecex 11140  ax-cnre 11141  ax-pre-lttri 11142  ax-pre-lttrn 11143  ax-pre-ltadd 11144  ax-pre-mulgt0 11145  ax-pre-sup 11146
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 848  df-3or 1087  df-3an 1088  df-tru 1543  df-fal 1553  df-ex 1780  df-nf 1784  df-sb 2066  df-mo 2533  df-eu 2562  df-clab 2708  df-cleq 2721  df-clel 2803  df-nfc 2878  df-ne 2926  df-nel 3030  df-ral 3045  df-rex 3054  df-rmo 3354  df-reu 3355  df-rab 3406  df-v 3449  df-sbc 3754  df-csb 3863  df-dif 3917  df-un 3919  df-in 3921  df-ss 3931  df-pss 3934  df-nul 4297  df-if 4489  df-pw 4565  df-sn 4590  df-pr 4592  df-tp 4594  df-op 4596  df-uni 4872  df-int 4911  df-iun 4957  df-br 5108  df-opab 5170  df-mpt 5189  df-tr 5215  df-id 5533  df-eprel 5538  df-po 5546  df-so 5547  df-fr 5591  df-se 5592  df-we 5593  df-xp 5644  df-rel 5645  df-cnv 5646  df-co 5647  df-dm 5648  df-rn 5649  df-res 5650  df-ima 5651  df-pred 6274  df-ord 6335  df-on 6336  df-lim 6337  df-suc 6338  df-iota 6464  df-fun 6513  df-fn 6514  df-f 6515  df-f1 6516  df-fo 6517  df-f1o 6518  df-fv 6519  df-isom 6520  df-riota 7344  df-ov 7390  df-oprab 7391  df-mpo 7392  df-om 7843  df-1st 7968  df-2nd 7969  df-frecs 8260  df-wrecs 8291  df-recs 8340  df-rdg 8378  df-1o 8434  df-2o 8435  df-oadd 8438  df-er 8671  df-en 8919  df-dom 8920  df-sdom 8921  df-fin 8922  df-sup 9393  df-inf 9394  df-oi 9463  df-dju 9854  df-card 9892  df-pnf 11210  df-mnf 11211  df-xr 11212  df-ltxr 11213  df-le 11214  df-sub 11407  df-neg 11408  df-div 11836  df-nn 12187  df-2 12249  df-3 12250  df-4 12251  df-5 12252  df-6 12253  df-n0 12443  df-xnn0 12516  df-z 12530  df-uz 12794  df-q 12908  df-rp 12952  df-ioo 13310  df-fz 13469  df-fzo 13616  df-fl 13754  df-mod 13832  df-seq 13967  df-exp 14027  df-fac 14239  df-hash 14296  df-cj 15065  df-re 15066  df-im 15067  df-sqrt 15201  df-abs 15202  df-clim 15454  df-prod 15870  df-dvds 16223  df-gcd 16465  df-prm 16642  df-phi 16736  df-pc 16808  df-lgs 27206
This theorem is referenced by:  2lgs  27318
  Copyright terms: Public domain W3C validator