Proof of Theorem nnnn0modprm0
Step | Hyp | Ref
| Expression |
1 | | prmnn 16307 |
. . . . . 6
⊢ (𝑃 ∈ ℙ → 𝑃 ∈
ℕ) |
2 | 1 | adantr 480 |
. . . . 5
⊢ ((𝑃 ∈ ℙ ∧ 𝑁 ∈ (1..^𝑃)) → 𝑃 ∈ ℕ) |
3 | | fzo0sn0fzo1 13404 |
. . . . 5
⊢ (𝑃 ∈ ℕ →
(0..^𝑃) = ({0} ∪
(1..^𝑃))) |
4 | 2, 3 | syl 17 |
. . . 4
⊢ ((𝑃 ∈ ℙ ∧ 𝑁 ∈ (1..^𝑃)) → (0..^𝑃) = ({0} ∪ (1..^𝑃))) |
5 | 4 | eleq2d 2824 |
. . 3
⊢ ((𝑃 ∈ ℙ ∧ 𝑁 ∈ (1..^𝑃)) → (𝐼 ∈ (0..^𝑃) ↔ 𝐼 ∈ ({0} ∪ (1..^𝑃)))) |
6 | | elun 4079 |
. . . . 5
⊢ (𝐼 ∈ ({0} ∪ (1..^𝑃)) ↔ (𝐼 ∈ {0} ∨ 𝐼 ∈ (1..^𝑃))) |
7 | | elsni 4575 |
. . . . . . 7
⊢ (𝐼 ∈ {0} → 𝐼 = 0) |
8 | | lbfzo0 13355 |
. . . . . . . . . . . 12
⊢ (0 ∈
(0..^𝑃) ↔ 𝑃 ∈
ℕ) |
9 | 1, 8 | sylibr 233 |
. . . . . . . . . . 11
⊢ (𝑃 ∈ ℙ → 0 ∈
(0..^𝑃)) |
10 | | elfzoelz 13316 |
. . . . . . . . . . . . . . 15
⊢ (𝑁 ∈ (1..^𝑃) → 𝑁 ∈ ℤ) |
11 | | zcn 12254 |
. . . . . . . . . . . . . . 15
⊢ (𝑁 ∈ ℤ → 𝑁 ∈
ℂ) |
12 | | mul02 11083 |
. . . . . . . . . . . . . . . . 17
⊢ (𝑁 ∈ ℂ → (0
· 𝑁) =
0) |
13 | 12 | oveq2d 7271 |
. . . . . . . . . . . . . . . 16
⊢ (𝑁 ∈ ℂ → (0 + (0
· 𝑁)) = (0 +
0)) |
14 | | 00id 11080 |
. . . . . . . . . . . . . . . 16
⊢ (0 + 0) =
0 |
15 | 13, 14 | eqtrdi 2795 |
. . . . . . . . . . . . . . 15
⊢ (𝑁 ∈ ℂ → (0 + (0
· 𝑁)) =
0) |
16 | 10, 11, 15 | 3syl 18 |
. . . . . . . . . . . . . 14
⊢ (𝑁 ∈ (1..^𝑃) → (0 + (0 · 𝑁)) = 0) |
17 | 16 | adantl 481 |
. . . . . . . . . . . . 13
⊢ ((𝑃 ∈ ℙ ∧ 𝑁 ∈ (1..^𝑃)) → (0 + (0 · 𝑁)) = 0) |
18 | 17 | oveq1d 7270 |
. . . . . . . . . . . 12
⊢ ((𝑃 ∈ ℙ ∧ 𝑁 ∈ (1..^𝑃)) → ((0 + (0 · 𝑁)) mod 𝑃) = (0 mod 𝑃)) |
19 | | nnrp 12670 |
. . . . . . . . . . . . . 14
⊢ (𝑃 ∈ ℕ → 𝑃 ∈
ℝ+) |
20 | | 0mod 13550 |
. . . . . . . . . . . . . 14
⊢ (𝑃 ∈ ℝ+
→ (0 mod 𝑃) =
0) |
21 | 1, 19, 20 | 3syl 18 |
. . . . . . . . . . . . 13
⊢ (𝑃 ∈ ℙ → (0 mod
𝑃) = 0) |
22 | 21 | adantr 480 |
. . . . . . . . . . . 12
⊢ ((𝑃 ∈ ℙ ∧ 𝑁 ∈ (1..^𝑃)) → (0 mod 𝑃) = 0) |
23 | 18, 22 | eqtrd 2778 |
. . . . . . . . . . 11
⊢ ((𝑃 ∈ ℙ ∧ 𝑁 ∈ (1..^𝑃)) → ((0 + (0 · 𝑁)) mod 𝑃) = 0) |
24 | | oveq1 7262 |
. . . . . . . . . . . . . . 15
⊢ (𝑗 = 0 → (𝑗 · 𝑁) = (0 · 𝑁)) |
25 | 24 | oveq2d 7271 |
. . . . . . . . . . . . . 14
⊢ (𝑗 = 0 → (0 + (𝑗 · 𝑁)) = (0 + (0 · 𝑁))) |
26 | 25 | oveq1d 7270 |
. . . . . . . . . . . . 13
⊢ (𝑗 = 0 → ((0 + (𝑗 · 𝑁)) mod 𝑃) = ((0 + (0 · 𝑁)) mod 𝑃)) |
27 | 26 | eqeq1d 2740 |
. . . . . . . . . . . 12
⊢ (𝑗 = 0 → (((0 + (𝑗 · 𝑁)) mod 𝑃) = 0 ↔ ((0 + (0 · 𝑁)) mod 𝑃) = 0)) |
28 | 27 | rspcev 3552 |
. . . . . . . . . . 11
⊢ ((0
∈ (0..^𝑃) ∧ ((0 +
(0 · 𝑁)) mod 𝑃) = 0) → ∃𝑗 ∈ (0..^𝑃)((0 + (𝑗 · 𝑁)) mod 𝑃) = 0) |
29 | 9, 23, 28 | syl2an2r 681 |
. . . . . . . . . 10
⊢ ((𝑃 ∈ ℙ ∧ 𝑁 ∈ (1..^𝑃)) → ∃𝑗 ∈ (0..^𝑃)((0 + (𝑗 · 𝑁)) mod 𝑃) = 0) |
30 | 29 | adantl 481 |
. . . . . . . . 9
⊢ ((𝐼 = 0 ∧ (𝑃 ∈ ℙ ∧ 𝑁 ∈ (1..^𝑃))) → ∃𝑗 ∈ (0..^𝑃)((0 + (𝑗 · 𝑁)) mod 𝑃) = 0) |
31 | | oveq1 7262 |
. . . . . . . . . . . . 13
⊢ (𝐼 = 0 → (𝐼 + (𝑗 · 𝑁)) = (0 + (𝑗 · 𝑁))) |
32 | 31 | oveq1d 7270 |
. . . . . . . . . . . 12
⊢ (𝐼 = 0 → ((𝐼 + (𝑗 · 𝑁)) mod 𝑃) = ((0 + (𝑗 · 𝑁)) mod 𝑃)) |
33 | 32 | eqeq1d 2740 |
. . . . . . . . . . 11
⊢ (𝐼 = 0 → (((𝐼 + (𝑗 · 𝑁)) mod 𝑃) = 0 ↔ ((0 + (𝑗 · 𝑁)) mod 𝑃) = 0)) |
34 | 33 | adantr 480 |
. . . . . . . . . 10
⊢ ((𝐼 = 0 ∧ (𝑃 ∈ ℙ ∧ 𝑁 ∈ (1..^𝑃))) → (((𝐼 + (𝑗 · 𝑁)) mod 𝑃) = 0 ↔ ((0 + (𝑗 · 𝑁)) mod 𝑃) = 0)) |
35 | 34 | rexbidv 3225 |
. . . . . . . . 9
⊢ ((𝐼 = 0 ∧ (𝑃 ∈ ℙ ∧ 𝑁 ∈ (1..^𝑃))) → (∃𝑗 ∈ (0..^𝑃)((𝐼 + (𝑗 · 𝑁)) mod 𝑃) = 0 ↔ ∃𝑗 ∈ (0..^𝑃)((0 + (𝑗 · 𝑁)) mod 𝑃) = 0)) |
36 | 30, 35 | mpbird 256 |
. . . . . . . 8
⊢ ((𝐼 = 0 ∧ (𝑃 ∈ ℙ ∧ 𝑁 ∈ (1..^𝑃))) → ∃𝑗 ∈ (0..^𝑃)((𝐼 + (𝑗 · 𝑁)) mod 𝑃) = 0) |
37 | 36 | ex 412 |
. . . . . . 7
⊢ (𝐼 = 0 → ((𝑃 ∈ ℙ ∧ 𝑁 ∈ (1..^𝑃)) → ∃𝑗 ∈ (0..^𝑃)((𝐼 + (𝑗 · 𝑁)) mod 𝑃) = 0)) |
38 | 7, 37 | syl 17 |
. . . . . 6
⊢ (𝐼 ∈ {0} → ((𝑃 ∈ ℙ ∧ 𝑁 ∈ (1..^𝑃)) → ∃𝑗 ∈ (0..^𝑃)((𝐼 + (𝑗 · 𝑁)) mod 𝑃) = 0)) |
39 | | simpl 482 |
. . . . . . . . 9
⊢ ((𝑃 ∈ ℙ ∧ 𝑁 ∈ (1..^𝑃)) → 𝑃 ∈ ℙ) |
40 | 39 | adantl 481 |
. . . . . . . 8
⊢ ((𝐼 ∈ (1..^𝑃) ∧ (𝑃 ∈ ℙ ∧ 𝑁 ∈ (1..^𝑃))) → 𝑃 ∈ ℙ) |
41 | | simprr 769 |
. . . . . . . 8
⊢ ((𝐼 ∈ (1..^𝑃) ∧ (𝑃 ∈ ℙ ∧ 𝑁 ∈ (1..^𝑃))) → 𝑁 ∈ (1..^𝑃)) |
42 | | simpl 482 |
. . . . . . . 8
⊢ ((𝐼 ∈ (1..^𝑃) ∧ (𝑃 ∈ ℙ ∧ 𝑁 ∈ (1..^𝑃))) → 𝐼 ∈ (1..^𝑃)) |
43 | | modprm0 16434 |
. . . . . . . 8
⊢ ((𝑃 ∈ ℙ ∧ 𝑁 ∈ (1..^𝑃) ∧ 𝐼 ∈ (1..^𝑃)) → ∃𝑗 ∈ (0..^𝑃)((𝐼 + (𝑗 · 𝑁)) mod 𝑃) = 0) |
44 | 40, 41, 42, 43 | syl3anc 1369 |
. . . . . . 7
⊢ ((𝐼 ∈ (1..^𝑃) ∧ (𝑃 ∈ ℙ ∧ 𝑁 ∈ (1..^𝑃))) → ∃𝑗 ∈ (0..^𝑃)((𝐼 + (𝑗 · 𝑁)) mod 𝑃) = 0) |
45 | 44 | ex 412 |
. . . . . 6
⊢ (𝐼 ∈ (1..^𝑃) → ((𝑃 ∈ ℙ ∧ 𝑁 ∈ (1..^𝑃)) → ∃𝑗 ∈ (0..^𝑃)((𝐼 + (𝑗 · 𝑁)) mod 𝑃) = 0)) |
46 | 38, 45 | jaoi 853 |
. . . . 5
⊢ ((𝐼 ∈ {0} ∨ 𝐼 ∈ (1..^𝑃)) → ((𝑃 ∈ ℙ ∧ 𝑁 ∈ (1..^𝑃)) → ∃𝑗 ∈ (0..^𝑃)((𝐼 + (𝑗 · 𝑁)) mod 𝑃) = 0)) |
47 | 6, 46 | sylbi 216 |
. . . 4
⊢ (𝐼 ∈ ({0} ∪ (1..^𝑃)) → ((𝑃 ∈ ℙ ∧ 𝑁 ∈ (1..^𝑃)) → ∃𝑗 ∈ (0..^𝑃)((𝐼 + (𝑗 · 𝑁)) mod 𝑃) = 0)) |
48 | 47 | com12 32 |
. . 3
⊢ ((𝑃 ∈ ℙ ∧ 𝑁 ∈ (1..^𝑃)) → (𝐼 ∈ ({0} ∪ (1..^𝑃)) → ∃𝑗 ∈ (0..^𝑃)((𝐼 + (𝑗 · 𝑁)) mod 𝑃) = 0)) |
49 | 5, 48 | sylbid 239 |
. 2
⊢ ((𝑃 ∈ ℙ ∧ 𝑁 ∈ (1..^𝑃)) → (𝐼 ∈ (0..^𝑃) → ∃𝑗 ∈ (0..^𝑃)((𝐼 + (𝑗 · 𝑁)) mod 𝑃) = 0)) |
50 | 49 | 3impia 1115 |
1
⊢ ((𝑃 ∈ ℙ ∧ 𝑁 ∈ (1..^𝑃) ∧ 𝐼 ∈ (0..^𝑃)) → ∃𝑗 ∈ (0..^𝑃)((𝐼 + (𝑗 · 𝑁)) mod 𝑃) = 0) |