Step | Hyp | Ref
| Expression |
1 | | phival 16396 |
. 2
⊢ (𝑁 ∈ ℕ →
(ϕ‘𝑁) =
(♯‘{𝑥 ∈
(1...𝑁) ∣ (𝑥 gcd 𝑁) = 1})) |
2 | | fzfi 13620 |
. . . . . . 7
⊢
(1...𝑁) ∈
Fin |
3 | | ssrab2 4009 |
. . . . . . 7
⊢ {𝑥 ∈ (1...𝑁) ∣ (𝑥 gcd 𝑁) = 1} ⊆ (1...𝑁) |
4 | | ssfi 8918 |
. . . . . . 7
⊢
(((1...𝑁) ∈ Fin
∧ {𝑥 ∈ (1...𝑁) ∣ (𝑥 gcd 𝑁) = 1} ⊆ (1...𝑁)) → {𝑥 ∈ (1...𝑁) ∣ (𝑥 gcd 𝑁) = 1} ∈ Fin) |
5 | 2, 3, 4 | mp2an 688 |
. . . . . 6
⊢ {𝑥 ∈ (1...𝑁) ∣ (𝑥 gcd 𝑁) = 1} ∈ Fin |
6 | | hashcl 13999 |
. . . . . 6
⊢ ({𝑥 ∈ (1...𝑁) ∣ (𝑥 gcd 𝑁) = 1} ∈ Fin →
(♯‘{𝑥 ∈
(1...𝑁) ∣ (𝑥 gcd 𝑁) = 1}) ∈
ℕ0) |
7 | 5, 6 | ax-mp 5 |
. . . . 5
⊢
(♯‘{𝑥
∈ (1...𝑁) ∣
(𝑥 gcd 𝑁) = 1}) ∈
ℕ0 |
8 | 7 | nn0zi 12275 |
. . . 4
⊢
(♯‘{𝑥
∈ (1...𝑁) ∣
(𝑥 gcd 𝑁) = 1}) ∈ ℤ |
9 | 8 | a1i 11 |
. . 3
⊢ (𝑁 ∈ ℕ →
(♯‘{𝑥 ∈
(1...𝑁) ∣ (𝑥 gcd 𝑁) = 1}) ∈ ℤ) |
10 | | 1z 12280 |
. . . . 5
⊢ 1 ∈
ℤ |
11 | | hashsng 14012 |
. . . . 5
⊢ (1 ∈
ℤ → (♯‘{1}) = 1) |
12 | 10, 11 | ax-mp 5 |
. . . 4
⊢
(♯‘{1}) = 1 |
13 | | ovex 7288 |
. . . . . . 7
⊢
(1...𝑁) ∈
V |
14 | 13 | rabex 5251 |
. . . . . 6
⊢ {𝑥 ∈ (1...𝑁) ∣ (𝑥 gcd 𝑁) = 1} ∈ V |
15 | | oveq1 7262 |
. . . . . . . . 9
⊢ (𝑥 = 1 → (𝑥 gcd 𝑁) = (1 gcd 𝑁)) |
16 | 15 | eqeq1d 2740 |
. . . . . . . 8
⊢ (𝑥 = 1 → ((𝑥 gcd 𝑁) = 1 ↔ (1 gcd 𝑁) = 1)) |
17 | | eluzfz1 13192 |
. . . . . . . . 9
⊢ (𝑁 ∈
(ℤ≥‘1) → 1 ∈ (1...𝑁)) |
18 | | nnuz 12550 |
. . . . . . . . 9
⊢ ℕ =
(ℤ≥‘1) |
19 | 17, 18 | eleq2s 2857 |
. . . . . . . 8
⊢ (𝑁 ∈ ℕ → 1 ∈
(1...𝑁)) |
20 | | nnz 12272 |
. . . . . . . . 9
⊢ (𝑁 ∈ ℕ → 𝑁 ∈
ℤ) |
21 | | 1gcd 16169 |
. . . . . . . . 9
⊢ (𝑁 ∈ ℤ → (1 gcd
𝑁) = 1) |
22 | 20, 21 | syl 17 |
. . . . . . . 8
⊢ (𝑁 ∈ ℕ → (1 gcd
𝑁) = 1) |
23 | 16, 19, 22 | elrabd 3619 |
. . . . . . 7
⊢ (𝑁 ∈ ℕ → 1 ∈
{𝑥 ∈ (1...𝑁) ∣ (𝑥 gcd 𝑁) = 1}) |
24 | 23 | snssd 4739 |
. . . . . 6
⊢ (𝑁 ∈ ℕ → {1}
⊆ {𝑥 ∈
(1...𝑁) ∣ (𝑥 gcd 𝑁) = 1}) |
25 | | ssdomg 8741 |
. . . . . 6
⊢ ({𝑥 ∈ (1...𝑁) ∣ (𝑥 gcd 𝑁) = 1} ∈ V → ({1} ⊆ {𝑥 ∈ (1...𝑁) ∣ (𝑥 gcd 𝑁) = 1} → {1} ≼ {𝑥 ∈ (1...𝑁) ∣ (𝑥 gcd 𝑁) = 1})) |
26 | 14, 24, 25 | mpsyl 68 |
. . . . 5
⊢ (𝑁 ∈ ℕ → {1}
≼ {𝑥 ∈
(1...𝑁) ∣ (𝑥 gcd 𝑁) = 1}) |
27 | | snfi 8788 |
. . . . . 6
⊢ {1}
∈ Fin |
28 | | hashdom 14022 |
. . . . . 6
⊢ (({1}
∈ Fin ∧ {𝑥 ∈
(1...𝑁) ∣ (𝑥 gcd 𝑁) = 1} ∈ Fin) →
((♯‘{1}) ≤ (♯‘{𝑥 ∈ (1...𝑁) ∣ (𝑥 gcd 𝑁) = 1}) ↔ {1} ≼ {𝑥 ∈ (1...𝑁) ∣ (𝑥 gcd 𝑁) = 1})) |
29 | 27, 5, 28 | mp2an 688 |
. . . . 5
⊢
((♯‘{1}) ≤ (♯‘{𝑥 ∈ (1...𝑁) ∣ (𝑥 gcd 𝑁) = 1}) ↔ {1} ≼ {𝑥 ∈ (1...𝑁) ∣ (𝑥 gcd 𝑁) = 1}) |
30 | 26, 29 | sylibr 233 |
. . . 4
⊢ (𝑁 ∈ ℕ →
(♯‘{1}) ≤ (♯‘{𝑥 ∈ (1...𝑁) ∣ (𝑥 gcd 𝑁) = 1})) |
31 | 12, 30 | eqbrtrrid 5106 |
. . 3
⊢ (𝑁 ∈ ℕ → 1 ≤
(♯‘{𝑥 ∈
(1...𝑁) ∣ (𝑥 gcd 𝑁) = 1})) |
32 | | ssdomg 8741 |
. . . . . 6
⊢
((1...𝑁) ∈ V
→ ({𝑥 ∈
(1...𝑁) ∣ (𝑥 gcd 𝑁) = 1} ⊆ (1...𝑁) → {𝑥 ∈ (1...𝑁) ∣ (𝑥 gcd 𝑁) = 1} ≼ (1...𝑁))) |
33 | 13, 3, 32 | mp2 9 |
. . . . 5
⊢ {𝑥 ∈ (1...𝑁) ∣ (𝑥 gcd 𝑁) = 1} ≼ (1...𝑁) |
34 | | hashdom 14022 |
. . . . . 6
⊢ (({𝑥 ∈ (1...𝑁) ∣ (𝑥 gcd 𝑁) = 1} ∈ Fin ∧ (1...𝑁) ∈ Fin) →
((♯‘{𝑥 ∈
(1...𝑁) ∣ (𝑥 gcd 𝑁) = 1}) ≤ (♯‘(1...𝑁)) ↔ {𝑥 ∈ (1...𝑁) ∣ (𝑥 gcd 𝑁) = 1} ≼ (1...𝑁))) |
35 | 5, 2, 34 | mp2an 688 |
. . . . 5
⊢
((♯‘{𝑥
∈ (1...𝑁) ∣
(𝑥 gcd 𝑁) = 1}) ≤ (♯‘(1...𝑁)) ↔ {𝑥 ∈ (1...𝑁) ∣ (𝑥 gcd 𝑁) = 1} ≼ (1...𝑁)) |
36 | 33, 35 | mpbir 230 |
. . . 4
⊢
(♯‘{𝑥
∈ (1...𝑁) ∣
(𝑥 gcd 𝑁) = 1}) ≤ (♯‘(1...𝑁)) |
37 | | nnnn0 12170 |
. . . . 5
⊢ (𝑁 ∈ ℕ → 𝑁 ∈
ℕ0) |
38 | | hashfz1 13988 |
. . . . 5
⊢ (𝑁 ∈ ℕ0
→ (♯‘(1...𝑁)) = 𝑁) |
39 | 37, 38 | syl 17 |
. . . 4
⊢ (𝑁 ∈ ℕ →
(♯‘(1...𝑁)) =
𝑁) |
40 | 36, 39 | breqtrid 5107 |
. . 3
⊢ (𝑁 ∈ ℕ →
(♯‘{𝑥 ∈
(1...𝑁) ∣ (𝑥 gcd 𝑁) = 1}) ≤ 𝑁) |
41 | | elfz1 13173 |
. . . 4
⊢ ((1
∈ ℤ ∧ 𝑁
∈ ℤ) → ((♯‘{𝑥 ∈ (1...𝑁) ∣ (𝑥 gcd 𝑁) = 1}) ∈ (1...𝑁) ↔ ((♯‘{𝑥 ∈ (1...𝑁) ∣ (𝑥 gcd 𝑁) = 1}) ∈ ℤ ∧ 1 ≤
(♯‘{𝑥 ∈
(1...𝑁) ∣ (𝑥 gcd 𝑁) = 1}) ∧ (♯‘{𝑥 ∈ (1...𝑁) ∣ (𝑥 gcd 𝑁) = 1}) ≤ 𝑁))) |
42 | 10, 20, 41 | sylancr 586 |
. . 3
⊢ (𝑁 ∈ ℕ →
((♯‘{𝑥 ∈
(1...𝑁) ∣ (𝑥 gcd 𝑁) = 1}) ∈ (1...𝑁) ↔ ((♯‘{𝑥 ∈ (1...𝑁) ∣ (𝑥 gcd 𝑁) = 1}) ∈ ℤ ∧ 1 ≤
(♯‘{𝑥 ∈
(1...𝑁) ∣ (𝑥 gcd 𝑁) = 1}) ∧ (♯‘{𝑥 ∈ (1...𝑁) ∣ (𝑥 gcd 𝑁) = 1}) ≤ 𝑁))) |
43 | 9, 31, 40, 42 | mpbir3and 1340 |
. 2
⊢ (𝑁 ∈ ℕ →
(♯‘{𝑥 ∈
(1...𝑁) ∣ (𝑥 gcd 𝑁) = 1}) ∈ (1...𝑁)) |
44 | 1, 43 | eqeltrd 2839 |
1
⊢ (𝑁 ∈ ℕ →
(ϕ‘𝑁) ∈
(1...𝑁)) |