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 43775
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 864 . . . . . . 7 ((𝑄 mod 8) = 7 → ((𝑄 mod 8) = 1 ∨ (𝑄 mod 8) = 7))
2 ovex 7191 . . . . . . . 8 (𝑄 mod 8) ∈ V
3 elprg 4590 . . . . . . . 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 259 . . . . . 6 ((𝑄 mod 8) = 7 → (𝑄 mod 8) ∈ {1, 7})
6 2lgs 25985 . . . . . . . 8 (𝑄 ∈ ℙ → ((2 /L 𝑄) = 1 ↔ (𝑄 mod 8) ∈ {1, 7}))
76ad2antlr 725 . . . . . . 7 (((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) → ((2 /L 𝑄) = 1 ↔ (𝑄 mod 8) ∈ {1, 7}))
8 2z 12017 . . . . . . . . 9 2 ∈ ℤ
9 simpr 487 . . . . . . . . . . 11 ((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) → 𝑄 ∈ ℙ)
109adantr 483 . . . . . . . . . 10 (((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) → 𝑄 ∈ ℙ)
11 2re 11714 . . . . . . . . . . . 12 2 ∈ ℝ
1211a1i 11 . . . . . . . . . . 11 (((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) → 2 ∈ ℝ)
13 2m1e1 11766 . . . . . . . . . . . . . . 15 (2 − 1) = 1
1411a1i 11 . . . . . . . . . . . . . . . 16 (𝑃 ∈ ℙ → 2 ∈ ℝ)
15 prmnn 16020 . . . . . . . . . . . . . . . . 17 (𝑃 ∈ ℙ → 𝑃 ∈ ℕ)
1615nnred 11655 . . . . . . . . . . . . . . . 16 (𝑃 ∈ ℙ → 𝑃 ∈ ℝ)
17 1lt2 11811 . . . . . . . . . . . . . . . . 17 1 < 2
1817a1i 11 . . . . . . . . . . . . . . . 16 (𝑃 ∈ ℙ → 1 < 2)
19 prmgt1 16043 . . . . . . . . . . . . . . . 16 (𝑃 ∈ ℙ → 1 < 𝑃)
2014, 16, 18, 19mulgt1d 11578 . . . . . . . . . . . . . . 15 (𝑃 ∈ ℙ → 1 < (2 · 𝑃))
2113, 20eqbrtrid 5103 . . . . . . . . . . . . . 14 (𝑃 ∈ ℙ → (2 − 1) < (2 · 𝑃))
22 1red 10644 . . . . . . . . . . . . . . 15 (𝑃 ∈ ℙ → 1 ∈ ℝ)
23 2nn 11713 . . . . . . . . . . . . . . . . . 18 2 ∈ ℕ
2423a1i 11 . . . . . . . . . . . . . . . . 17 (𝑃 ∈ ℙ → 2 ∈ ℕ)
2524, 15nnmulcld 11693 . . . . . . . . . . . . . . . 16 (𝑃 ∈ ℙ → (2 · 𝑃) ∈ ℕ)
2625nnred 11655 . . . . . . . . . . . . . . 15 (𝑃 ∈ ℙ → (2 · 𝑃) ∈ ℝ)
2714, 22, 26ltsubaddd 11238 . . . . . . . . . . . . . 14 (𝑃 ∈ ℙ → ((2 − 1) < (2 · 𝑃) ↔ 2 < ((2 · 𝑃) + 1)))
2821, 27mpbid 234 . . . . . . . . . . . . 13 (𝑃 ∈ ℙ → 2 < ((2 · 𝑃) + 1))
2928ad2antrr 724 . . . . . . . . . . . 12 (((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) → 2 < ((2 · 𝑃) + 1))
30 breq2 5072 . . . . . . . . . . . . 13 (𝑄 = ((2 · 𝑃) + 1) → (2 < 𝑄 ↔ 2 < ((2 · 𝑃) + 1)))
3130adantl 484 . . . . . . . . . . . 12 (((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) → (2 < 𝑄 ↔ 2 < ((2 · 𝑃) + 1)))
3229, 31mpbird 259 . . . . . . . . . . 11 (((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) → 2 < 𝑄)
3312, 32gtned 10777 . . . . . . . . . 10 (((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) → 𝑄 ≠ 2)
34 eldifsn 4721 . . . . . . . . . 10 (𝑄 ∈ (ℙ ∖ {2}) ↔ (𝑄 ∈ ℙ ∧ 𝑄 ≠ 2))
3510, 33, 34sylanbrc 585 . . . . . . . . 9 (((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) → 𝑄 ∈ (ℙ ∖ {2}))
36 lgsqrmodndvds 25931 . . . . . . . . 9 ((2 ∈ ℤ ∧ 𝑄 ∈ (ℙ ∖ {2})) → ((2 /L 𝑄) = 1 → ∃𝑚 ∈ ℤ (((𝑚↑2) mod 𝑄) = (2 mod 𝑄) ∧ ¬ 𝑄𝑚)))
378, 35, 36sylancr 589 . . . . . . . 8 (((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) → ((2 /L 𝑄) = 1 → ∃𝑚 ∈ ℤ (((𝑚↑2) mod 𝑄) = (2 mod 𝑄) ∧ ¬ 𝑄𝑚)))
38 prmnn 16020 . . . . . . . . . . . . . . 15 (𝑄 ∈ ℙ → 𝑄 ∈ ℕ)
3938nncnd 11656 . . . . . . . . . . . . . 14 (𝑄 ∈ ℙ → 𝑄 ∈ ℂ)
4039adantl 484 . . . . . . . . . . . . 13 ((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) → 𝑄 ∈ ℂ)
41 1cnd 10638 . . . . . . . . . . . . 13 ((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) → 1 ∈ ℂ)
42 2cnd 11718 . . . . . . . . . . . . . . 15 (𝑃 ∈ ℙ → 2 ∈ ℂ)
4315nncnd 11656 . . . . . . . . . . . . . . 15 (𝑃 ∈ ℙ → 𝑃 ∈ ℂ)
4442, 43mulcld 10663 . . . . . . . . . . . . . 14 (𝑃 ∈ ℙ → (2 · 𝑃) ∈ ℂ)
4544adantr 483 . . . . . . . . . . . . 13 ((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) → (2 · 𝑃) ∈ ℂ)
4640, 41, 45subadd2d 11018 . . . . . . . . . . . 12 ((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) → ((𝑄 − 1) = (2 · 𝑃) ↔ ((2 · 𝑃) + 1) = 𝑄))
47 prmz 16021 . . . . . . . . . . . . . . . 16 (𝑄 ∈ ℙ → 𝑄 ∈ ℤ)
48 peano2zm 12028 . . . . . . . . . . . . . . . 16 (𝑄 ∈ ℤ → (𝑄 − 1) ∈ ℤ)
4947, 48syl 17 . . . . . . . . . . . . . . 15 (𝑄 ∈ ℙ → (𝑄 − 1) ∈ ℤ)
5049zcnd 12091 . . . . . . . . . . . . . 14 (𝑄 ∈ ℙ → (𝑄 − 1) ∈ ℂ)
5150adantl 484 . . . . . . . . . . . . 13 ((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) → (𝑄 − 1) ∈ ℂ)
5243adantr 483 . . . . . . . . . . . . 13 ((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) → 𝑃 ∈ ℂ)
53 2cnne0 11850 . . . . . . . . . . . . . 14 (2 ∈ ℂ ∧ 2 ≠ 0)
5453a1i 11 . . . . . . . . . . . . 13 ((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) → (2 ∈ ℂ ∧ 2 ≠ 0))
55 divmul2 11304 . . . . . . . . . . . . 13 (((𝑄 − 1) ∈ ℂ ∧ 𝑃 ∈ ℂ ∧ (2 ∈ ℂ ∧ 2 ≠ 0)) → (((𝑄 − 1) / 2) = 𝑃 ↔ (𝑄 − 1) = (2 · 𝑃)))
5651, 52, 54, 55syl3anc 1367 . . . . . . . . . . . 12 ((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) → (((𝑄 − 1) / 2) = 𝑃 ↔ (𝑄 − 1) = (2 · 𝑃)))
57 eqcom 2830 . . . . . . . . . . . . 13 (𝑄 = ((2 · 𝑃) + 1) ↔ ((2 · 𝑃) + 1) = 𝑄)
5857a1i 11 . . . . . . . . . . . 12 ((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) → (𝑄 = ((2 · 𝑃) + 1) ↔ ((2 · 𝑃) + 1) = 𝑄))
5946, 56, 583bitr4rd 314 . . . . . . . . . . 11 ((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) → (𝑄 = ((2 · 𝑃) + 1) ↔ ((𝑄 − 1) / 2) = 𝑃))
6059biimpa 479 . . . . . . . . . 10 (((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) → ((𝑄 − 1) / 2) = 𝑃)
61 oveq2 7166 . . . . . . . . . . 11 (((𝑄 − 1) / 2) = 𝑃 → (2↑((𝑄 − 1) / 2)) = (2↑𝑃))
62 zsqcl 13497 . . . . . . . . . . . . . . . . . . . . . 22 (𝑚 ∈ ℤ → (𝑚↑2) ∈ ℤ)
6362ad2antlr 725 . . . . . . . . . . . . . . . . . . . . 21 (((((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) ∧ 𝑚 ∈ ℤ) ∧ ((𝑚↑2) mod 𝑄) = (2 mod 𝑄)) → (𝑚↑2) ∈ ℤ)
648a1i 11 . . . . . . . . . . . . . . . . . . . . 21 (((((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) ∧ 𝑚 ∈ ℤ) ∧ ((𝑚↑2) mod 𝑄) = (2 mod 𝑄)) → 2 ∈ ℤ)
65 oveq1 7165 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 (𝑄 = ((2 · 𝑃) + 1) → (𝑄 − 1) = (((2 · 𝑃) + 1) − 1))
6665adantl 484 . . . . . . . . . . . . . . . . . . . . . . . . . 26 (((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) → (𝑄 − 1) = (((2 · 𝑃) + 1) − 1))
6766oveq1d 7173 . . . . . . . . . . . . . . . . . . . . . . . . 25 (((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) → ((𝑄 − 1) / 2) = ((((2 · 𝑃) + 1) − 1) / 2))
68 pncan1 11066 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 ((2 · 𝑃) ∈ ℂ → (((2 · 𝑃) + 1) − 1) = (2 · 𝑃))
6944, 68syl 17 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 (𝑃 ∈ ℙ → (((2 · 𝑃) + 1) − 1) = (2 · 𝑃))
7069oveq1d 7173 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 (𝑃 ∈ ℙ → ((((2 · 𝑃) + 1) − 1) / 2) = ((2 · 𝑃) / 2))
71 2ne0 11744 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 2 ≠ 0
7271a1i 11 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 (𝑃 ∈ ℙ → 2 ≠ 0)
7343, 42, 72divcan3d 11423 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 (𝑃 ∈ ℙ → ((2 · 𝑃) / 2) = 𝑃)
7470, 73eqtrd 2858 . . . . . . . . . . . . . . . . . . . . . . . . . 26 (𝑃 ∈ ℙ → ((((2 · 𝑃) + 1) − 1) / 2) = 𝑃)
7574ad2antrr 724 . . . . . . . . . . . . . . . . . . . . . . . . 25 (((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) → ((((2 · 𝑃) + 1) − 1) / 2) = 𝑃)
7667, 75eqtrd 2858 . . . . . . . . . . . . . . . . . . . . . . . 24 (((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) → ((𝑄 − 1) / 2) = 𝑃)
7715nnnn0d 11958 . . . . . . . . . . . . . . . . . . . . . . . . 25 (𝑃 ∈ ℙ → 𝑃 ∈ ℕ0)
7877ad2antrr 724 . . . . . . . . . . . . . . . . . . . . . . . 24 (((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) → 𝑃 ∈ ℕ0)
7976, 78eqeltrd 2915 . . . . . . . . . . . . . . . . . . . . . . 23 (((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) → ((𝑄 − 1) / 2) ∈ ℕ0)
8038nnrpd 12432 . . . . . . . . . . . . . . . . . . . . . . . 24 (𝑄 ∈ ℙ → 𝑄 ∈ ℝ+)
8180ad2antlr 725 . . . . . . . . . . . . . . . . . . . . . . 23 (((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) → 𝑄 ∈ ℝ+)
8279, 81jca 514 . . . . . . . . . . . . . . . . . . . . . 22 (((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) → (((𝑄 − 1) / 2) ∈ ℕ0𝑄 ∈ ℝ+))
8382ad2antrr 724 . . . . . . . . . . . . . . . . . . . . 21 (((((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) ∧ 𝑚 ∈ ℤ) ∧ ((𝑚↑2) mod 𝑄) = (2 mod 𝑄)) → (((𝑄 − 1) / 2) ∈ ℕ0𝑄 ∈ ℝ+))
84 simpr 487 . . . . . . . . . . . . . . . . . . . . 21 (((((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) ∧ 𝑚 ∈ ℤ) ∧ ((𝑚↑2) mod 𝑄) = (2 mod 𝑄)) → ((𝑚↑2) mod 𝑄) = (2 mod 𝑄))
85 modexp 13602 . . . . . . . . . . . . . . . . . . . . 21 ((((𝑚↑2) ∈ ℤ ∧ 2 ∈ ℤ) ∧ (((𝑄 − 1) / 2) ∈ ℕ0𝑄 ∈ ℝ+) ∧ ((𝑚↑2) mod 𝑄) = (2 mod 𝑄)) → (((𝑚↑2)↑((𝑄 − 1) / 2)) mod 𝑄) = ((2↑((𝑄 − 1) / 2)) mod 𝑄))
8663, 64, 83, 84, 85syl211anc 1372 . . . . . . . . . . . . . . . . . . . 20 (((((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) ∧ 𝑚 ∈ ℤ) ∧ ((𝑚↑2) mod 𝑄) = (2 mod 𝑄)) → (((𝑚↑2)↑((𝑄 − 1) / 2)) mod 𝑄) = ((2↑((𝑄 − 1) / 2)) mod 𝑄))
8786ex 415 . . . . . . . . . . . . . . . . . . 19 ((((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) ∧ 𝑚 ∈ ℤ) → (((𝑚↑2) mod 𝑄) = (2 mod 𝑄) → (((𝑚↑2)↑((𝑄 − 1) / 2)) mod 𝑄) = ((2↑((𝑄 − 1) / 2)) mod 𝑄)))
8887adantr 483 . . . . . . . . . . . . . . . . . 18 (((((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) ∧ 𝑚 ∈ ℤ) ∧ ¬ 𝑄𝑚) → (((𝑚↑2) mod 𝑄) = (2 mod 𝑄) → (((𝑚↑2)↑((𝑄 − 1) / 2)) mod 𝑄) = ((2↑((𝑄 − 1) / 2)) mod 𝑄)))
89 2cnd 11718 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 (𝑄 ∈ ℙ → 2 ∈ ℂ)
9071a1i 11 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 (𝑄 ∈ ℙ → 2 ≠ 0)
9150, 89, 90divcan2d 11420 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 (𝑄 ∈ ℙ → (2 · ((𝑄 − 1) / 2)) = (𝑄 − 1))
9291eqcomd 2829 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 (𝑄 ∈ ℙ → (𝑄 − 1) = (2 · ((𝑄 − 1) / 2)))
9392oveq2d 7174 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 (𝑄 ∈ ℙ → (𝑚↑(𝑄 − 1)) = (𝑚↑(2 · ((𝑄 − 1) / 2))))
9493ad3antlr 729 . . . . . . . . . . . . . . . . . . . . . . . . . 26 ((((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) ∧ 𝑚 ∈ ℤ) → (𝑚↑(𝑄 − 1)) = (𝑚↑(2 · ((𝑄 − 1) / 2))))
95 zcn 11989 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 (𝑚 ∈ ℤ → 𝑚 ∈ ℂ)
9695adantl 484 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 ((((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) ∧ 𝑚 ∈ ℤ) → 𝑚 ∈ ℂ)
9779adantr 483 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 ((((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) ∧ 𝑚 ∈ ℤ) → ((𝑄 − 1) / 2) ∈ ℕ0)
98 2nn0 11917 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 2 ∈ ℕ0
9998a1i 11 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 ((((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) ∧ 𝑚 ∈ ℤ) → 2 ∈ ℕ0)
10096, 97, 99expmuld 13516 . . . . . . . . . . . . . . . . . . . . . . . . . 26 ((((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) ∧ 𝑚 ∈ ℤ) → (𝑚↑(2 · ((𝑄 − 1) / 2))) = ((𝑚↑2)↑((𝑄 − 1) / 2)))
10194, 100eqtr2d 2859 . . . . . . . . . . . . . . . . . . . . . . . . 25 ((((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) ∧ 𝑚 ∈ ℤ) → ((𝑚↑2)↑((𝑄 − 1) / 2)) = (𝑚↑(𝑄 − 1)))
102101oveq1d 7173 . . . . . . . . . . . . . . . . . . . . . . . 24 ((((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) ∧ 𝑚 ∈ ℤ) → (((𝑚↑2)↑((𝑄 − 1) / 2)) mod 𝑄) = ((𝑚↑(𝑄 − 1)) mod 𝑄))
103102adantr 483 . . . . . . . . . . . . . . . . . . . . . . 23 (((((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) ∧ 𝑚 ∈ ℤ) ∧ ¬ 𝑄𝑚) → (((𝑚↑2)↑((𝑄 − 1) / 2)) mod 𝑄) = ((𝑚↑(𝑄 − 1)) mod 𝑄))
104 vfermltl 16140 . . . . . . . . . . . . . . . . . . . . . . . 24 ((𝑄 ∈ ℙ ∧ 𝑚 ∈ ℤ ∧ ¬ 𝑄𝑚) → ((𝑚↑(𝑄 − 1)) mod 𝑄) = 1)
105104ad5ant245 1357 . . . . . . . . . . . . . . . . . . . . . . 23 (((((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) ∧ 𝑚 ∈ ℤ) ∧ ¬ 𝑄𝑚) → ((𝑚↑(𝑄 − 1)) mod 𝑄) = 1)
106103, 105eqtrd 2858 . . . . . . . . . . . . . . . . . . . . . 22 (((((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) ∧ 𝑚 ∈ ℤ) ∧ ¬ 𝑄𝑚) → (((𝑚↑2)↑((𝑄 − 1) / 2)) mod 𝑄) = 1)
107 oveq1 7165 . . . . . . . . . . . . . . . . . . . . . 22 ((2↑((𝑄 − 1) / 2)) = (2↑𝑃) → ((2↑((𝑄 − 1) / 2)) mod 𝑄) = ((2↑𝑃) mod 𝑄))
108106, 107eqeqan12d 2840 . . . . . . . . . . . . . . . . . . . . 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 2829 . . . . . . . . . . . . . . . . . . . . . . . . 25 (1 = ((2↑𝑃) mod 𝑄) → ((2↑𝑃) mod 𝑄) = 1)
11138nnred 11655 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 (𝑄 ∈ ℙ → 𝑄 ∈ ℝ)
112 prmgt1 16043 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 (𝑄 ∈ ℙ → 1 < 𝑄)
113 1mod 13274 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 ((𝑄 ∈ ℝ ∧ 1 < 𝑄) → (1 mod 𝑄) = 1)
114111, 112, 113syl2anc 586 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 (𝑄 ∈ ℙ → (1 mod 𝑄) = 1)
115114eqcomd 2829 . . . . . . . . . . . . . . . . . . . . . . . . . 26 (𝑄 ∈ ℙ → 1 = (1 mod 𝑄))
116115ad3antlr 729 . . . . . . . . . . . . . . . . . . . . . . . . 25 ((((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) ∧ 𝑚 ∈ ℤ) → 1 = (1 mod 𝑄))
117110, 116sylan9eqr 2880 . . . . . . . . . . . . . . . . . . . . . . . 24 (((((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) ∧ 𝑚 ∈ ℤ) ∧ 1 = ((2↑𝑃) mod 𝑄)) → ((2↑𝑃) mod 𝑄) = (1 mod 𝑄))
11838ad4antlr 731 . . . . . . . . . . . . . . . . . . . . . . . . 25 (((((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) ∧ 𝑚 ∈ ℤ) ∧ 1 = ((2↑𝑃) mod 𝑄)) → 𝑄 ∈ ℕ)
119 zexpcl 13447 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 ((2 ∈ ℤ ∧ 𝑃 ∈ ℕ0) → (2↑𝑃) ∈ ℤ)
1208, 77, 119sylancr 589 . . . . . . . . . . . . . . . . . . . . . . . . . 26 (𝑃 ∈ ℙ → (2↑𝑃) ∈ ℤ)
121120ad4antr 730 . . . . . . . . . . . . . . . . . . . . . . . . 25 (((((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) ∧ 𝑚 ∈ ℤ) ∧ 1 = ((2↑𝑃) mod 𝑄)) → (2↑𝑃) ∈ ℤ)
122 1zzd 12016 . . . . . . . . . . . . . . . . . . . . . . . . 25 (((((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) ∧ 𝑚 ∈ ℤ) ∧ 1 = ((2↑𝑃) mod 𝑄)) → 1 ∈ ℤ)
123 moddvds 15620 . . . . . . . . . . . . . . . . . . . . . . . . 25 ((𝑄 ∈ ℕ ∧ (2↑𝑃) ∈ ℤ ∧ 1 ∈ ℤ) → (((2↑𝑃) mod 𝑄) = (1 mod 𝑄) ↔ 𝑄 ∥ ((2↑𝑃) − 1)))
124118, 121, 122, 123syl3anc 1367 . . . . . . . . . . . . . . . . . . . . . . . 24 (((((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) ∧ 𝑚 ∈ ℤ) ∧ 1 = ((2↑𝑃) mod 𝑄)) → (((2↑𝑃) mod 𝑄) = (1 mod 𝑄) ↔ 𝑄 ∥ ((2↑𝑃) − 1)))
125117, 124mpbid 234 . . . . . . . . . . . . . . . . . . . . . . 23 (((((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) ∧ 𝑚 ∈ ℤ) ∧ 1 = ((2↑𝑃) mod 𝑄)) → 𝑄 ∥ ((2↑𝑃) − 1))
126125ex 415 . . . . . . . . . . . . . . . . . . . . . 22 ((((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) ∧ 𝑚 ∈ ℤ) → (1 = ((2↑𝑃) mod 𝑄) → 𝑄 ∥ ((2↑𝑃) − 1)))
127126ad2antrr 724 . . . . . . . . . . . . . . . . . . . . 21 ((((((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) ∧ 𝑚 ∈ ℤ) ∧ ¬ 𝑄𝑚) ∧ (2↑((𝑄 − 1) / 2)) = (2↑𝑃)) → (1 = ((2↑𝑃) mod 𝑄) → 𝑄 ∥ ((2↑𝑃) − 1)))
128108, 127sylbid 242 . . . . . . . . . . . . . . . . . . . 20 ((((((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) ∧ 𝑚 ∈ ℤ) ∧ ¬ 𝑄𝑚) ∧ (2↑((𝑄 − 1) / 2)) = (2↑𝑃)) → ((((𝑚↑2)↑((𝑄 − 1) / 2)) mod 𝑄) = ((2↑((𝑄 − 1) / 2)) mod 𝑄) → 𝑄 ∥ ((2↑𝑃) − 1)))
129128ex 415 . . . . . . . . . . . . . . . . . . 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 415 . . . . . . . . . . . . . . . 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 413 . . . . . . . . . . . . . 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 415 . . . . . . . . . . . 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 3285 . . . . . . . 8 (((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) → (∃𝑚 ∈ ℤ (((𝑚↑2) mod 𝑄) = (2 mod 𝑄) ∧ ¬ 𝑄𝑚) → 𝑄 ∥ ((2↑𝑃) − 1)))
14137, 140syld 47 . . . . . . 7 (((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) → ((2 /L 𝑄) = 1 → 𝑄 ∥ ((2↑𝑃) − 1)))
1427, 141sylbird 262 . . . . . 6 (((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) → ((𝑄 mod 8) ∈ {1, 7} → 𝑄 ∥ ((2↑𝑃) − 1)))
1435, 142syl5 34 . . . . 5 (((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) ∧ 𝑄 = ((2 · 𝑃) + 1)) → ((𝑄 mod 8) = 7 → 𝑄 ∥ ((2↑𝑃) − 1)))
144143ex 415 . . . 4 ((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) → (𝑄 = ((2 · 𝑃) + 1) → ((𝑄 mod 8) = 7 → 𝑄 ∥ ((2↑𝑃) − 1))))
145144com23 86 . . 3 ((𝑃 ∈ ℙ ∧ 𝑄 ∈ ℙ) → ((𝑄 mod 8) = 7 → (𝑄 = ((2 · 𝑃) + 1) → 𝑄 ∥ ((2↑𝑃) − 1))))
146145ex 415 . 2 (𝑃 ∈ ℙ → (𝑄 ∈ ℙ → ((𝑄 mod 8) = 7 → (𝑄 = ((2 · 𝑃) + 1) → 𝑄 ∥ ((2↑𝑃) − 1)))))
1471463imp2 1345 1 ((𝑃 ∈ ℙ ∧ (𝑄 ∈ ℙ ∧ (𝑄 mod 8) = 7 ∧ 𝑄 = ((2 · 𝑃) + 1))) → 𝑄 ∥ ((2↑𝑃) − 1))
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wi 4  wb 208  wa 398  wo 843  w3a 1083   = wceq 1537  wcel 2114  wne 3018  wrex 3141  Vcvv 3496  cdif 3935  {csn 4569  {cpr 4571   class class class wbr 5068  (class class class)co 7158  cc 10537  cr 10538  0cc0 10539  1c1 10540   + caddc 10542   · cmul 10544   < clt 10677  cmin 10872   / cdiv 11299  cn 11640  2c2 11695  7c7 11700  8c8 11701  0cn0 11900  cz 11984  +crp 12392   mod cmo 13240  cexp 13432  cdvds 15609  cprime 16017   /L clgs 25872
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1796  ax-4 1810  ax-5 1911  ax-6 1970  ax-7 2015  ax-8 2116  ax-9 2124  ax-10 2145  ax-11 2161  ax-12 2177  ax-ext 2795  ax-rep 5192  ax-sep 5205  ax-nul 5212  ax-pow 5268  ax-pr 5332  ax-un 7463  ax-inf2 9106  ax-cnex 10595  ax-resscn 10596  ax-1cn 10597  ax-icn 10598  ax-addcl 10599  ax-addrcl 10600  ax-mulcl 10601  ax-mulrcl 10602  ax-mulcom 10603  ax-addass 10604  ax-mulass 10605  ax-distr 10606  ax-i2m1 10607  ax-1ne0 10608  ax-1rid 10609  ax-rnegex 10610  ax-rrecex 10611  ax-cnre 10612  ax-pre-lttri 10613  ax-pre-lttrn 10614  ax-pre-ltadd 10615  ax-pre-mulgt0 10616  ax-pre-sup 10617  ax-addf 10618  ax-mulf 10619
This theorem depends on definitions:  df-bi 209  df-an 399  df-or 844  df-3or 1084  df-3an 1085  df-tru 1540  df-fal 1550  df-ex 1781  df-nf 1785  df-sb 2070  df-mo 2622  df-eu 2654  df-clab 2802  df-cleq 2816  df-clel 2895  df-nfc 2965  df-ne 3019  df-nel 3126  df-ral 3145  df-rex 3146  df-reu 3147  df-rmo 3148  df-rab 3149  df-v 3498  df-sbc 3775  df-csb 3886  df-dif 3941  df-un 3943  df-in 3945  df-ss 3954  df-pss 3956  df-nul 4294  df-if 4470  df-pw 4543  df-sn 4570  df-pr 4572  df-tp 4574  df-op 4576  df-uni 4841  df-int 4879  df-iun 4923  df-iin 4924  df-br 5069  df-opab 5131  df-mpt 5149  df-tr 5175  df-id 5462  df-eprel 5467  df-po 5476  df-so 5477  df-fr 5516  df-se 5517  df-we 5518  df-xp 5563  df-rel 5564  df-cnv 5565  df-co 5566  df-dm 5567  df-rn 5568  df-res 5569  df-ima 5570  df-pred 6150  df-ord 6196  df-on 6197  df-lim 6198  df-suc 6199  df-iota 6316  df-fun 6359  df-fn 6360  df-f 6361  df-f1 6362  df-fo 6363  df-f1o 6364  df-fv 6365  df-isom 6366  df-riota 7116  df-ov 7161  df-oprab 7162  df-mpo 7163  df-of 7411  df-ofr 7412  df-om 7583  df-1st 7691  df-2nd 7692  df-supp 7833  df-tpos 7894  df-wrecs 7949  df-recs 8010  df-rdg 8048  df-1o 8104  df-2o 8105  df-oadd 8108  df-er 8291  df-ec 8293  df-qs 8297  df-map 8410  df-pm 8411  df-ixp 8464  df-en 8512  df-dom 8513  df-sdom 8514  df-fin 8515  df-fsupp 8836  df-sup 8908  df-inf 8909  df-oi 8976  df-dju 9332  df-card 9370  df-pnf 10679  df-mnf 10680  df-xr 10681  df-ltxr 10682  df-le 10683  df-sub 10874  df-neg 10875  df-div 11300  df-nn 11641  df-2 11703  df-3 11704  df-4 11705  df-5 11706  df-6 11707  df-7 11708  df-8 11709  df-9 11710  df-n0 11901  df-xnn0 11971  df-z 11985  df-dec 12102  df-uz 12247  df-q 12352  df-rp 12393  df-ioo 12745  df-ico 12747  df-fz 12896  df-fzo 13037  df-fl 13165  df-mod 13241  df-seq 13373  df-exp 13433  df-fac 13637  df-hash 13694  df-cj 14460  df-re 14461  df-im 14462  df-sqrt 14596  df-abs 14597  df-clim 14847  df-prod 15262  df-dvds 15610  df-gcd 15846  df-prm 16018  df-phi 16105  df-pc 16176  df-struct 16487  df-ndx 16488  df-slot 16489  df-base 16491  df-sets 16492  df-ress 16493  df-plusg 16580  df-mulr 16581  df-starv 16582  df-sca 16583  df-vsca 16584  df-ip 16585  df-tset 16586  df-ple 16587  df-ds 16589  df-unif 16590  df-hom 16591  df-cco 16592  df-0g 16717  df-gsum 16718  df-prds 16723  df-pws 16725  df-imas 16783  df-qus 16784  df-mre 16859  df-mrc 16860  df-acs 16862  df-mgm 17854  df-sgrp 17903  df-mnd 17914  df-mhm 17958  df-submnd 17959  df-grp 18108  df-minusg 18109  df-sbg 18110  df-mulg 18227  df-subg 18278  df-nsg 18279  df-eqg 18280  df-ghm 18358  df-cntz 18449  df-cmn 18910  df-abl 18911  df-mgp 19242  df-ur 19254  df-srg 19258  df-ring 19301  df-cring 19302  df-oppr 19375  df-dvdsr 19393  df-unit 19394  df-invr 19424  df-dvr 19435  df-rnghom 19469  df-drng 19506  df-field 19507  df-subrg 19535  df-lmod 19638  df-lss 19706  df-lsp 19746  df-sra 19946  df-rgmod 19947  df-lidl 19948  df-rsp 19949  df-2idl 20007  df-nzr 20033  df-rlreg 20058  df-domn 20059  df-idom 20060  df-assa 20087  df-asp 20088  df-ascl 20089  df-psr 20138  df-mvr 20139  df-mpl 20140  df-opsr 20142  df-evls 20288  df-evl 20289  df-psr1 20350  df-vr1 20351  df-ply1 20352  df-coe1 20353  df-evl1 20481  df-cnfld 20548  df-zring 20620  df-zrh 20653  df-zn 20656  df-mdeg 24651  df-deg1 24652  df-mon1 24726  df-uc1p 24727  df-q1p 24728  df-r1p 24729  df-lgs 25873
This theorem is referenced by:  sgprmdvdsmersenne  43776
  Copyright terms: Public domain W3C validator