Users' Mathboxes Mathbox for Alexander van der Vekens < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >   Mathboxes  >  sfprmdvdsmersenne Structured version   Visualization version   GIF version

Theorem sfprmdvdsmersenne 42072
Description: If 𝑄 is a safe prime (i.e. 𝑄 = ((2 · 𝑃) + 1) for a prime 𝑃) with 𝑄≡7 (mod 8), then 𝑄 divides the 𝑃-th Mersenne number MP. (Contributed by AV, 20-Aug-2021.)
Assertion
Ref Expression
sfprmdvdsmersenne ((𝑃 ∈ ℙ ∧ (𝑄 ∈ ℙ ∧ (𝑄 mod 8) = 7 ∧ 𝑄 = ((2 · 𝑃) + 1))) → 𝑄 ∥ ((2↑𝑃) − 1))

Proof of Theorem sfprmdvdsmersenne
Dummy variable 𝑚 is distinct from all other variables.
StepHypRef Expression
1 olc 884 . . . . . . 7 ((𝑄 mod 8) = 7 → ((𝑄 mod 8) = 1 ∨ (𝑄 mod 8) = 7))
2 ovex 6844 . . . . . . . 8 (𝑄 mod 8) ∈ V
3 elprg 4347 . . . . . . . 8 ((𝑄 mod 8) ∈ V → ((𝑄 mod 8) ∈ {1, 7} ↔ ((𝑄 mod 8) = 1 ∨ (𝑄 mod 8) = 7)))
42, 3mp1i 13 . . . . . . 7 ((𝑄 mod 8) = 7 → ((𝑄 mod 8) ∈ {1, 7} ↔ ((𝑄 mod 8) = 1 ∨ (𝑄 mod 8) = 7)))
51, 4mpbird 248 . . . . . 6 ((𝑄 mod 8) = 7 → (𝑄 mod 8) ∈ {1, 7})
6 2lgs 25374 . . . . . . . 8 (𝑄 ∈ ℙ → ((2 /L 𝑄) = 1 ↔ (𝑄 mod 8) ∈ {1, 7}))
76ad2antlr 707 . . . . . . 7 (((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) → ((2 /L 𝑄) = 1 ↔ (𝑄 mod 8) ∈ {1, 7}))
8 2z 11633 . . . . . . . . 9 2 ∈ ℤ
9 simpr 472 . . . . . . . . . . 11 ((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) → 𝑄 ∈ ℙ)
109adantr 467 . . . . . . . . . 10 (((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) → 𝑄 ∈ ℙ)
11 2re 11313 . . . . . . . . . . . 12 2 ∈ ℝ
1211a1i 11 . . . . . . . . . . 11 (((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) → 2 ∈ ℝ)
13 2m1e1 11359 . . . . . . . . . . . . . . 15 (2 − 1) = 1
1411a1i 11 . . . . . . . . . . . . . . . 16 (𝑃 ∈ ℙ → 2 ∈ ℝ)
15 prmnn 15616 . . . . . . . . . . . . . . . . 17 (𝑃 ∈ ℙ → 𝑃 ∈ ℕ)
1615nnred 11258 . . . . . . . . . . . . . . . 16 (𝑃 ∈ ℙ → 𝑃 ∈ ℝ)
17 1lt2 11418 . . . . . . . . . . . . . . . . 17 1 < 2
1817a1i 11 . . . . . . . . . . . . . . . 16 (𝑃 ∈ ℙ → 1 < 2)
19 prmgt1 15637 . . . . . . . . . . . . . . . 16 (𝑃 ∈ ℙ → 1 < 𝑃)
2014, 16, 18, 19mulgt1d 11183 . . . . . . . . . . . . . . 15 (𝑃 ∈ ℙ → 1 < (2 · 𝑃))
2113, 20syl5eqbr 4832 . . . . . . . . . . . . . 14 (𝑃 ∈ ℙ → (2 − 1) < (2 · 𝑃))
22 1red 10278 . . . . . . . . . . . . . . 15 (𝑃 ∈ ℙ → 1 ∈ ℝ)
23 2nn 11409 . . . . . . . . . . . . . . . . . 18 2 ∈ ℕ
2423a1i 11 . . . . . . . . . . . . . . . . 17 (𝑃 ∈ ℙ → 2 ∈ ℕ)
2524, 15nnmulcld 11291 . . . . . . . . . . . . . . . 16 (𝑃 ∈ ℙ → (2 · 𝑃) ∈ ℕ)
2625nnred 11258 . . . . . . . . . . . . . . 15 (𝑃 ∈ ℙ → (2 · 𝑃) ∈ ℝ)
2714, 22, 26ltsubaddd 10846 . . . . . . . . . . . . . 14 (𝑃 ∈ ℙ → ((2 − 1) < (2 · 𝑃) ↔ 2 < ((2 · 𝑃) + 1)))
2821, 27mpbid 223 . . . . . . . . . . . . 13 (𝑃 ∈ ℙ → 2 < ((2 · 𝑃) + 1))
2928ad2antrr 706 . . . . . . . . . . . 12 (((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) → 2 < ((2 · 𝑃) + 1))
30 breq2 4801 . . . . . . . . . . . . 13 (𝑄 = ((2 · 𝑃) + 1) → (2 < 𝑄 ↔ 2 < ((2 · 𝑃) + 1)))
3130adantl 468 . . . . . . . . . . . 12 (((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) → (2 < 𝑄 ↔ 2 < ((2 · 𝑃) + 1)))
3229, 31mpbird 248 . . . . . . . . . . 11 (((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) → 2 < 𝑄)
3312, 32gtned 10395 . . . . . . . . . 10 (((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) → 𝑄 ≠ 2)
34 eldifsn 4464 . . . . . . . . . 10 (𝑄 ∈ (ℙ ∖ {2}) ↔ (𝑄 ∈ ℙ ∧ 𝑄 ≠ 2))
3510, 33, 34sylanbrc 573 . . . . . . . . 9 (((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) → 𝑄 ∈ (ℙ ∖ {2}))
36 lgsqrmodndvds 25320 . . . . . . . . 9 ((2 ∈ ℤ ∧ 𝑄 ∈ (ℙ ∖ {2})) → ((2 /L 𝑄) = 1 → ∃𝑚 ∈ ℤ (((𝑚↑2) mod 𝑄) = (2 mod 𝑄) ∧ ¬ 𝑄𝑚)))
378, 35, 36sylancr 576 . . . . . . . 8 (((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) → ((2 /L 𝑄) = 1 → ∃𝑚 ∈ ℤ (((𝑚↑2) mod 𝑄) = (2 mod 𝑄) ∧ ¬ 𝑄𝑚)))
38 prmnn 15616 . . . . . . . . . . . . . . 15 (𝑄 ∈ ℙ → 𝑄 ∈ ℕ)
3938nncnd 11259 . . . . . . . . . . . . . 14 (𝑄 ∈ ℙ → 𝑄 ∈ ℂ)
4039adantl 468 . . . . . . . . . . . . 13 ((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) → 𝑄 ∈ ℂ)
41 1cnd 10279 . . . . . . . . . . . . 13 ((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) → 1 ∈ ℂ)
42 2cnd 11316 . . . . . . . . . . . . . . 15 (𝑃 ∈ ℙ → 2 ∈ ℂ)
4315nncnd 11259 . . . . . . . . . . . . . . 15 (𝑃 ∈ ℙ → 𝑃 ∈ ℂ)
4442, 43mulcld 10283 . . . . . . . . . . . . . 14 (𝑃 ∈ ℙ → (2 · 𝑃) ∈ ℂ)
4544adantr 467 . . . . . . . . . . . . 13 ((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) → (2 · 𝑃) ∈ ℂ)
4640, 41, 45subadd2d 10634 . . . . . . . . . . . 12 ((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) → ((𝑄 − 1) = (2 · 𝑃) ↔ ((2 · 𝑃) + 1) = 𝑄))
47 prmz 15617 . . . . . . . . . . . . . . . 16 (𝑄 ∈ ℙ → 𝑄 ∈ ℤ)
48 peano2zm 11644 . . . . . . . . . . . . . . . 16 (𝑄 ∈ ℤ → (𝑄 − 1) ∈ ℤ)
4947, 48syl 17 . . . . . . . . . . . . . . 15 (𝑄 ∈ ℙ → (𝑄 − 1) ∈ ℤ)
5049zcnd 11707 . . . . . . . . . . . . . 14 (𝑄 ∈ ℙ → (𝑄 − 1) ∈ ℂ)
5150adantl 468 . . . . . . . . . . . . 13 ((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) → (𝑄 − 1) ∈ ℂ)
5243adantr 467 . . . . . . . . . . . . 13 ((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) → 𝑃 ∈ ℂ)
53 2cnne0 11466 . . . . . . . . . . . . . 14 (2 ∈ ℂ ∧ 2 ≠ 0)
5453a1i 11 . . . . . . . . . . . . 13 ((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) → (2 ∈ ℂ ∧ 2 ≠ 0))
55 divmul2 10912 . . . . . . . . . . . . 13 (((𝑄 − 1) ∈ ℂ ∧ 𝑃 ∈ ℂ ∧ (2 ∈ ℂ ∧ 2 ≠ 0)) → (((𝑄 − 1) / 2) = 𝑃 ↔ (𝑄 − 1) = (2 · 𝑃)))
5651, 52, 54, 55syl3anc 1480 . . . . . . . . . . . 12 ((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) → (((𝑄 − 1) / 2) = 𝑃 ↔ (𝑄 − 1) = (2 · 𝑃)))
57 eqcom 2781 . . . . . . . . . . . . 13 (𝑄 = ((2 · 𝑃) + 1) ↔ ((2 · 𝑃) + 1) = 𝑄)
5857a1i 11 . . . . . . . . . . . 12 ((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) → (𝑄 = ((2 · 𝑃) + 1) ↔ ((2 · 𝑃) + 1) = 𝑄))
5946, 56, 583bitr4rd 302 . . . . . . . . . . 11 ((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) → (𝑄 = ((2 · 𝑃) + 1) ↔ ((𝑄 − 1) / 2) = 𝑃))
6059biimpa 463 . . . . . . . . . 10 (((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) → ((𝑄 − 1) / 2) = 𝑃)
61 oveq2 6820 . . . . . . . . . . 11 (((𝑄 − 1) / 2) = 𝑃 → (2↑((𝑄 − 1) / 2)) = (2↑𝑃))
62 zsqcl 13163 . . . . . . . . . . . . . . . . . . . . . 22 (𝑚 ∈ ℤ → (𝑚↑2) ∈ ℤ)
6362ad2antlr 707 . . . . . . . . . . . . . . . . . . . . 21 (((((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) ∧ 𝑚 ∈ ℤ) ∧ ((𝑚↑2) mod 𝑄) = (2 mod 𝑄)) → (𝑚↑2) ∈ ℤ)
648a1i 11 . . . . . . . . . . . . . . . . . . . . 21 (((((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) ∧ 𝑚 ∈ ℤ) ∧ ((𝑚↑2) mod 𝑄) = (2 mod 𝑄)) → 2 ∈ ℤ)
65 oveq1 6819 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 (𝑄 = ((2 · 𝑃) + 1) → (𝑄 − 1) = (((2 · 𝑃) + 1) − 1))
6665adantl 468 . . . . . . . . . . . . . . . . . . . . . . . . . 26 (((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) → (𝑄 − 1) = (((2 · 𝑃) + 1) − 1))
6766oveq1d 6827 . . . . . . . . . . . . . . . . . . . . . . . . 25 (((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) → ((𝑄 − 1) / 2) = ((((2 · 𝑃) + 1) − 1) / 2))
68 pncan1 10677 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 ((2 · 𝑃) ∈ ℂ → (((2 · 𝑃) + 1) − 1) = (2 · 𝑃))
6944, 68syl 17 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 (𝑃 ∈ ℙ → (((2 · 𝑃) + 1) − 1) = (2 · 𝑃))
7069oveq1d 6827 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 (𝑃 ∈ ℙ → ((((2 · 𝑃) + 1) − 1) / 2) = ((2 · 𝑃) / 2))
71 2ne0 11336 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 2 ≠ 0
7271a1i 11 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 (𝑃 ∈ ℙ → 2 ≠ 0)
7343, 42, 72divcan3d 11029 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 (𝑃 ∈ ℙ → ((2 · 𝑃) / 2) = 𝑃)
7470, 73eqtrd 2808 . . . . . . . . . . . . . . . . . . . . . . . . . 26 (𝑃 ∈ ℙ → ((((2 · 𝑃) + 1) − 1) / 2) = 𝑃)
7574ad2antrr 706 . . . . . . . . . . . . . . . . . . . . . . . . 25 (((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) → ((((2 · 𝑃) + 1) − 1) / 2) = 𝑃)
7667, 75eqtrd 2808 . . . . . . . . . . . . . . . . . . . . . . . 24 (((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) → ((𝑄 − 1) / 2) = 𝑃)
7715nnnn0d 11575 . . . . . . . . . . . . . . . . . . . . . . . . 25 (𝑃 ∈ ℙ → 𝑃 ∈ ℕ0)
7877ad2antrr 706 . . . . . . . . . . . . . . . . . . . . . . . 24 (((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) → 𝑃 ∈ ℕ0)
7976, 78eqeltrd 2853 . . . . . . . . . . . . . . . . . . . . . . 23 (((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) → ((𝑄 − 1) / 2) ∈ ℕ0)
8038nnrpd 12090 . . . . . . . . . . . . . . . . . . . . . . . 24 (𝑄 ∈ ℙ → 𝑄 ∈ ℝ+)
8180ad2antlr 707 . . . . . . . . . . . . . . . . . . . . . . 23 (((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) → 𝑄 ∈ ℝ+)
8279, 81jca 502 . . . . . . . . . . . . . . . . . . . . . 22 (((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) → (((𝑄 − 1) / 2) ∈ ℕ0𝑄 ∈ ℝ+))
8382ad2antrr 706 . . . . . . . . . . . . . . . . . . . . 21 (((((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) ∧ 𝑚 ∈ ℤ) ∧ ((𝑚↑2) mod 𝑄) = (2 mod 𝑄)) → (((𝑄 − 1) / 2) ∈ ℕ0𝑄 ∈ ℝ+))
84 simpr 472 . . . . . . . . . . . . . . . . . . . . 21 (((((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) ∧ 𝑚 ∈ ℤ) ∧ ((𝑚↑2) mod 𝑄) = (2 mod 𝑄)) → ((𝑚↑2) mod 𝑄) = (2 mod 𝑄))
85 modexp 13228 . . . . . . . . . . . . . . . . . . . . 21 ((((𝑚↑2) ∈ ℤ ∧ 2 ∈ ℤ) ∧ (((𝑄 − 1) / 2) ∈ ℕ0𝑄 ∈ ℝ+) ∧ ((𝑚↑2) mod 𝑄) = (2 mod 𝑄)) → (((𝑚↑2)↑((𝑄 − 1) / 2)) mod 𝑄) = ((2↑((𝑄 − 1) / 2)) mod 𝑄))
8663, 64, 83, 84, 85syl211anc 1485 . . . . . . . . . . . . . . . . . . . 20 (((((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) ∧ 𝑚 ∈ ℤ) ∧ ((𝑚↑2) mod 𝑄) = (2 mod 𝑄)) → (((𝑚↑2)↑((𝑄 − 1) / 2)) mod 𝑄) = ((2↑((𝑄 − 1) / 2)) mod 𝑄))
8786ex 398 . . . . . . . . . . . . . . . . . . 19 ((((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) ∧ 𝑚 ∈ ℤ) → (((𝑚↑2) mod 𝑄) = (2 mod 𝑄) → (((𝑚↑2)↑((𝑄 − 1) / 2)) mod 𝑄) = ((2↑((𝑄 − 1) / 2)) mod 𝑄)))
8887adantr 467 . . . . . . . . . . . . . . . . . 18 (((((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) ∧ 𝑚 ∈ ℤ) ∧ ¬ 𝑄𝑚) → (((𝑚↑2) mod 𝑄) = (2 mod 𝑄) → (((𝑚↑2)↑((𝑄 − 1) / 2)) mod 𝑄) = ((2↑((𝑄 − 1) / 2)) mod 𝑄)))
89 2cnd 11316 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 (𝑄 ∈ ℙ → 2 ∈ ℂ)
9071a1i 11 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 (𝑄 ∈ ℙ → 2 ≠ 0)
9150, 89, 90divcan2d 11026 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 (𝑄 ∈ ℙ → (2 · ((𝑄 − 1) / 2)) = (𝑄 − 1))
9291eqcomd 2780 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 (𝑄 ∈ ℙ → (𝑄 − 1) = (2 · ((𝑄 − 1) / 2)))
9392oveq2d 6828 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 (𝑄 ∈ ℙ → (𝑚↑(𝑄 − 1)) = (𝑚↑(2 · ((𝑄 − 1) / 2))))
9493ad3antlr 711 . . . . . . . . . . . . . . . . . . . . . . . . . 26 ((((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) ∧ 𝑚 ∈ ℤ) → (𝑚↑(𝑄 − 1)) = (𝑚↑(2 · ((𝑄 − 1) / 2))))
95 zcn 11606 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 (𝑚 ∈ ℤ → 𝑚 ∈ ℂ)
9695adantl 468 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 ((((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) ∧ 𝑚 ∈ ℤ) → 𝑚 ∈ ℂ)
9779adantr 467 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 ((((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) ∧ 𝑚 ∈ ℤ) → ((𝑄 − 1) / 2) ∈ ℕ0)
98 2nn0 11533 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 2 ∈ ℕ0
9998a1i 11 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 ((((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) ∧ 𝑚 ∈ ℤ) → 2 ∈ ℕ0)
10096, 97, 99expmuld 13240 . . . . . . . . . . . . . . . . . . . . . . . . . 26 ((((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) ∧ 𝑚 ∈ ℤ) → (𝑚↑(2 · ((𝑄 − 1) / 2))) = ((𝑚↑2)↑((𝑄 − 1) / 2)))
10194, 100eqtr2d 2809 . . . . . . . . . . . . . . . . . . . . . . . . 25 ((((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) ∧ 𝑚 ∈ ℤ) → ((𝑚↑2)↑((𝑄 − 1) / 2)) = (𝑚↑(𝑄 − 1)))
102101oveq1d 6827 . . . . . . . . . . . . . . . . . . . . . . . 24 ((((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) ∧ 𝑚 ∈ ℤ) → (((𝑚↑2)↑((𝑄 − 1) / 2)) mod 𝑄) = ((𝑚↑(𝑄 − 1)) mod 𝑄))
103102adantr 467 . . . . . . . . . . . . . . . . . . . . . . 23 (((((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) ∧ 𝑚 ∈ ℤ) ∧ ¬ 𝑄𝑚) → (((𝑚↑2)↑((𝑄 − 1) / 2)) mod 𝑄) = ((𝑚↑(𝑄 − 1)) mod 𝑄))
104 vfermltl 15733 . . . . . . . . . . . . . . . . . . . . . . . 24 ((𝑄 ∈ ℙ ∧ 𝑚 ∈ ℤ ∧ ¬ 𝑄𝑚) → ((𝑚↑(𝑄 − 1)) mod 𝑄) = 1)
105104ad5ant245 1460 . . . . . . . . . . . . . . . . . . . . . . 23 (((((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) ∧ 𝑚 ∈ ℤ) ∧ ¬ 𝑄𝑚) → ((𝑚↑(𝑄 − 1)) mod 𝑄) = 1)
106103, 105eqtrd 2808 . . . . . . . . . . . . . . . . . . . . . 22 (((((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) ∧ 𝑚 ∈ ℤ) ∧ ¬ 𝑄𝑚) → (((𝑚↑2)↑((𝑄 − 1) / 2)) mod 𝑄) = 1)
107 oveq1 6819 . . . . . . . . . . . . . . . . . . . . . 22 ((2↑((𝑄 − 1) / 2)) = (2↑𝑃) → ((2↑((𝑄 − 1) / 2)) mod 𝑄) = ((2↑𝑃) mod 𝑄))
108106, 107eqeqan12d 2790 . . . . . . . . . . . . . . . . . . . . 21 ((((((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) ∧ 𝑚 ∈ ℤ) ∧ ¬ 𝑄𝑚) ∧ (2↑((𝑄 − 1) / 2)) = (2↑𝑃)) → ((((𝑚↑2)↑((𝑄 − 1) / 2)) mod 𝑄) = ((2↑((𝑄 − 1) / 2)) mod 𝑄) ↔ 1 = ((2↑𝑃) mod 𝑄)))
109 id 22 . . . . . . . . . . . . . . . . . . . . . . . . . 26 (1 = ((2↑𝑃) mod 𝑄) → 1 = ((2↑𝑃) mod 𝑄))
110109eqcomd 2780 . . . . . . . . . . . . . . . . . . . . . . . . 25 (1 = ((2↑𝑃) mod 𝑄) → ((2↑𝑃) mod 𝑄) = 1)
11138nnred 11258 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 (𝑄 ∈ ℙ → 𝑄 ∈ ℝ)
112 prmgt1 15637 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 (𝑄 ∈ ℙ → 1 < 𝑄)
113 1mod 12932 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 ((𝑄 ∈ ℝ ∧ 1 < 𝑄) → (1 mod 𝑄) = 1)
114111, 112, 113syl2anc 574 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 (𝑄 ∈ ℙ → (1 mod 𝑄) = 1)
115114eqcomd 2780 . . . . . . . . . . . . . . . . . . . . . . . . . 26 (𝑄 ∈ ℙ → 1 = (1 mod 𝑄))
116115ad3antlr 711 . . . . . . . . . . . . . . . . . . . . . . . . 25 ((((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) ∧ 𝑚 ∈ ℤ) → 1 = (1 mod 𝑄))
117110, 116sylan9eqr 2830 . . . . . . . . . . . . . . . . . . . . . . . 24 (((((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) ∧ 𝑚 ∈ ℤ) ∧ 1 = ((2↑𝑃) mod 𝑄)) → ((2↑𝑃) mod 𝑄) = (1 mod 𝑄))
11838ad4antlr 715 . . . . . . . . . . . . . . . . . . . . . . . . 25 (((((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) ∧ 𝑚 ∈ ℤ) ∧ 1 = ((2↑𝑃) mod 𝑄)) → 𝑄 ∈ ℕ)
119 zexpcl 13104 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 ((2 ∈ ℤ ∧ 𝑃 ∈ ℕ0) → (2↑𝑃) ∈ ℤ)
1208, 77, 119sylancr 576 . . . . . . . . . . . . . . . . . . . . . . . . . 26 (𝑃 ∈ ℙ → (2↑𝑃) ∈ ℤ)
121120ad4antr 713 . . . . . . . . . . . . . . . . . . . . . . . . 25 (((((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) ∧ 𝑚 ∈ ℤ) ∧ 1 = ((2↑𝑃) mod 𝑄)) → (2↑𝑃) ∈ ℤ)
122 1zzd 11632 . . . . . . . . . . . . . . . . . . . . . . . . 25 (((((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) ∧ 𝑚 ∈ ℤ) ∧ 1 = ((2↑𝑃) mod 𝑄)) → 1 ∈ ℤ)
123 moddvds 15222 . . . . . . . . . . . . . . . . . . . . . . . . 25 ((𝑄 ∈ ℕ ∧ (2↑𝑃) ∈ ℤ ∧ 1 ∈ ℤ) → (((2↑𝑃) mod 𝑄) = (1 mod 𝑄) ↔ 𝑄 ∥ ((2↑𝑃) − 1)))
124118, 121, 122, 123syl3anc 1480 . . . . . . . . . . . . . . . . . . . . . . . 24 (((((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) ∧ 𝑚 ∈ ℤ) ∧ 1 = ((2↑𝑃) mod 𝑄)) → (((2↑𝑃) mod 𝑄) = (1 mod 𝑄) ↔ 𝑄 ∥ ((2↑𝑃) − 1)))
125117, 124mpbid 223 . . . . . . . . . . . . . . . . . . . . . . 23 (((((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) ∧ 𝑚 ∈ ℤ) ∧ 1 = ((2↑𝑃) mod 𝑄)) → 𝑄 ∥ ((2↑𝑃) − 1))
126125ex 398 . . . . . . . . . . . . . . . . . . . . . 22 ((((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) ∧ 𝑚 ∈ ℤ) → (1 = ((2↑𝑃) mod 𝑄) → 𝑄 ∥ ((2↑𝑃) − 1)))
127126ad2antrr 706 . . . . . . . . . . . . . . . . . . . . 21 ((((((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) ∧ 𝑚 ∈ ℤ) ∧ ¬ 𝑄𝑚) ∧ (2↑((𝑄 − 1) / 2)) = (2↑𝑃)) → (1 = ((2↑𝑃) mod 𝑄) → 𝑄 ∥ ((2↑𝑃) − 1)))
128108, 127sylbid 231 . . . . . . . . . . . . . . . . . . . 20 ((((((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) ∧ 𝑚 ∈ ℤ) ∧ ¬ 𝑄𝑚) ∧ (2↑((𝑄 − 1) / 2)) = (2↑𝑃)) → ((((𝑚↑2)↑((𝑄 − 1) / 2)) mod 𝑄) = ((2↑((𝑄 − 1) / 2)) mod 𝑄) → 𝑄 ∥ ((2↑𝑃) − 1)))
129128ex 398 . . . . . . . . . . . . . . . . . . 19 (((((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) ∧ 𝑚 ∈ ℤ) ∧ ¬ 𝑄𝑚) → ((2↑((𝑄 − 1) / 2)) = (2↑𝑃) → ((((𝑚↑2)↑((𝑄 − 1) / 2)) mod 𝑄) = ((2↑((𝑄 − 1) / 2)) mod 𝑄) → 𝑄 ∥ ((2↑𝑃) − 1))))
130129com23 86 . . . . . . . . . . . . . . . . . 18 (((((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) ∧ 𝑚 ∈ ℤ) ∧ ¬ 𝑄𝑚) → ((((𝑚↑2)↑((𝑄 − 1) / 2)) mod 𝑄) = ((2↑((𝑄 − 1) / 2)) mod 𝑄) → ((2↑((𝑄 − 1) / 2)) = (2↑𝑃) → 𝑄 ∥ ((2↑𝑃) − 1))))
13188, 130syld 47 . . . . . . . . . . . . . . . . 17 (((((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) ∧ 𝑚 ∈ ℤ) ∧ ¬ 𝑄𝑚) → (((𝑚↑2) mod 𝑄) = (2 mod 𝑄) → ((2↑((𝑄 − 1) / 2)) = (2↑𝑃) → 𝑄 ∥ ((2↑𝑃) − 1))))
132131ex 398 . . . . . . . . . . . . . . . 16 ((((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) ∧ 𝑚 ∈ ℤ) → (¬ 𝑄𝑚 → (((𝑚↑2) mod 𝑄) = (2 mod 𝑄) → ((2↑((𝑄 − 1) / 2)) = (2↑𝑃) → 𝑄 ∥ ((2↑𝑃) − 1)))))
133132com23 86 . . . . . . . . . . . . . . 15 ((((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) ∧ 𝑚 ∈ ℤ) → (((𝑚↑2) mod 𝑄) = (2 mod 𝑄) → (¬ 𝑄𝑚 → ((2↑((𝑄 − 1) / 2)) = (2↑𝑃) → 𝑄 ∥ ((2↑𝑃) − 1)))))
134133impd 397 . . . . . . . . . . . . . 14 ((((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) ∧ 𝑚 ∈ ℤ) → ((((𝑚↑2) mod 𝑄) = (2 mod 𝑄) ∧ ¬ 𝑄𝑚) → ((2↑((𝑄 − 1) / 2)) = (2↑𝑃) → 𝑄 ∥ ((2↑𝑃) − 1))))
135134com23 86 . . . . . . . . . . . . 13 ((((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) ∧ 𝑚 ∈ ℤ) → ((2↑((𝑄 − 1) / 2)) = (2↑𝑃) → ((((𝑚↑2) mod 𝑄) = (2 mod 𝑄) ∧ ¬ 𝑄𝑚) → 𝑄 ∥ ((2↑𝑃) − 1))))
136135ex 398 . . . . . . . . . . . 12 (((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) → (𝑚 ∈ ℤ → ((2↑((𝑄 − 1) / 2)) = (2↑𝑃) → ((((𝑚↑2) mod 𝑄) = (2 mod 𝑄) ∧ ¬ 𝑄𝑚) → 𝑄 ∥ ((2↑𝑃) − 1)))))
137136com23 86 . . . . . . . . . . 11 (((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) → ((2↑((𝑄 − 1) / 2)) = (2↑𝑃) → (𝑚 ∈ ℤ → ((((𝑚↑2) mod 𝑄) = (2 mod 𝑄) ∧ ¬ 𝑄𝑚) → 𝑄 ∥ ((2↑𝑃) − 1)))))
13861, 137syl5 34 . . . . . . . . . 10 (((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) → (((𝑄 − 1) / 2) = 𝑃 → (𝑚 ∈ ℤ → ((((𝑚↑2) mod 𝑄) = (2 mod 𝑄) ∧ ¬ 𝑄𝑚) → 𝑄 ∥ ((2↑𝑃) − 1)))))
13960, 138mpd 15 . . . . . . . . 9 (((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) → (𝑚 ∈ ℤ → ((((𝑚↑2) mod 𝑄) = (2 mod 𝑄) ∧ ¬ 𝑄𝑚) → 𝑄 ∥ ((2↑𝑃) − 1))))
140139rexlimdv 3182 . . . . . . . 8 (((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) → (∃𝑚 ∈ ℤ (((𝑚↑2) mod 𝑄) = (2 mod 𝑄) ∧ ¬ 𝑄𝑚) → 𝑄 ∥ ((2↑𝑃) − 1)))
14137, 140syld 47 . . . . . . 7 (((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) → ((2 /L 𝑄) = 1 → 𝑄 ∥ ((2↑𝑃) − 1)))
1427, 141sylbird 251 . . . . . 6 (((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) → ((𝑄 mod 8) ∈ {1, 7} → 𝑄 ∥ ((2↑𝑃) − 1)))
1435, 142syl5 34 . . . . 5 (((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) → ((𝑄 mod 8) = 7 → 𝑄 ∥ ((2↑𝑃) − 1)))
144143ex 398 . . . 4 ((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) → (𝑄 = ((2 · 𝑃) + 1) → ((𝑄 mod 8) = 7 → 𝑄 ∥ ((2↑𝑃) − 1))))
145144com23 86 . . 3 ((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) → ((𝑄 mod 8) = 7 → (𝑄 = ((2 · 𝑃) + 1) → 𝑄 ∥ ((2↑𝑃) − 1))))
146145ex 398 . 2 (𝑃 ∈ ℙ → (𝑄 ∈ ℙ → ((𝑄 mod 8) = 7 → (𝑄 = ((2 · 𝑃) + 1) → 𝑄 ∥ ((2↑𝑃) − 1)))))
1471463imp2 1448 1 ((𝑃 ∈ ℙ ∧ (𝑄 ∈ ℙ ∧ (𝑄 mod 8) = 7 ∧ 𝑄 = ((2 · 𝑃) + 1))) → 𝑄 ∥ ((2↑𝑃) − 1))
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wi 4  wb 197  wa 383  wo 863  w3a 1098   = wceq 1634  wcel 2148  wne 2946  wrex 3065  Vcvv 3355  cdif 3726  {csn 4326  {cpr 4328   class class class wbr 4797  (class class class)co 6812  cc 10157  cr 10158  0cc0 10159  1c1 10160   + caddc 10162   · cmul 10164   < clt 10297  cmin 10489   / cdiv 10907  cn 11243  2c2 11293  7c7 11298  8c8 11299  0cn0 11516  cz 11601  +crp 12052   mod cmo 12898  cexp 13089  cdvds 15211  cprime 15613   /L clgs 25261
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1873  ax-4 1888  ax-5 1994  ax-6 2060  ax-7 2096  ax-8 2150  ax-9 2157  ax-10 2177  ax-11 2193  ax-12 2206  ax-13 2411  ax-ext 2754  ax-rep 4917  ax-sep 4928  ax-nul 4936  ax-pow 4988  ax-pr 5048  ax-un 7117  ax-inf2 8723  ax-cnex 10215  ax-resscn 10216  ax-1cn 10217  ax-icn 10218  ax-addcl 10219  ax-addrcl 10220  ax-mulcl 10221  ax-mulrcl 10222  ax-mulcom 10223  ax-addass 10224  ax-mulass 10225  ax-distr 10226  ax-i2m1 10227  ax-1ne0 10228  ax-1rid 10229  ax-rnegex 10230  ax-rrecex 10231  ax-cnre 10232  ax-pre-lttri 10233  ax-pre-lttrn 10234  ax-pre-ltadd 10235  ax-pre-mulgt0 10236  ax-pre-sup 10237  ax-addf 10238  ax-mulf 10239
This theorem depends on definitions:  df-bi 198  df-an 384  df-or 864  df-3or 1099  df-3an 1100  df-tru 1637  df-fal 1640  df-ex 1856  df-nf 1861  df-sb 2053  df-eu 2625  df-mo 2626  df-clab 2761  df-cleq 2767  df-clel 2770  df-nfc 2905  df-ne 2947  df-nel 3050  df-ral 3069  df-rex 3070  df-reu 3071  df-rmo 3072  df-rab 3073  df-v 3357  df-sbc 3594  df-csb 3689  df-dif 3732  df-un 3734  df-in 3736  df-ss 3743  df-pss 3745  df-nul 4074  df-if 4236  df-pw 4309  df-sn 4327  df-pr 4329  df-tp 4331  df-op 4333  df-uni 4586  df-int 4623  df-iun 4667  df-iin 4668  df-br 4798  df-opab 4860  df-mpt 4877  df-tr 4900  df-id 5171  df-eprel 5176  df-po 5184  df-so 5185  df-fr 5222  df-se 5223  df-we 5224  df-xp 5269  df-rel 5270  df-cnv 5271  df-co 5272  df-dm 5273  df-rn 5274  df-res 5275  df-ima 5276  df-pred 5834  df-ord 5880  df-on 5881  df-lim 5882  df-suc 5883  df-iota 6005  df-fun 6044  df-fn 6045  df-f 6046  df-f1 6047  df-fo 6048  df-f1o 6049  df-fv 6050  df-isom 6051  df-riota 6773  df-ov 6815  df-oprab 6816  df-mpt2 6817  df-of 7065  df-ofr 7066  df-om 7234  df-1st 7336  df-2nd 7337  df-supp 7468  df-tpos 7525  df-wrecs 7580  df-recs 7642  df-rdg 7680  df-1o 7734  df-2o 7735  df-oadd 7738  df-er 7917  df-ec 7919  df-qs 7923  df-map 8032  df-pm 8033  df-ixp 8084  df-en 8131  df-dom 8132  df-sdom 8133  df-fin 8134  df-fsupp 8453  df-sup 8525  df-inf 8526  df-oi 8592  df-card 8986  df-cda 9213  df-pnf 10299  df-mnf 10300  df-xr 10301  df-ltxr 10302  df-le 10303  df-sub 10491  df-neg 10492  df-div 10908  df-nn 11244  df-2 11302  df-3 11303  df-4 11304  df-5 11305  df-6 11306  df-7 11307  df-8 11308  df-9 11309  df-n0 11517  df-xnn0 11588  df-z 11602  df-dec 11718  df-uz 11911  df-q 12014  df-rp 12053  df-ioo 12403  df-ico 12405  df-fz 12556  df-fzo 12696  df-fl 12823  df-mod 12899  df-seq 13031  df-exp 13090  df-fac 13287  df-hash 13344  df-cj 14069  df-re 14070  df-im 14071  df-sqrt 14205  df-abs 14206  df-clim 14449  df-prod 14865  df-dvds 15212  df-gcd 15446  df-prm 15614  df-phi 15698  df-pc 15769  df-struct 16086  df-ndx 16087  df-slot 16088  df-base 16090  df-sets 16091  df-ress 16092  df-plusg 16182  df-mulr 16183  df-starv 16184  df-sca 16185  df-vsca 16186  df-ip 16187  df-tset 16188  df-ple 16189  df-ds 16192  df-unif 16193  df-hom 16194  df-cco 16195  df-0g 16330  df-gsum 16331  df-prds 16336  df-pws 16338  df-imas 16396  df-qus 16397  df-mre 16474  df-mrc 16475  df-acs 16477  df-mgm 17470  df-sgrp 17512  df-mnd 17523  df-mhm 17563  df-submnd 17564  df-grp 17653  df-minusg 17654  df-sbg 17655  df-mulg 17769  df-subg 17819  df-nsg 17820  df-eqg 17821  df-ghm 17886  df-cntz 17977  df-cmn 18422  df-abl 18423  df-mgp 18718  df-ur 18730  df-srg 18734  df-ring 18777  df-cring 18778  df-oppr 18851  df-dvdsr 18869  df-unit 18870  df-invr 18900  df-dvr 18911  df-rnghom 18945  df-drng 18979  df-field 18980  df-subrg 19008  df-lmod 19095  df-lss 19163  df-lsp 19205  df-sra 19407  df-rgmod 19408  df-lidl 19409  df-rsp 19410  df-2idl 19467  df-nzr 19493  df-rlreg 19518  df-domn 19519  df-idom 19520  df-assa 19547  df-asp 19548  df-ascl 19549  df-psr 19591  df-mvr 19592  df-mpl 19593  df-opsr 19595  df-evls 19741  df-evl 19742  df-psr1 19785  df-vr1 19786  df-ply1 19787  df-coe1 19788  df-evl1 19916  df-cnfld 19982  df-zring 20054  df-zrh 20087  df-zn 20090  df-mdeg 24056  df-deg1 24057  df-mon1 24131  df-uc1p 24132  df-q1p 24133  df-r1p 24134  df-lgs 25262
This theorem is referenced by:  sgprmdvdsmersenne  42073
  Copyright terms: Public domain W3C validator