| Metamath Proof Explorer |
< Previous
Next >
Nearby theorems |
||
| Mirrors > Home > MPE Home > Th. List > gausslemma2dlem7 | Structured version Visualization version GIF version | ||
| Description: Lemma 7 for gausslemma2d 27710. (Contributed by AV, 13-Jul-2021.) |
| Ref | Expression |
|---|---|
| gausslemma2d.p | ⊢ (𝜑 → 𝑃 ∈ (ℙ ∖ {2})) |
| gausslemma2d.h | ⊢ 𝐻 = ((𝑃 − 1) / 2) |
| gausslemma2d.r | ⊢ 𝑅 = (𝑥 ∈ (1...𝐻) ↦ if((𝑥 · 2) < (𝑃 / 2), (𝑥 · 2), (𝑃 − (𝑥 · 2)))) |
| gausslemma2d.m | ⊢ 𝑀 = (⌊‘(𝑃 / 4)) |
| gausslemma2d.n | ⊢ 𝑁 = (𝐻 − 𝑀) |
| Ref | Expression |
|---|---|
| gausslemma2dlem7 | ⊢ (𝜑 → ((( -1↑𝑁) · (2↑𝐻)) mod 𝑃) = 1) |
| Step | Hyp | Ref | 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 ⊢ 𝑁 = (𝐻 − 𝑀) | |
| 6 | 1, 2, 3, 4, 5 | gausslemma2dlem6 27708 | . 2 ⊢ (𝜑 → ((!‘𝐻) mod 𝑃) = (((( -1↑𝑁) · (2↑𝐻)) · (!‘𝐻)) mod 𝑃)) |
| 7 | 1, 2 | gausslemma2dlem0b 27693 | . . . . . . . . . . 11 ⊢ (𝜑 → 𝐻 ∈ ℕ) |
| 8 | 7 | nnnn0d 12674 | . . . . . . . . . 10 ⊢ (𝜑 → 𝐻 ∈ ℕ0) |
| 9 | 8 | faccld 14435 | . . . . . . . . 9 ⊢ (𝜑 → (!‘𝐻) ∈ ℕ) |
| 10 | 9 | nncnd 12358 | . . . . . . . 8 ⊢ (𝜑 → (!‘𝐻) ∈ ℂ) |
| 11 | 10 | mullidd 11334 | . . . . . . 7 ⊢ (𝜑 → (1 · (!‘𝐻)) = (!‘𝐻)) |
| 12 | 11 | eqcomd 2766 | . . . . . 6 ⊢ (𝜑 → (!‘𝐻) = (1 · (!‘𝐻))) |
| 13 | 12 | oveq1d 7439 | . . . . 5 ⊢ (𝜑 → ((!‘𝐻) mod 𝑃) = ((1 · (!‘𝐻)) mod 𝑃)) |
| 14 | 13 | eqeq1d 2762 | . . . 4 ⊢ (𝜑 → (((!‘𝐻) mod 𝑃) = (((( -1↑𝑁) · (2↑𝐻)) · (!‘𝐻)) mod 𝑃) ↔ ((1 · (!‘𝐻)) mod 𝑃) = (((( -1↑𝑁) · (2↑𝐻)) · (!‘𝐻)) mod 𝑃))) |
| 15 | 1zzd 12734 | . . . . 5 ⊢ (𝜑 → 1 ∈ ℤ) | |
| 16 | neg1z 12739 | . . . . . . 7 ⊢ -1 ∈ ℤ | |
| 17 | 1, 4, 2, 5 | gausslemma2dlem0h 27699 | . . . . . . 7 ⊢ (𝜑 → 𝑁 ∈ ℕ0) |
| 18 | zexpcl 14226 | . . . . . . 7 ⊢ (( -1 ∈ ℤ ∧ 𝑁 ∈ ℕ0) → ( -1↑𝑁) ∈ ℤ) | |
| 19 | 16, 17, 18 | sylancr 599 | . . . . . 6 ⊢ (𝜑 → ( -1↑𝑁) ∈ ℤ) |
| 20 | 2z 12735 | . . . . . . 7 ⊢ 2 ∈ ℤ | |
| 21 | zexpcl 14226 | . . . . . . 7 ⊢ ((2 ∈ ℤ ∧ 𝐻 ∈ ℕ0) → (2↑𝐻) ∈ ℤ) | |
| 22 | 20, 8, 21 | sylancr 599 | . . . . . 6 ⊢ (𝜑 → (2↑𝐻) ∈ ℤ) |
| 23 | 19, 22 | zmulcld 12816 | . . . . 5 ⊢ (𝜑 → (( -1↑𝑁) · (2↑𝐻)) ∈ ℤ) |
| 24 | 9 | nnzd 12726 | . . . . 5 ⊢ (𝜑 → (!‘𝐻) ∈ ℤ) |
| 25 | eldifi 4066 | . . . . . 6 ⊢ (𝑃 ∈ (ℙ ∖ {2}) → 𝑃 ∈ ℙ) | |
| 26 | prmnn 16858 | . . . . . 6 ⊢ (𝑃 ∈ ℙ → 𝑃 ∈ ℕ) | |
| 27 | 1, 25, 26 | 3syl 19 | . . . . 5 ⊢ (𝜑 → 𝑃 ∈ ℕ) |
| 28 | 1, 2 | gausslemma2dlem0c 27694 | . . . . 5 ⊢ (𝜑 → ((!‘𝐻) gcd 𝑃) = 1) |
| 29 | cncongrcoprm 16854 | . . . . 5 ⊢ (((1 ∈ ℤ ∧ (( -1↑𝑁) · (2↑𝐻)) ∈ ℤ ∧ (!‘𝐻) ∈ ℤ) ∧ (𝑃 ∈ ℕ ∧ ((!‘𝐻) gcd 𝑃) = 1)) → (((1 · (!‘𝐻)) mod 𝑃) = (((( -1↑𝑁) · (2↑𝐻)) · (!‘𝐻)) mod 𝑃) ↔ (1 mod 𝑃) = ((( -1↑𝑁) · (2↑𝐻)) mod 𝑃))) | |
| 30 | 15, 23, 24, 27, 28, 29 | syl32anc 1405 | . . . 4 ⊢ (𝜑 → (((1 · (!‘𝐻)) mod 𝑃) = (((( -1↑𝑁) · (2↑𝐻)) · (!‘𝐻)) mod 𝑃) ↔ (1 mod 𝑃) = ((( -1↑𝑁) · (2↑𝐻)) mod 𝑃))) |
| 31 | 14, 30 | bitrd 282 | . . 3 ⊢ (𝜑 → (((!‘𝐻) mod 𝑃) = (((( -1↑𝑁) · (2↑𝐻)) · (!‘𝐻)) mod 𝑃) ↔ (1 mod 𝑃) = ((( -1↑𝑁) · (2↑𝐻)) mod 𝑃))) |
| 32 | simpr 490 | . . . . 5 ⊢ ((𝜑 ∧ (1 mod 𝑃) = ((( -1↑𝑁) · (2↑𝐻)) mod 𝑃)) → (1 mod 𝑃) = ((( -1↑𝑁) · (2↑𝐻)) mod 𝑃)) | |
| 33 | 26 | nnred 12357 | . . . . . . . 8 ⊢ (𝑃 ∈ ℙ → 𝑃 ∈ ℝ) |
| 34 | prmgt1 16882 | . . . . . . . 8 ⊢ (𝑃 ∈ ℙ → 1 < 𝑃) | |
| 35 | 33, 34 | jca 521 | . . . . . . 7 ⊢ (𝑃 ∈ ℙ → (𝑃 ∈ ℝ ∧ 1 < 𝑃)) |
| 36 | 1mod 14050 | . . . . . . 7 ⊢ ((𝑃 ∈ ℝ ∧ 1 < 𝑃) → (1 mod 𝑃) = 1) | |
| 37 | 1, 25, 35, 36 | 4syl 20 | . . . . . 6 ⊢ (𝜑 → (1 mod 𝑃) = 1) |
| 38 | 37 | adantr 486 | . . . . 5 ⊢ ((𝜑 ∧ (1 mod 𝑃) = ((( -1↑𝑁) · (2↑𝐻)) mod 𝑃)) → (1 mod 𝑃) = 1) |
| 39 | 32, 38 | eqtr3d 2797 | . . . 4 ⊢ ((𝜑 ∧ (1 mod 𝑃) = ((( -1↑𝑁) · (2↑𝐻)) mod 𝑃)) → ((( -1↑𝑁) · (2↑𝐻)) mod 𝑃) = 1) |
| 40 | 39 | ex 418 | . . 3 ⊢ (𝜑 → ((1 mod 𝑃) = ((( -1↑𝑁) · (2↑𝐻)) mod 𝑃) → ((( -1↑𝑁) · (2↑𝐻)) mod 𝑃) = 1)) |
| 41 | 31, 40 | sylbid 243 | . 2 ⊢ (𝜑 → (((!‘𝐻) mod 𝑃) = (((( -1↑𝑁) · (2↑𝐻)) · (!‘𝐻)) mod 𝑃) → ((( -1↑𝑁) · (2↑𝐻)) mod 𝑃) = 1)) |
| 42 | 6, 41 | mpd 16 | 1 ⊢ (𝜑 → ((( -1↑𝑁) · (2↑𝐻)) mod 𝑃) = 1) |
| Colors of variables: wff setvar class |
| This proof depends on syntax axioms: → wi 4 ↔ wb 209 ∧ wa 401 = wceq 1569 ∈ wcel 2144 ∖ cdif 4044 ifcif 4481 {csn 4584 class class class wbr 5102 ↦ cmpt 5185 ‘cfv 6543 (class class class)co 7424 ℝcr 11206 1c1 11208 · cmul 11212 < clt 11350 − cmin 11548 -cneg 11549 / cdiv 11980 ℕcn 12342 2c2 12404 4c4 12406 ℕ0cn0 12613 ℤcz 12700 ...cfz 13646 ⌊cfl 13937 mod cmo 14016 ↑cexp 14211 !cfa 14424 gcd cgcd 16673 ℙcprime 16855 |
| This proof depends on axioms: ax-mp 5 ax-1 6 ax-2 7 ax-3 8 ax-gen 1827 ax-4 1841 ax-5 1942 ax-6 1999 ax-7 2040 ax-8 2146 ax-9 2154 ax-10 2177 ax-11 2193 ax-12 2212 ax-ext 2732 ax-rep 5231 ax-sep 5248 ax-nul 5259 ax-pow 5327 ax-pr 5391 ax-un 7755 ax-inf2 9649 ax-cnex 11263 ax-resscn 11264 ax-1cn 11265 ax-icn 11266 ax-addcl 11267 ax-addrcl 11268 ax-mulcl 11269 ax-mulrcl 11270 ax-mulcom 11271 ax-addass 11272 ax-mulass 11273 ax-distr 11274 ax-i2m1 11275 ax-1ne0 11276 ax-1rid 11277 ax-rnegex 11278 ax-rrecex 11279 ax-cnre 11280 ax-pre-lttri 11281 ax-pre-lttrn 11282 ax-pre-ltadd 11283 ax-pre-mulgt0 11284 ax-pre-sup 11285 |
| This proof depends on definitions: df-bi 210 df-an 402 df-or 862 df-3or 1104 df-3an 1105 df-tru 1572 df-fal 1582 df-ex 1812 df-nf 1816 df-sb 2099 df-mo 2564 df-eu 2594 df-clab 2739 df-cleq 2752 df-clel 2835 df-nfc 2909 df-ne 2956 df-nel 3062 df-ral 3077 df-rex 3087 df-rmo 3365 df-reu 3366 df-rab 3413 df-v 3452 df-sbc 3739 df-csb 3848 df-ss 3897 df-pss 4013 df-dif 4046 df-in 4090 df-un 4150 df-nul 4278 df-if 4482 df-pw 4558 df-sn 4585 df-pr 4587 df-tp 4589 df-op 4835 df-uni 4867 df-int 4907 df-iun 4952 df-br 5103 df-opab 5167 df-mpt 5186 df-tr 5212 df-id 5546 df-eprel 5551 df-po 5559 df-so 5560 df-fr 5604 df-se 5605 df-we 5606 df-xp 5657 df-rel 5658 df-cnv 5659 df-co 5660 df-dm 5661 df-rn 5662 df-res 5663 df-ima 5664 df-pred 6307 df-ord 6368 df-on 6369 df-lim 6370 df-suc 6371 df-iota 6497 df-fun 6545 df-fn 6546 df-f 6547 df-f1 6548 df-fo 6549 df-f1o 6550 df-fv 6551 df-isom 6552 df-riota 7381 df-ov 7427 df-oprab 7428 df-mpo 7429 df-om 7882 df-1st 8005 df-2nd 8006 df-frecs 8307 df-wrecs 8338 df-recs 8387 df-rdg 8426 df-1o 8484 df-2o 8485 df-er 8725 df-en 8982 df-dom 8983 df-sdom 8984 df-fin 8985 df-sup 9441 df-inf 9442 df-oi 9511 df-card 10027 df-pnf 11352 df-mnf 11353 df-xr 11354 df-ltxr 11355 df-le 11356 df-sub 11550 df-neg 11551 df-div 11981 df-nn 12343 df-2 12412 df-3 12413 df-4 12414 df-5 12415 df-6 12416 df-n0 12614 df-z 12701 df-uz 12973 df-rp 13128 df-ioo 13487 df-fz 13647 df-fzo 13796 df-fl 13939 df-mod 14017 df-seq 14152 df-exp 14212 df-fac 14425 df-hash 14482 df-cj 15275 df-re 15276 df-im 15277 df-sqrt 15411 df-abs 15412 df-clim 15664 df-prod 16082 df-dvds 16432 df-gcd 16674 df-prm 16856 |
| This theorem is used by: gausslemma2d 27710 |
| Copyright terms: Public domain | W3C validator |