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

Theorem fmtnoprmfac2lem1 42178
Description: Lemma for fmtnoprmfac2 42179. (Contributed by AV, 26-Jul-2021.)
Assertion
Ref Expression
fmtnoprmfac2lem1 ((𝑁 ∈ (ℤ‘2) ∧ 𝑃 ∈ (ℙ ∖ {2}) ∧ 𝑃 ∥ (FermatNo‘𝑁)) → ((2↑((𝑃 − 1) / 2)) mod 𝑃) = 1)

Proof of Theorem fmtnoprmfac2lem1
Dummy variables 𝑘 𝑛 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 eluz2nn 11931 . . 3 (𝑁 ∈ (ℤ‘2) → 𝑁 ∈ ℕ)
2 eldifi 3896 . . 3 (𝑃 ∈ (ℙ ∖ {2}) → 𝑃 ∈ ℙ)
3 id 22 . . 3 (𝑃 ∥ (FermatNo‘𝑁) → 𝑃 ∥ (FermatNo‘𝑁))
4 fmtnoprmfac1 42177 . . 3 ((𝑁 ∈ ℕ ∧ 𝑃 ∈ ℙ ∧ 𝑃 ∥ (FermatNo‘𝑁)) → ∃𝑛 ∈ ℕ 𝑃 = ((𝑛 · (2↑(𝑁 + 1))) + 1))
51, 2, 3, 4syl3an 1199 . 2 ((𝑁 ∈ (ℤ‘2) ∧ 𝑃 ∈ (ℙ ∖ {2}) ∧ 𝑃 ∥ (FermatNo‘𝑁)) → ∃𝑛 ∈ ℕ 𝑃 = ((𝑛 · (2↑(𝑁 + 1))) + 1))
6 2z 11661 . . . . . . 7 2 ∈ ℤ
7 simp2 1167 . . . . . . 7 ((𝑁 ∈ (ℤ‘2) ∧ 𝑃 ∈ (ℙ ∖ {2}) ∧ 𝑃 ∥ (FermatNo‘𝑁)) → 𝑃 ∈ (ℙ ∖ {2}))
8 lgsvalmod 25346 . . . . . . . 8 ((2 ∈ ℤ ∧ 𝑃 ∈ (ℙ ∖ {2})) → ((2 /L 𝑃) mod 𝑃) = ((2↑((𝑃 − 1) / 2)) mod 𝑃))
98eqcomd 2771 . . . . . . 7 ((2 ∈ ℤ ∧ 𝑃 ∈ (ℙ ∖ {2})) → ((2↑((𝑃 − 1) / 2)) mod 𝑃) = ((2 /L 𝑃) mod 𝑃))
106, 7, 9sylancr 581 . . . . . 6 ((𝑁 ∈ (ℤ‘2) ∧ 𝑃 ∈ (ℙ ∖ {2}) ∧ 𝑃 ∥ (FermatNo‘𝑁)) → ((2↑((𝑃 − 1) / 2)) mod 𝑃) = ((2 /L 𝑃) mod 𝑃))
1110ad2antrr 717 . . . . 5 ((((𝑁 ∈ (ℤ‘2) ∧ 𝑃 ∈ (ℙ ∖ {2}) ∧ 𝑃 ∥ (FermatNo‘𝑁)) ∧ 𝑛 ∈ ℕ) ∧ 𝑃 = ((𝑛 · (2↑(𝑁 + 1))) + 1)) → ((2↑((𝑃 − 1) / 2)) mod 𝑃) = ((2 /L 𝑃) mod 𝑃))
12 nncn 11287 . . . . . . . . . . . . . . 15 (𝑛 ∈ ℕ → 𝑛 ∈ ℂ)
1312adantl 473 . . . . . . . . . . . . . 14 ((𝑁 ∈ (ℤ‘2) ∧ 𝑛 ∈ ℕ) → 𝑛 ∈ ℂ)
14 2nn 11349 . . . . . . . . . . . . . . . . . 18 2 ∈ ℕ
1514a1i 11 . . . . . . . . . . . . . . . . 17 (𝑁 ∈ (ℤ‘2) → 2 ∈ ℕ)
16 eluzge2nn0 11932 . . . . . . . . . . . . . . . . . 18 (𝑁 ∈ (ℤ‘2) → 𝑁 ∈ ℕ0)
17 peano2nn0 11584 . . . . . . . . . . . . . . . . . 18 (𝑁 ∈ ℕ0 → (𝑁 + 1) ∈ ℕ0)
1816, 17syl 17 . . . . . . . . . . . . . . . . 17 (𝑁 ∈ (ℤ‘2) → (𝑁 + 1) ∈ ℕ0)
1915, 18nnexpcld 13242 . . . . . . . . . . . . . . . 16 (𝑁 ∈ (ℤ‘2) → (2↑(𝑁 + 1)) ∈ ℕ)
2019nncnd 11296 . . . . . . . . . . . . . . 15 (𝑁 ∈ (ℤ‘2) → (2↑(𝑁 + 1)) ∈ ℂ)
2120adantr 472 . . . . . . . . . . . . . 14 ((𝑁 ∈ (ℤ‘2) ∧ 𝑛 ∈ ℕ) → (2↑(𝑁 + 1)) ∈ ℂ)
2213, 21mulcomd 10319 . . . . . . . . . . . . 13 ((𝑁 ∈ (ℤ‘2) ∧ 𝑛 ∈ ℕ) → (𝑛 · (2↑(𝑁 + 1))) = ((2↑(𝑁 + 1)) · 𝑛))
23 8cn 11378 . . . . . . . . . . . . . . . . 17 8 ∈ ℂ
2423a1i 11 . . . . . . . . . . . . . . . 16 ((𝑁 ∈ (ℤ‘2) ∧ 𝑛 ∈ ℕ) → 8 ∈ ℂ)
25 0re 10299 . . . . . . . . . . . . . . . . . 18 0 ∈ ℝ
26 8pos 11395 . . . . . . . . . . . . . . . . . 18 0 < 8
2725, 26gtneii 10407 . . . . . . . . . . . . . . . . 17 8 ≠ 0
2827a1i 11 . . . . . . . . . . . . . . . 16 ((𝑁 ∈ (ℤ‘2) ∧ 𝑛 ∈ ℕ) → 8 ≠ 0)
2921, 24, 28divcan2d 11061 . . . . . . . . . . . . . . 15 ((𝑁 ∈ (ℤ‘2) ∧ 𝑛 ∈ ℕ) → (8 · ((2↑(𝑁 + 1)) / 8)) = (2↑(𝑁 + 1)))
3029eqcomd 2771 . . . . . . . . . . . . . 14 ((𝑁 ∈ (ℤ‘2) ∧ 𝑛 ∈ ℕ) → (2↑(𝑁 + 1)) = (8 · ((2↑(𝑁 + 1)) / 8)))
3130oveq1d 6861 . . . . . . . . . . . . 13 ((𝑁 ∈ (ℤ‘2) ∧ 𝑛 ∈ ℕ) → ((2↑(𝑁 + 1)) · 𝑛) = ((8 · ((2↑(𝑁 + 1)) / 8)) · 𝑛))
3223a1i 11 . . . . . . . . . . . . . . . 16 (𝑁 ∈ (ℤ‘2) → 8 ∈ ℂ)
3327a1i 11 . . . . . . . . . . . . . . . 16 (𝑁 ∈ (ℤ‘2) → 8 ≠ 0)
3420, 32, 33divcld 11059 . . . . . . . . . . . . . . 15 (𝑁 ∈ (ℤ‘2) → ((2↑(𝑁 + 1)) / 8) ∈ ℂ)
3534adantr 472 . . . . . . . . . . . . . 14 ((𝑁 ∈ (ℤ‘2) ∧ 𝑛 ∈ ℕ) → ((2↑(𝑁 + 1)) / 8) ∈ ℂ)
3624, 35, 13mulassd 10321 . . . . . . . . . . . . 13 ((𝑁 ∈ (ℤ‘2) ∧ 𝑛 ∈ ℕ) → ((8 · ((2↑(𝑁 + 1)) / 8)) · 𝑛) = (8 · (((2↑(𝑁 + 1)) / 8) · 𝑛)))
3722, 31, 363eqtrd 2803 . . . . . . . . . . . 12 ((𝑁 ∈ (ℤ‘2) ∧ 𝑛 ∈ ℕ) → (𝑛 · (2↑(𝑁 + 1))) = (8 · (((2↑(𝑁 + 1)) / 8) · 𝑛)))
3837oveq1d 6861 . . . . . . . . . . 11 ((𝑁 ∈ (ℤ‘2) ∧ 𝑛 ∈ ℕ) → ((𝑛 · (2↑(𝑁 + 1))) + 1) = ((8 · (((2↑(𝑁 + 1)) / 8) · 𝑛)) + 1))
3938eqeq2d 2775 . . . . . . . . . 10 ((𝑁 ∈ (ℤ‘2) ∧ 𝑛 ∈ ℕ) → (𝑃 = ((𝑛 · (2↑(𝑁 + 1))) + 1) ↔ 𝑃 = ((8 · (((2↑(𝑁 + 1)) / 8) · 𝑛)) + 1)))
40 oveq1 6853 . . . . . . . . . . . . 13 (𝑃 = ((8 · (((2↑(𝑁 + 1)) / 8) · 𝑛)) + 1) → (𝑃 mod 8) = (((8 · (((2↑(𝑁 + 1)) / 8) · 𝑛)) + 1) mod 8))
4140adantl 473 . . . . . . . . . . . 12 (((𝑁 ∈ (ℤ‘2) ∧ 𝑛 ∈ ℕ) ∧ 𝑃 = ((8 · (((2↑(𝑁 + 1)) / 8) · 𝑛)) + 1)) → (𝑃 mod 8) = (((8 · (((2↑(𝑁 + 1)) / 8) · 𝑛)) + 1) mod 8))
42 3m1e2 11411 . . . . . . . . . . . . . . . . . . . . . . . 24 (3 − 1) = 2
43 eluzle 11904 . . . . . . . . . . . . . . . . . . . . . . . 24 (𝑁 ∈ (ℤ‘2) → 2 ≤ 𝑁)
4442, 43syl5eqbr 4846 . . . . . . . . . . . . . . . . . . . . . . 23 (𝑁 ∈ (ℤ‘2) → (3 − 1) ≤ 𝑁)
45 3re 11356 . . . . . . . . . . . . . . . . . . . . . . . . 25 3 ∈ ℝ
4645a1i 11 . . . . . . . . . . . . . . . . . . . . . . . 24 (𝑁 ∈ (ℤ‘2) → 3 ∈ ℝ)
47 1red 10298 . . . . . . . . . . . . . . . . . . . . . . . 24 (𝑁 ∈ (ℤ‘2) → 1 ∈ ℝ)
48 eluzelre 11902 . . . . . . . . . . . . . . . . . . . . . . . 24 (𝑁 ∈ (ℤ‘2) → 𝑁 ∈ ℝ)
4946, 47, 48lesubaddd 10882 . . . . . . . . . . . . . . . . . . . . . . 23 (𝑁 ∈ (ℤ‘2) → ((3 − 1) ≤ 𝑁 ↔ 3 ≤ (𝑁 + 1)))
5044, 49mpbid 223 . . . . . . . . . . . . . . . . . . . . . 22 (𝑁 ∈ (ℤ‘2) → 3 ≤ (𝑁 + 1))
51 3nn0 11562 . . . . . . . . . . . . . . . . . . . . . . 23 3 ∈ ℕ0
52 nn0sub 11594 . . . . . . . . . . . . . . . . . . . . . . 23 ((3 ∈ ℕ0 ∧ (𝑁 + 1) ∈ ℕ0) → (3 ≤ (𝑁 + 1) ↔ ((𝑁 + 1) − 3) ∈ ℕ0))
5351, 18, 52sylancr 581 . . . . . . . . . . . . . . . . . . . . . 22 (𝑁 ∈ (ℤ‘2) → (3 ≤ (𝑁 + 1) ↔ ((𝑁 + 1) − 3) ∈ ℕ0))
5450, 53mpbid 223 . . . . . . . . . . . . . . . . . . . . 21 (𝑁 ∈ (ℤ‘2) → ((𝑁 + 1) − 3) ∈ ℕ0)
5515, 54nnexpcld 13242 . . . . . . . . . . . . . . . . . . . 20 (𝑁 ∈ (ℤ‘2) → (2↑((𝑁 + 1) − 3)) ∈ ℕ)
5655nnzd 11733 . . . . . . . . . . . . . . . . . . 19 (𝑁 ∈ (ℤ‘2) → (2↑((𝑁 + 1) − 3)) ∈ ℤ)
57 oveq2 6854 . . . . . . . . . . . . . . . . . . . . 21 (𝑘 = (2↑((𝑁 + 1) − 3)) → (8 · 𝑘) = (8 · (2↑((𝑁 + 1) − 3))))
5857eqeq1d 2767 . . . . . . . . . . . . . . . . . . . 20 (𝑘 = (2↑((𝑁 + 1) − 3)) → ((8 · 𝑘) = (2↑(𝑁 + 1)) ↔ (8 · (2↑((𝑁 + 1) − 3))) = (2↑(𝑁 + 1))))
5958adantl 473 . . . . . . . . . . . . . . . . . . 19 ((𝑁 ∈ (ℤ‘2) ∧ 𝑘 = (2↑((𝑁 + 1) − 3))) → ((8 · 𝑘) = (2↑(𝑁 + 1)) ↔ (8 · (2↑((𝑁 + 1) − 3))) = (2↑(𝑁 + 1))))
60 cu2 13175 . . . . . . . . . . . . . . . . . . . . . . 23 (2↑3) = 8
6160eqcomi 2774 . . . . . . . . . . . . . . . . . . . . . 22 8 = (2↑3)
6261a1i 11 . . . . . . . . . . . . . . . . . . . . 21 (𝑁 ∈ (ℤ‘2) → 8 = (2↑3))
63 2cnne0 11492 . . . . . . . . . . . . . . . . . . . . . . 23 (2 ∈ ℂ ∧ 2 ≠ 0)
6463a1i 11 . . . . . . . . . . . . . . . . . . . . . 22 (𝑁 ∈ (ℤ‘2) → (2 ∈ ℂ ∧ 2 ≠ 0))
65 eluzelz 11901 . . . . . . . . . . . . . . . . . . . . . . 23 (𝑁 ∈ (ℤ‘2) → 𝑁 ∈ ℤ)
6665peano2zd 11737 . . . . . . . . . . . . . . . . . . . . . 22 (𝑁 ∈ (ℤ‘2) → (𝑁 + 1) ∈ ℤ)
67 3z 11662 . . . . . . . . . . . . . . . . . . . . . . 23 3 ∈ ℤ
6867a1i 11 . . . . . . . . . . . . . . . . . . . . . 22 (𝑁 ∈ (ℤ‘2) → 3 ∈ ℤ)
69 expsub 13120 . . . . . . . . . . . . . . . . . . . . . 22 (((2 ∈ ℂ ∧ 2 ≠ 0) ∧ ((𝑁 + 1) ∈ ℤ ∧ 3 ∈ ℤ)) → (2↑((𝑁 + 1) − 3)) = ((2↑(𝑁 + 1)) / (2↑3)))
7064, 66, 68, 69syl12anc 865 . . . . . . . . . . . . . . . . . . . . 21 (𝑁 ∈ (ℤ‘2) → (2↑((𝑁 + 1) − 3)) = ((2↑(𝑁 + 1)) / (2↑3)))
7162, 70oveq12d 6864 . . . . . . . . . . . . . . . . . . . 20 (𝑁 ∈ (ℤ‘2) → (8 · (2↑((𝑁 + 1) − 3))) = ((2↑3) · ((2↑(𝑁 + 1)) / (2↑3))))
72 nnexpcl 13085 . . . . . . . . . . . . . . . . . . . . . . . 24 ((2 ∈ ℕ ∧ 3 ∈ ℕ0) → (2↑3) ∈ ℕ)
7314, 51, 72mp2an 683 . . . . . . . . . . . . . . . . . . . . . . 23 (2↑3) ∈ ℕ
7473nncni 11289 . . . . . . . . . . . . . . . . . . . . . 22 (2↑3) ∈ ℂ
7574a1i 11 . . . . . . . . . . . . . . . . . . . . 21 (𝑁 ∈ (ℤ‘2) → (2↑3) ∈ ℂ)
76 2cn 11351 . . . . . . . . . . . . . . . . . . . . . . 23 2 ∈ ℂ
77 2ne0 11387 . . . . . . . . . . . . . . . . . . . . . . 23 2 ≠ 0
78 expne0i 13104 . . . . . . . . . . . . . . . . . . . . . . 23 ((2 ∈ ℂ ∧ 2 ≠ 0 ∧ 3 ∈ ℤ) → (2↑3) ≠ 0)
7976, 77, 67, 78mp3an 1585 . . . . . . . . . . . . . . . . . . . . . 22 (2↑3) ≠ 0
8079a1i 11 . . . . . . . . . . . . . . . . . . . . 21 (𝑁 ∈ (ℤ‘2) → (2↑3) ≠ 0)
8120, 75, 80divcan2d 11061 . . . . . . . . . . . . . . . . . . . 20 (𝑁 ∈ (ℤ‘2) → ((2↑3) · ((2↑(𝑁 + 1)) / (2↑3))) = (2↑(𝑁 + 1)))
8271, 81eqtrd 2799 . . . . . . . . . . . . . . . . . . 19 (𝑁 ∈ (ℤ‘2) → (8 · (2↑((𝑁 + 1) − 3))) = (2↑(𝑁 + 1)))
8356, 59, 82rspcedvd 3469 . . . . . . . . . . . . . . . . . 18 (𝑁 ∈ (ℤ‘2) → ∃𝑘 ∈ ℤ (8 · 𝑘) = (2↑(𝑁 + 1)))
84 8nn 11376 . . . . . . . . . . . . . . . . . . 19 8 ∈ ℕ
85 2nn0 11561 . . . . . . . . . . . . . . . . . . . . . 22 2 ∈ ℕ0
8685a1i 11 . . . . . . . . . . . . . . . . . . . . 21 (𝑁 ∈ (ℤ‘2) → 2 ∈ ℕ0)
8786, 18nn0expcld 13243 . . . . . . . . . . . . . . . . . . . 20 (𝑁 ∈ (ℤ‘2) → (2↑(𝑁 + 1)) ∈ ℕ0)
8887nn0zd 11732 . . . . . . . . . . . . . . . . . . 19 (𝑁 ∈ (ℤ‘2) → (2↑(𝑁 + 1)) ∈ ℤ)
89 zdiv 11699 . . . . . . . . . . . . . . . . . . 19 ((8 ∈ ℕ ∧ (2↑(𝑁 + 1)) ∈ ℤ) → (∃𝑘 ∈ ℤ (8 · 𝑘) = (2↑(𝑁 + 1)) ↔ ((2↑(𝑁 + 1)) / 8) ∈ ℤ))
9084, 88, 89sylancr 581 . . . . . . . . . . . . . . . . . 18 (𝑁 ∈ (ℤ‘2) → (∃𝑘 ∈ ℤ (8 · 𝑘) = (2↑(𝑁 + 1)) ↔ ((2↑(𝑁 + 1)) / 8) ∈ ℤ))
9183, 90mpbid 223 . . . . . . . . . . . . . . . . 17 (𝑁 ∈ (ℤ‘2) → ((2↑(𝑁 + 1)) / 8) ∈ ℤ)
9291adantr 472 . . . . . . . . . . . . . . . 16 ((𝑁 ∈ (ℤ‘2) ∧ 𝑛 ∈ ℕ) → ((2↑(𝑁 + 1)) / 8) ∈ ℤ)
93 nnz 11651 . . . . . . . . . . . . . . . . 17 (𝑛 ∈ ℕ → 𝑛 ∈ ℤ)
9493adantl 473 . . . . . . . . . . . . . . . 16 ((𝑁 ∈ (ℤ‘2) ∧ 𝑛 ∈ ℕ) → 𝑛 ∈ ℤ)
9592, 94zmulcld 11740 . . . . . . . . . . . . . . 15 ((𝑁 ∈ (ℤ‘2) ∧ 𝑛 ∈ ℕ) → (((2↑(𝑁 + 1)) / 8) · 𝑛) ∈ ℤ)
9684nnzi 11653 . . . . . . . . . . . . . . . 16 8 ∈ ℤ
97 2re 11350 . . . . . . . . . . . . . . . . 17 2 ∈ ℝ
98 8re 11377 . . . . . . . . . . . . . . . . 17 8 ∈ ℝ
99 2lt8 11479 . . . . . . . . . . . . . . . . 17 2 < 8
10097, 98, 99ltleii 10418 . . . . . . . . . . . . . . . 16 2 ≤ 8
101 eluz2 11897 . . . . . . . . . . . . . . . 16 (8 ∈ (ℤ‘2) ↔ (2 ∈ ℤ ∧ 8 ∈ ℤ ∧ 2 ≤ 8))
1026, 96, 100, 101mpbir3an 1441 . . . . . . . . . . . . . . 15 8 ∈ (ℤ‘2)
103 mulp1mod1 12924 . . . . . . . . . . . . . . 15 (((((2↑(𝑁 + 1)) / 8) · 𝑛) ∈ ℤ ∧ 8 ∈ (ℤ‘2)) → (((8 · (((2↑(𝑁 + 1)) / 8) · 𝑛)) + 1) mod 8) = 1)
10495, 102, 103sylancl 580 . . . . . . . . . . . . . 14 ((𝑁 ∈ (ℤ‘2) ∧ 𝑛 ∈ ℕ) → (((8 · (((2↑(𝑁 + 1)) / 8) · 𝑛)) + 1) mod 8) = 1)
105 1nn 11291 . . . . . . . . . . . . . . 15 1 ∈ ℕ
106 prid1g 4452 . . . . . . . . . . . . . . 15 (1 ∈ ℕ → 1 ∈ {1, 7})
107105, 106mp1i 13 . . . . . . . . . . . . . 14 ((𝑁 ∈ (ℤ‘2) ∧ 𝑛 ∈ ℕ) → 1 ∈ {1, 7})
108104, 107eqeltrd 2844 . . . . . . . . . . . . 13 ((𝑁 ∈ (ℤ‘2) ∧ 𝑛 ∈ ℕ) → (((8 · (((2↑(𝑁 + 1)) / 8) · 𝑛)) + 1) mod 8) ∈ {1, 7})
109108adantr 472 . . . . . . . . . . . 12 (((𝑁 ∈ (ℤ‘2) ∧ 𝑛 ∈ ℕ) ∧ 𝑃 = ((8 · (((2↑(𝑁 + 1)) / 8) · 𝑛)) + 1)) → (((8 · (((2↑(𝑁 + 1)) / 8) · 𝑛)) + 1) mod 8) ∈ {1, 7})
11041, 109eqeltrd 2844 . . . . . . . . . . 11 (((𝑁 ∈ (ℤ‘2) ∧ 𝑛 ∈ ℕ) ∧ 𝑃 = ((8 · (((2↑(𝑁 + 1)) / 8) · 𝑛)) + 1)) → (𝑃 mod 8) ∈ {1, 7})
111110ex 401 . . . . . . . . . 10 ((𝑁 ∈ (ℤ‘2) ∧ 𝑛 ∈ ℕ) → (𝑃 = ((8 · (((2↑(𝑁 + 1)) / 8) · 𝑛)) + 1) → (𝑃 mod 8) ∈ {1, 7}))
11239, 111sylbid 231 . . . . . . . . 9 ((𝑁 ∈ (ℤ‘2) ∧ 𝑛 ∈ ℕ) → (𝑃 = ((𝑛 · (2↑(𝑁 + 1))) + 1) → (𝑃 mod 8) ∈ {1, 7}))
1131123ad2antl1 1236 . . . . . . . 8 (((𝑁 ∈ (ℤ‘2) ∧ 𝑃 ∈ (ℙ ∖ {2}) ∧ 𝑃 ∥ (FermatNo‘𝑁)) ∧ 𝑛 ∈ ℕ) → (𝑃 = ((𝑛 · (2↑(𝑁 + 1))) + 1) → (𝑃 mod 8) ∈ {1, 7}))
114113imp 395 . . . . . . 7 ((((𝑁 ∈ (ℤ‘2) ∧ 𝑃 ∈ (ℙ ∖ {2}) ∧ 𝑃 ∥ (FermatNo‘𝑁)) ∧ 𝑛 ∈ ℕ) ∧ 𝑃 = ((𝑛 · (2↑(𝑁 + 1))) + 1)) → (𝑃 mod 8) ∈ {1, 7})
115 2lgs 25437 . . . . . . . . . 10 (𝑃 ∈ ℙ → ((2 /L 𝑃) = 1 ↔ (𝑃 mod 8) ∈ {1, 7}))
1162, 115syl 17 . . . . . . . . 9 (𝑃 ∈ (ℙ ∖ {2}) → ((2 /L 𝑃) = 1 ↔ (𝑃 mod 8) ∈ {1, 7}))
1171163ad2ant2 1164 . . . . . . . 8 ((𝑁 ∈ (ℤ‘2) ∧ 𝑃 ∈ (ℙ ∖ {2}) ∧ 𝑃 ∥ (FermatNo‘𝑁)) → ((2 /L 𝑃) = 1 ↔ (𝑃 mod 8) ∈ {1, 7}))
118117ad2antrr 717 . . . . . . 7 ((((𝑁 ∈ (ℤ‘2) ∧ 𝑃 ∈ (ℙ ∖ {2}) ∧ 𝑃 ∥ (FermatNo‘𝑁)) ∧ 𝑛 ∈ ℕ) ∧ 𝑃 = ((𝑛 · (2↑(𝑁 + 1))) + 1)) → ((2 /L 𝑃) = 1 ↔ (𝑃 mod 8) ∈ {1, 7}))
119114, 118mpbird 248 . . . . . 6 ((((𝑁 ∈ (ℤ‘2) ∧ 𝑃 ∈ (ℙ ∖ {2}) ∧ 𝑃 ∥ (FermatNo‘𝑁)) ∧ 𝑛 ∈ ℕ) ∧ 𝑃 = ((𝑛 · (2↑(𝑁 + 1))) + 1)) → (2 /L 𝑃) = 1)
120119oveq1d 6861 . . . . 5 ((((𝑁 ∈ (ℤ‘2) ∧ 𝑃 ∈ (ℙ ∖ {2}) ∧ 𝑃 ∥ (FermatNo‘𝑁)) ∧ 𝑛 ∈ ℕ) ∧ 𝑃 = ((𝑛 · (2↑(𝑁 + 1))) + 1)) → ((2 /L 𝑃) mod 𝑃) = (1 mod 𝑃))
121 prmuz2 15702 . . . . . . . . 9 (𝑃 ∈ ℙ → 𝑃 ∈ (ℤ‘2))
122 eluzelre 11902 . . . . . . . . . 10 (𝑃 ∈ (ℤ‘2) → 𝑃 ∈ ℝ)
123 eluz2gt1 11966 . . . . . . . . . 10 (𝑃 ∈ (ℤ‘2) → 1 < 𝑃)
124122, 123jca 507 . . . . . . . . 9 (𝑃 ∈ (ℤ‘2) → (𝑃 ∈ ℝ ∧ 1 < 𝑃))
125121, 124syl 17 . . . . . . . 8 (𝑃 ∈ ℙ → (𝑃 ∈ ℝ ∧ 1 < 𝑃))
126 1mod 12915 . . . . . . . 8 ((𝑃 ∈ ℝ ∧ 1 < 𝑃) → (1 mod 𝑃) = 1)
1272, 125, 1263syl 18 . . . . . . 7 (𝑃 ∈ (ℙ ∖ {2}) → (1 mod 𝑃) = 1)
1281273ad2ant2 1164 . . . . . 6 ((𝑁 ∈ (ℤ‘2) ∧ 𝑃 ∈ (ℙ ∖ {2}) ∧ 𝑃 ∥ (FermatNo‘𝑁)) → (1 mod 𝑃) = 1)
129128ad2antrr 717 . . . . 5 ((((𝑁 ∈ (ℤ‘2) ∧ 𝑃 ∈ (ℙ ∖ {2}) ∧ 𝑃 ∥ (FermatNo‘𝑁)) ∧ 𝑛 ∈ ℕ) ∧ 𝑃 = ((𝑛 · (2↑(𝑁 + 1))) + 1)) → (1 mod 𝑃) = 1)
13011, 120, 1293eqtrd 2803 . . . 4 ((((𝑁 ∈ (ℤ‘2) ∧ 𝑃 ∈ (ℙ ∖ {2}) ∧ 𝑃 ∥ (FermatNo‘𝑁)) ∧ 𝑛 ∈ ℕ) ∧ 𝑃 = ((𝑛 · (2↑(𝑁 + 1))) + 1)) → ((2↑((𝑃 − 1) / 2)) mod 𝑃) = 1)
131130ex 401 . . 3 (((𝑁 ∈ (ℤ‘2) ∧ 𝑃 ∈ (ℙ ∖ {2}) ∧ 𝑃 ∥ (FermatNo‘𝑁)) ∧ 𝑛 ∈ ℕ) → (𝑃 = ((𝑛 · (2↑(𝑁 + 1))) + 1) → ((2↑((𝑃 − 1) / 2)) mod 𝑃) = 1))
132131rexlimdva 3178 . 2 ((𝑁 ∈ (ℤ‘2) ∧ 𝑃 ∈ (ℙ ∖ {2}) ∧ 𝑃 ∥ (FermatNo‘𝑁)) → (∃𝑛 ∈ ℕ 𝑃 = ((𝑛 · (2↑(𝑁 + 1))) + 1) → ((2↑((𝑃 − 1) / 2)) mod 𝑃) = 1))
1335, 132mpd 15 1 ((𝑁 ∈ (ℤ‘2) ∧ 𝑃 ∈ (ℙ ∖ {2}) ∧ 𝑃 ∥ (FermatNo‘𝑁)) → ((2↑((𝑃 − 1) / 2)) mod 𝑃) = 1)
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 197  wa 384  w3a 1107   = wceq 1652  wcel 2155  wne 2937  wrex 3056  cdif 3731  {csn 4336  {cpr 4338   class class class wbr 4811  cfv 6070  (class class class)co 6846  cc 10191  cr 10192  0cc0 10193  1c1 10194   + caddc 10196   · cmul 10198   < clt 10332  cle 10333  cmin 10524   / cdiv 10942  cn 11278  2c2 11331  3c3 11332  7c7 11336  8c8 11337  0cn0 11542  cz 11628  cuz 11891   mod cmo 12881  cexp 13072  cdvds 15279  cprime 15679   /L clgs 25324  FermatNocfmtno 42139
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1890  ax-4 1904  ax-5 2005  ax-6 2070  ax-7 2105  ax-8 2157  ax-9 2164  ax-10 2183  ax-11 2198  ax-12 2211  ax-13 2352  ax-ext 2743  ax-rep 4932  ax-sep 4943  ax-nul 4951  ax-pow 5003  ax-pr 5064  ax-un 7151  ax-inf2 8757  ax-cnex 10249  ax-resscn 10250  ax-1cn 10251  ax-icn 10252  ax-addcl 10253  ax-addrcl 10254  ax-mulcl 10255  ax-mulrcl 10256  ax-mulcom 10257  ax-addass 10258  ax-mulass 10259  ax-distr 10260  ax-i2m1 10261  ax-1ne0 10262  ax-1rid 10263  ax-rnegex 10264  ax-rrecex 10265  ax-cnre 10266  ax-pre-lttri 10267  ax-pre-lttrn 10268  ax-pre-ltadd 10269  ax-pre-mulgt0 10270  ax-pre-sup 10271
This theorem depends on definitions:  df-bi 198  df-an 385  df-or 874  df-3or 1108  df-3an 1109  df-tru 1656  df-fal 1666  df-ex 1875  df-nf 1879  df-sb 2063  df-mo 2565  df-eu 2582  df-clab 2752  df-cleq 2758  df-clel 2761  df-nfc 2896  df-ne 2938  df-nel 3041  df-ral 3060  df-rex 3061  df-reu 3062  df-rmo 3063  df-rab 3064  df-v 3352  df-sbc 3599  df-csb 3694  df-dif 3737  df-un 3739  df-in 3741  df-ss 3748  df-pss 3750  df-nul 4082  df-if 4246  df-pw 4319  df-sn 4337  df-pr 4339  df-tp 4341  df-op 4343  df-uni 4597  df-int 4636  df-iun 4680  df-br 4812  df-opab 4874  df-mpt 4891  df-tr 4914  df-id 5187  df-eprel 5192  df-po 5200  df-so 5201  df-fr 5238  df-se 5239  df-we 5240  df-xp 5285  df-rel 5286  df-cnv 5287  df-co 5288  df-dm 5289  df-rn 5290  df-res 5291  df-ima 5292  df-pred 5867  df-ord 5913  df-on 5914  df-lim 5915  df-suc 5916  df-iota 6033  df-fun 6072  df-fn 6073  df-f 6074  df-f1 6075  df-fo 6076  df-f1o 6077  df-fv 6078  df-isom 6079  df-riota 6807  df-ov 6849  df-oprab 6850  df-mpt2 6851  df-om 7268  df-1st 7370  df-2nd 7371  df-wrecs 7614  df-recs 7676  df-rdg 7714  df-1o 7768  df-2o 7769  df-oadd 7772  df-er 7951  df-map 8066  df-en 8165  df-dom 8166  df-sdom 8167  df-fin 8168  df-sup 8559  df-inf 8560  df-oi 8626  df-card 9020  df-cda 9247  df-pnf 10334  df-mnf 10335  df-xr 10336  df-ltxr 10337  df-le 10338  df-sub 10526  df-neg 10527  df-div 10943  df-nn 11279  df-2 11339  df-3 11340  df-4 11341  df-5 11342  df-6 11343  df-7 11344  df-8 11345  df-n0 11543  df-xnn0 11615  df-z 11629  df-uz 11892  df-q 11995  df-rp 12034  df-ioo 12386  df-ico 12388  df-fz 12539  df-fzo 12679  df-fl 12806  df-mod 12882  df-seq 13014  df-exp 13073  df-fac 13270  df-hash 13327  df-cj 14138  df-re 14139  df-im 14140  df-sqrt 14274  df-abs 14275  df-clim 14518  df-prod 14933  df-dvds 15280  df-gcd 15512  df-prm 15680  df-odz 15763  df-phi 15764  df-pc 15835  df-lgs 25325  df-fmtno 42140
This theorem is referenced by:  fmtnoprmfac2  42179
  Copyright terms: Public domain W3C validator