Step | Hyp | Ref
| Expression |
1 | | eqid 2758 |
. . . . . 6
⊢ (𝑘 ∈ ℕ0
↦ (bits‘𝑘)) =
(𝑘 ∈
ℕ0 ↦ (bits‘𝑘)) |
2 | | bitsss 15825 |
. . . . . . . . 9
⊢
(bits‘𝑘)
⊆ ℕ0 |
3 | 2 | a1i 11 |
. . . . . . . 8
⊢ (𝑘 ∈ ℕ0
→ (bits‘𝑘)
⊆ ℕ0) |
4 | | bitsfi 15836 |
. . . . . . . 8
⊢ (𝑘 ∈ ℕ0
→ (bits‘𝑘)
∈ Fin) |
5 | | elfpw 8859 |
. . . . . . . 8
⊢
((bits‘𝑘)
∈ (𝒫 ℕ0 ∩ Fin) ↔ ((bits‘𝑘) ⊆ ℕ0
∧ (bits‘𝑘) ∈
Fin)) |
6 | 3, 4, 5 | sylanbrc 586 |
. . . . . . 7
⊢ (𝑘 ∈ ℕ0
→ (bits‘𝑘)
∈ (𝒫 ℕ0 ∩ Fin)) |
7 | 6 | adantl 485 |
. . . . . 6
⊢
((⊤ ∧ 𝑘
∈ ℕ0) → (bits‘𝑘) ∈ (𝒫 ℕ0 ∩
Fin)) |
8 | | elinel2 4101 |
. . . . . . . 8
⊢ (𝑥 ∈ (𝒫
ℕ0 ∩ Fin) → 𝑥 ∈ Fin) |
9 | | 2nn0 11951 |
. . . . . . . . . 10
⊢ 2 ∈
ℕ0 |
10 | 9 | a1i 11 |
. . . . . . . . 9
⊢ ((𝑥 ∈ (𝒫
ℕ0 ∩ Fin) ∧ 𝑛 ∈ 𝑥) → 2 ∈
ℕ0) |
11 | | elfpw 8859 |
. . . . . . . . . . 11
⊢ (𝑥 ∈ (𝒫
ℕ0 ∩ Fin) ↔ (𝑥 ⊆ ℕ0 ∧ 𝑥 ∈ Fin)) |
12 | 11 | simplbi 501 |
. . . . . . . . . 10
⊢ (𝑥 ∈ (𝒫
ℕ0 ∩ Fin) → 𝑥 ⊆
ℕ0) |
13 | 12 | sselda 3892 |
. . . . . . . . 9
⊢ ((𝑥 ∈ (𝒫
ℕ0 ∩ Fin) ∧ 𝑛 ∈ 𝑥) → 𝑛 ∈ ℕ0) |
14 | 10, 13 | nn0expcld 13657 |
. . . . . . . 8
⊢ ((𝑥 ∈ (𝒫
ℕ0 ∩ Fin) ∧ 𝑛 ∈ 𝑥) → (2↑𝑛) ∈
ℕ0) |
15 | 8, 14 | fsumnn0cl 15141 |
. . . . . . 7
⊢ (𝑥 ∈ (𝒫
ℕ0 ∩ Fin) → Σ𝑛 ∈ 𝑥 (2↑𝑛) ∈
ℕ0) |
16 | 15 | adantl 485 |
. . . . . 6
⊢
((⊤ ∧ 𝑥
∈ (𝒫 ℕ0 ∩ Fin)) → Σ𝑛 ∈ 𝑥 (2↑𝑛) ∈
ℕ0) |
17 | | bitsinv2 15842 |
. . . . . . . . . 10
⊢ (𝑥 ∈ (𝒫
ℕ0 ∩ Fin) → (bits‘Σ𝑛 ∈ 𝑥 (2↑𝑛)) = 𝑥) |
18 | 17 | eqcomd 2764 |
. . . . . . . . 9
⊢ (𝑥 ∈ (𝒫
ℕ0 ∩ Fin) → 𝑥 = (bits‘Σ𝑛 ∈ 𝑥 (2↑𝑛))) |
19 | 18 | ad2antll 728 |
. . . . . . . 8
⊢
((⊤ ∧ (𝑘
∈ ℕ0 ∧ 𝑥 ∈ (𝒫 ℕ0 ∩
Fin))) → 𝑥 =
(bits‘Σ𝑛 ∈
𝑥 (2↑𝑛))) |
20 | | fveq2 6658 |
. . . . . . . . 9
⊢ (𝑘 = Σ𝑛 ∈ 𝑥 (2↑𝑛) → (bits‘𝑘) = (bits‘Σ𝑛 ∈ 𝑥 (2↑𝑛))) |
21 | 20 | eqeq2d 2769 |
. . . . . . . 8
⊢ (𝑘 = Σ𝑛 ∈ 𝑥 (2↑𝑛) → (𝑥 = (bits‘𝑘) ↔ 𝑥 = (bits‘Σ𝑛 ∈ 𝑥 (2↑𝑛)))) |
22 | 19, 21 | syl5ibrcom 250 |
. . . . . . 7
⊢
((⊤ ∧ (𝑘
∈ ℕ0 ∧ 𝑥 ∈ (𝒫 ℕ0 ∩
Fin))) → (𝑘 =
Σ𝑛 ∈ 𝑥 (2↑𝑛) → 𝑥 = (bits‘𝑘))) |
23 | | bitsinv1 15841 |
. . . . . . . . . 10
⊢ (𝑘 ∈ ℕ0
→ Σ𝑛 ∈
(bits‘𝑘)(2↑𝑛) = 𝑘) |
24 | 23 | eqcomd 2764 |
. . . . . . . . 9
⊢ (𝑘 ∈ ℕ0
→ 𝑘 = Σ𝑛 ∈ (bits‘𝑘)(2↑𝑛)) |
25 | 24 | ad2antrl 727 |
. . . . . . . 8
⊢
((⊤ ∧ (𝑘
∈ ℕ0 ∧ 𝑥 ∈ (𝒫 ℕ0 ∩
Fin))) → 𝑘 =
Σ𝑛 ∈
(bits‘𝑘)(2↑𝑛)) |
26 | | sumeq1 15093 |
. . . . . . . . 9
⊢ (𝑥 = (bits‘𝑘) → Σ𝑛 ∈ 𝑥 (2↑𝑛) = Σ𝑛 ∈ (bits‘𝑘)(2↑𝑛)) |
27 | 26 | eqeq2d 2769 |
. . . . . . . 8
⊢ (𝑥 = (bits‘𝑘) → (𝑘 = Σ𝑛 ∈ 𝑥 (2↑𝑛) ↔ 𝑘 = Σ𝑛 ∈ (bits‘𝑘)(2↑𝑛))) |
28 | 25, 27 | syl5ibrcom 250 |
. . . . . . 7
⊢
((⊤ ∧ (𝑘
∈ ℕ0 ∧ 𝑥 ∈ (𝒫 ℕ0 ∩
Fin))) → (𝑥 =
(bits‘𝑘) → 𝑘 = Σ𝑛 ∈ 𝑥 (2↑𝑛))) |
29 | 22, 28 | impbid 215 |
. . . . . 6
⊢
((⊤ ∧ (𝑘
∈ ℕ0 ∧ 𝑥 ∈ (𝒫 ℕ0 ∩
Fin))) → (𝑘 =
Σ𝑛 ∈ 𝑥 (2↑𝑛) ↔ 𝑥 = (bits‘𝑘))) |
30 | 1, 7, 16, 29 | f1ocnv2d 7394 |
. . . . 5
⊢ (⊤
→ ((𝑘 ∈
ℕ0 ↦ (bits‘𝑘)):ℕ0–1-1-onto→(𝒫 ℕ0 ∩ Fin)
∧ ◡(𝑘 ∈ ℕ0 ↦
(bits‘𝑘)) = (𝑥 ∈ (𝒫
ℕ0 ∩ Fin) ↦ Σ𝑛 ∈ 𝑥 (2↑𝑛)))) |
31 | 30 | simpld 498 |
. . . 4
⊢ (⊤
→ (𝑘 ∈
ℕ0 ↦ (bits‘𝑘)):ℕ0–1-1-onto→(𝒫 ℕ0 ∩
Fin)) |
32 | | bitsf 15826 |
. . . . . . . . 9
⊢
bits:ℤ⟶𝒫 ℕ0 |
33 | 32 | a1i 11 |
. . . . . . . 8
⊢ (⊤
→ bits:ℤ⟶𝒫 ℕ0) |
34 | 33 | feqmptd 6721 |
. . . . . . 7
⊢ (⊤
→ bits = (𝑘 ∈
ℤ ↦ (bits‘𝑘))) |
35 | 34 | reseq1d 5822 |
. . . . . 6
⊢ (⊤
→ (bits ↾ ℕ0) = ((𝑘 ∈ ℤ ↦ (bits‘𝑘)) ↾
ℕ0)) |
36 | | nn0ssz 12042 |
. . . . . . 7
⊢
ℕ0 ⊆ ℤ |
37 | | resmpt 5877 |
. . . . . . 7
⊢
(ℕ0 ⊆ ℤ → ((𝑘 ∈ ℤ ↦ (bits‘𝑘)) ↾ ℕ0)
= (𝑘 ∈
ℕ0 ↦ (bits‘𝑘))) |
38 | 36, 37 | ax-mp 5 |
. . . . . 6
⊢ ((𝑘 ∈ ℤ ↦
(bits‘𝑘)) ↾
ℕ0) = (𝑘
∈ ℕ0 ↦ (bits‘𝑘)) |
39 | 35, 38 | eqtrdi 2809 |
. . . . 5
⊢ (⊤
→ (bits ↾ ℕ0) = (𝑘 ∈ ℕ0 ↦
(bits‘𝑘))) |
40 | | f1oeq1 6590 |
. . . . 5
⊢ ((bits
↾ ℕ0) = (𝑘 ∈ ℕ0 ↦
(bits‘𝑘)) →
((bits ↾ ℕ0):ℕ0–1-1-onto→(𝒫 ℕ0 ∩ Fin)
↔ (𝑘 ∈
ℕ0 ↦ (bits‘𝑘)):ℕ0–1-1-onto→(𝒫 ℕ0 ∩
Fin))) |
41 | 39, 40 | syl 17 |
. . . 4
⊢ (⊤
→ ((bits ↾ ℕ0):ℕ0–1-1-onto→(𝒫 ℕ0 ∩ Fin)
↔ (𝑘 ∈
ℕ0 ↦ (bits‘𝑘)):ℕ0–1-1-onto→(𝒫 ℕ0 ∩
Fin))) |
42 | 31, 41 | mpbird 260 |
. . 3
⊢ (⊤
→ (bits ↾ ℕ0):ℕ0–1-1-onto→(𝒫 ℕ0 ∩
Fin)) |
43 | 39 | cnveqd 5715 |
. . . 4
⊢ (⊤
→ ◡(bits ↾
ℕ0) = ◡(𝑘 ∈ ℕ0
↦ (bits‘𝑘))) |
44 | 30 | simprd 499 |
. . . 4
⊢ (⊤
→ ◡(𝑘 ∈ ℕ0 ↦
(bits‘𝑘)) = (𝑥 ∈ (𝒫
ℕ0 ∩ Fin) ↦ Σ𝑛 ∈ 𝑥 (2↑𝑛))) |
45 | 43, 44 | eqtrd 2793 |
. . 3
⊢ (⊤
→ ◡(bits ↾
ℕ0) = (𝑥
∈ (𝒫 ℕ0 ∩ Fin) ↦ Σ𝑛 ∈ 𝑥 (2↑𝑛))) |
46 | 42, 45 | jca 515 |
. 2
⊢ (⊤
→ ((bits ↾ ℕ0):ℕ0–1-1-onto→(𝒫 ℕ0 ∩ Fin)
∧ ◡(bits ↾
ℕ0) = (𝑥
∈ (𝒫 ℕ0 ∩ Fin) ↦ Σ𝑛 ∈ 𝑥 (2↑𝑛)))) |
47 | 46 | mptru 1545 |
1
⊢ ((bits
↾ ℕ0):ℕ0–1-1-onto→(𝒫 ℕ0 ∩ Fin)
∧ ◡(bits ↾
ℕ0) = (𝑥
∈ (𝒫 ℕ0 ∩ Fin) ↦ Σ𝑛 ∈ 𝑥 (2↑𝑛))) |