Step | Hyp | Ref
| Expression |
1 | | eqid 2739 |
. . . . . 6
⊢ (𝑘 ∈ ℕ0
↦ (bits‘𝑘)) =
(𝑘 ∈
ℕ0 ↦ (bits‘𝑘)) |
2 | | bitsss 16114 |
. . . . . . . . 9
⊢
(bits‘𝑘)
⊆ ℕ0 |
3 | 2 | a1i 11 |
. . . . . . . 8
⊢ (𝑘 ∈ ℕ0
→ (bits‘𝑘)
⊆ ℕ0) |
4 | | bitsfi 16125 |
. . . . . . . 8
⊢ (𝑘 ∈ ℕ0
→ (bits‘𝑘)
∈ Fin) |
5 | | elfpw 9082 |
. . . . . . . 8
⊢
((bits‘𝑘)
∈ (𝒫 ℕ0 ∩ Fin) ↔ ((bits‘𝑘) ⊆ ℕ0
∧ (bits‘𝑘) ∈
Fin)) |
6 | 3, 4, 5 | sylanbrc 582 |
. . . . . . 7
⊢ (𝑘 ∈ ℕ0
→ (bits‘𝑘)
∈ (𝒫 ℕ0 ∩ Fin)) |
7 | 6 | adantl 481 |
. . . . . 6
⊢
((⊤ ∧ 𝑘
∈ ℕ0) → (bits‘𝑘) ∈ (𝒫 ℕ0 ∩
Fin)) |
8 | | elinel2 4134 |
. . . . . . . 8
⊢ (𝑥 ∈ (𝒫
ℕ0 ∩ Fin) → 𝑥 ∈ Fin) |
9 | | 2nn0 12233 |
. . . . . . . . . 10
⊢ 2 ∈
ℕ0 |
10 | 9 | a1i 11 |
. . . . . . . . 9
⊢ ((𝑥 ∈ (𝒫
ℕ0 ∩ Fin) ∧ 𝑛 ∈ 𝑥) → 2 ∈
ℕ0) |
11 | | elfpw 9082 |
. . . . . . . . . . 11
⊢ (𝑥 ∈ (𝒫
ℕ0 ∩ Fin) ↔ (𝑥 ⊆ ℕ0 ∧ 𝑥 ∈ Fin)) |
12 | 11 | simplbi 497 |
. . . . . . . . . 10
⊢ (𝑥 ∈ (𝒫
ℕ0 ∩ Fin) → 𝑥 ⊆
ℕ0) |
13 | 12 | sselda 3925 |
. . . . . . . . 9
⊢ ((𝑥 ∈ (𝒫
ℕ0 ∩ Fin) ∧ 𝑛 ∈ 𝑥) → 𝑛 ∈ ℕ0) |
14 | 10, 13 | nn0expcld 13942 |
. . . . . . . 8
⊢ ((𝑥 ∈ (𝒫
ℕ0 ∩ Fin) ∧ 𝑛 ∈ 𝑥) → (2↑𝑛) ∈
ℕ0) |
15 | 8, 14 | fsumnn0cl 15429 |
. . . . . . 7
⊢ (𝑥 ∈ (𝒫
ℕ0 ∩ Fin) → Σ𝑛 ∈ 𝑥 (2↑𝑛) ∈
ℕ0) |
16 | 15 | adantl 481 |
. . . . . 6
⊢
((⊤ ∧ 𝑥
∈ (𝒫 ℕ0 ∩ Fin)) → Σ𝑛 ∈ 𝑥 (2↑𝑛) ∈
ℕ0) |
17 | | bitsinv2 16131 |
. . . . . . . . . 10
⊢ (𝑥 ∈ (𝒫
ℕ0 ∩ Fin) → (bits‘Σ𝑛 ∈ 𝑥 (2↑𝑛)) = 𝑥) |
18 | 17 | eqcomd 2745 |
. . . . . . . . 9
⊢ (𝑥 ∈ (𝒫
ℕ0 ∩ Fin) → 𝑥 = (bits‘Σ𝑛 ∈ 𝑥 (2↑𝑛))) |
19 | 18 | ad2antll 725 |
. . . . . . . 8
⊢
((⊤ ∧ (𝑘
∈ ℕ0 ∧ 𝑥 ∈ (𝒫 ℕ0 ∩
Fin))) → 𝑥 =
(bits‘Σ𝑛 ∈
𝑥 (2↑𝑛))) |
20 | | fveq2 6768 |
. . . . . . . . 9
⊢ (𝑘 = Σ𝑛 ∈ 𝑥 (2↑𝑛) → (bits‘𝑘) = (bits‘Σ𝑛 ∈ 𝑥 (2↑𝑛))) |
21 | 20 | eqeq2d 2750 |
. . . . . . . 8
⊢ (𝑘 = Σ𝑛 ∈ 𝑥 (2↑𝑛) → (𝑥 = (bits‘𝑘) ↔ 𝑥 = (bits‘Σ𝑛 ∈ 𝑥 (2↑𝑛)))) |
22 | 19, 21 | syl5ibrcom 246 |
. . . . . . 7
⊢
((⊤ ∧ (𝑘
∈ ℕ0 ∧ 𝑥 ∈ (𝒫 ℕ0 ∩
Fin))) → (𝑘 =
Σ𝑛 ∈ 𝑥 (2↑𝑛) → 𝑥 = (bits‘𝑘))) |
23 | | bitsinv1 16130 |
. . . . . . . . . 10
⊢ (𝑘 ∈ ℕ0
→ Σ𝑛 ∈
(bits‘𝑘)(2↑𝑛) = 𝑘) |
24 | 23 | eqcomd 2745 |
. . . . . . . . 9
⊢ (𝑘 ∈ ℕ0
→ 𝑘 = Σ𝑛 ∈ (bits‘𝑘)(2↑𝑛)) |
25 | 24 | ad2antrl 724 |
. . . . . . . 8
⊢
((⊤ ∧ (𝑘
∈ ℕ0 ∧ 𝑥 ∈ (𝒫 ℕ0 ∩
Fin))) → 𝑘 =
Σ𝑛 ∈
(bits‘𝑘)(2↑𝑛)) |
26 | | sumeq1 15381 |
. . . . . . . . 9
⊢ (𝑥 = (bits‘𝑘) → Σ𝑛 ∈ 𝑥 (2↑𝑛) = Σ𝑛 ∈ (bits‘𝑘)(2↑𝑛)) |
27 | 26 | eqeq2d 2750 |
. . . . . . . 8
⊢ (𝑥 = (bits‘𝑘) → (𝑘 = Σ𝑛 ∈ 𝑥 (2↑𝑛) ↔ 𝑘 = Σ𝑛 ∈ (bits‘𝑘)(2↑𝑛))) |
28 | 25, 27 | syl5ibrcom 246 |
. . . . . . 7
⊢
((⊤ ∧ (𝑘
∈ ℕ0 ∧ 𝑥 ∈ (𝒫 ℕ0 ∩
Fin))) → (𝑥 =
(bits‘𝑘) → 𝑘 = Σ𝑛 ∈ 𝑥 (2↑𝑛))) |
29 | 22, 28 | impbid 211 |
. . . . . 6
⊢
((⊤ ∧ (𝑘
∈ ℕ0 ∧ 𝑥 ∈ (𝒫 ℕ0 ∩
Fin))) → (𝑘 =
Σ𝑛 ∈ 𝑥 (2↑𝑛) ↔ 𝑥 = (bits‘𝑘))) |
30 | 1, 7, 16, 29 | f1ocnv2d 7513 |
. . . . 5
⊢ (⊤
→ ((𝑘 ∈
ℕ0 ↦ (bits‘𝑘)):ℕ0–1-1-onto→(𝒫 ℕ0 ∩ Fin)
∧ ◡(𝑘 ∈ ℕ0 ↦
(bits‘𝑘)) = (𝑥 ∈ (𝒫
ℕ0 ∩ Fin) ↦ Σ𝑛 ∈ 𝑥 (2↑𝑛)))) |
31 | 30 | simpld 494 |
. . . 4
⊢ (⊤
→ (𝑘 ∈
ℕ0 ↦ (bits‘𝑘)):ℕ0–1-1-onto→(𝒫 ℕ0 ∩
Fin)) |
32 | | bitsf 16115 |
. . . . . . . . 9
⊢
bits:ℤ⟶𝒫 ℕ0 |
33 | 32 | a1i 11 |
. . . . . . . 8
⊢ (⊤
→ bits:ℤ⟶𝒫 ℕ0) |
34 | 33 | feqmptd 6831 |
. . . . . . 7
⊢ (⊤
→ bits = (𝑘 ∈
ℤ ↦ (bits‘𝑘))) |
35 | 34 | reseq1d 5887 |
. . . . . 6
⊢ (⊤
→ (bits ↾ ℕ0) = ((𝑘 ∈ ℤ ↦ (bits‘𝑘)) ↾
ℕ0)) |
36 | | nn0ssz 12324 |
. . . . . . 7
⊢
ℕ0 ⊆ ℤ |
37 | | resmpt 5942 |
. . . . . . 7
⊢
(ℕ0 ⊆ ℤ → ((𝑘 ∈ ℤ ↦ (bits‘𝑘)) ↾ ℕ0)
= (𝑘 ∈
ℕ0 ↦ (bits‘𝑘))) |
38 | 36, 37 | ax-mp 5 |
. . . . . 6
⊢ ((𝑘 ∈ ℤ ↦
(bits‘𝑘)) ↾
ℕ0) = (𝑘
∈ ℕ0 ↦ (bits‘𝑘)) |
39 | 35, 38 | eqtrdi 2795 |
. . . . 5
⊢ (⊤
→ (bits ↾ ℕ0) = (𝑘 ∈ ℕ0 ↦
(bits‘𝑘))) |
40 | 39 | f1oeq1d 6707 |
. . . 4
⊢ (⊤
→ ((bits ↾ ℕ0):ℕ0–1-1-onto→(𝒫 ℕ0 ∩ Fin)
↔ (𝑘 ∈
ℕ0 ↦ (bits‘𝑘)):ℕ0–1-1-onto→(𝒫 ℕ0 ∩
Fin))) |
41 | 31, 40 | mpbird 256 |
. . 3
⊢ (⊤
→ (bits ↾ ℕ0):ℕ0–1-1-onto→(𝒫 ℕ0 ∩
Fin)) |
42 | 39 | cnveqd 5781 |
. . . 4
⊢ (⊤
→ ◡(bits ↾
ℕ0) = ◡(𝑘 ∈ ℕ0
↦ (bits‘𝑘))) |
43 | 30 | simprd 495 |
. . . 4
⊢ (⊤
→ ◡(𝑘 ∈ ℕ0 ↦
(bits‘𝑘)) = (𝑥 ∈ (𝒫
ℕ0 ∩ Fin) ↦ Σ𝑛 ∈ 𝑥 (2↑𝑛))) |
44 | 42, 43 | eqtrd 2779 |
. . 3
⊢ (⊤
→ ◡(bits ↾
ℕ0) = (𝑥
∈ (𝒫 ℕ0 ∩ Fin) ↦ Σ𝑛 ∈ 𝑥 (2↑𝑛))) |
45 | 41, 44 | jca 511 |
. 2
⊢ (⊤
→ ((bits ↾ ℕ0):ℕ0–1-1-onto→(𝒫 ℕ0 ∩ Fin)
∧ ◡(bits ↾
ℕ0) = (𝑥
∈ (𝒫 ℕ0 ∩ Fin) ↦ Σ𝑛 ∈ 𝑥 (2↑𝑛)))) |
46 | 45 | mptru 1548 |
1
⊢ ((bits
↾ ℕ0):ℕ0–1-1-onto→(𝒫 ℕ0 ∩ Fin)
∧ ◡(bits ↾
ℕ0) = (𝑥
∈ (𝒫 ℕ0 ∩ Fin) ↦ Σ𝑛 ∈ 𝑥 (2↑𝑛))) |