| Step | Hyp | Ref
| Expression |
| 1 | | bdayfun 28133 |
. . . . . . 7
⊢ Fun bday |
| 2 | | funres 6582 |
. . . . . . 7
⊢ (Fun
bday → Fun (bday
↾ ℕ0s)) |
| 3 | 1, 2 | ax-mp 5 |
. . . . . 6
⊢ Fun
(bday ↾
ℕ0s) |
| 4 | | dmres 6002 |
. . . . . . 7
⊢ dom
(bday ↾ ℕ0s) =
(ℕ0s ∩ dom bday) |
| 5 | | bdaydm 28135 |
. . . . . . . 8
⊢ dom bday = No |
| 6 | 5 | ineq2i 4114 |
. . . . . . 7
⊢
(ℕ0s ∩ dom bday) =
(ℕ0s ∩ No) |
| 7 | | n0ssno 28706 |
. . . . . . . 8
⊢
ℕ0s ⊆ No |
| 8 | | dfss2 4094 |
. . . . . . . 8
⊢
(ℕ0s ⊆ No ↔
(ℕ0s ∩ No) =
ℕ0s) |
| 9 | 7, 8 | mpbi 233 |
. . . . . . 7
⊢
(ℕ0s ∩ No) =
ℕ0s |
| 10 | 4, 6, 9 | 3eqtri 2787 |
. . . . . 6
⊢ dom
(bday ↾ ℕ0s) =
ℕ0s |
| 11 | | df-fn 6541 |
. . . . . 6
⊢ ((bday ↾ ℕ0s) Fn
ℕ0s ↔ (Fun (bday ↾
ℕ0s) ∧ dom (bday ↾
ℕ0s) = ℕ0s)) |
| 12 | 3, 10, 11 | mpbir2an 724 |
. . . . 5
⊢ (bday ↾ ℕ0s) Fn
ℕ0s |
| 13 | | fvres 6904 |
. . . . . . . . 9
⊢ (𝑥 ∈ ℕ0s
→ ((bday ↾
ℕ0s)‘𝑥) = (bday‘𝑥)) |
| 14 | | n0bday 28738 |
. . . . . . . . 9
⊢ (𝑥 ∈ ℕ0s
→ (bday‘𝑥) ∈ ω) |
| 15 | 13, 14 | eqeltrd 2860 |
. . . . . . . 8
⊢ (𝑥 ∈ ℕ0s
→ ((bday ↾
ℕ0s)‘𝑥) ∈ ω) |
| 16 | 15 | rgen 3078 |
. . . . . . 7
⊢
∀𝑥 ∈
ℕ0s ((bday ↾
ℕ0s)‘𝑥) ∈ ω |
| 17 | | fnfvrnss 7121 |
. . . . . . 7
⊢ (((bday ↾ ℕ0s) Fn
ℕ0s ∧ ∀𝑥 ∈ ℕ0s ((bday ↾ ℕ0s)‘𝑥) ∈ ω) → ran
(bday ↾ ℕ0s) ⊆
ω) |
| 18 | 12, 16, 17 | mp2an 705 |
. . . . . 6
⊢ ran
(bday ↾ ℕ0s) ⊆
ω |
| 19 | | eqeq2 2772 |
. . . . . . . . . 10
⊢ (𝑏 = ∅ → ((bday‘𝑦) = 𝑏 ↔ (bday‘𝑦) = ∅)) |
| 20 | 19 | rexbidv 3186 |
. . . . . . . . 9
⊢ (𝑏 = ∅ → (∃𝑦 ∈ ℕ0s
(bday‘𝑦) = 𝑏 ↔ ∃𝑦 ∈ ℕ0s (bday‘𝑦) = ∅)) |
| 21 | | eqeq2 2772 |
. . . . . . . . . 10
⊢ (𝑏 = 𝑎 → ((bday‘𝑦) = 𝑏 ↔ (bday‘𝑦) = 𝑎)) |
| 22 | 21 | rexbidv 3186 |
. . . . . . . . 9
⊢ (𝑏 = 𝑎 → (∃𝑦 ∈ ℕ0s (bday‘𝑦) = 𝑏 ↔ ∃𝑦 ∈ ℕ0s (bday‘𝑦) = 𝑎)) |
| 23 | | eqeq2 2772 |
. . . . . . . . . . 11
⊢ (𝑏 = suc 𝑎 → ((bday‘𝑦) = 𝑏 ↔ (bday‘𝑦) = suc 𝑎)) |
| 24 | 23 | rexbidv 3186 |
. . . . . . . . . 10
⊢ (𝑏 = suc 𝑎 → (∃𝑦 ∈ ℕ0s (bday‘𝑦) = 𝑏 ↔ ∃𝑦 ∈ ℕ0s (bday‘𝑦) = suc 𝑎)) |
| 25 | | fveqeq2 6894 |
. . . . . . . . . . 11
⊢ (𝑦 = 𝑧 → ((bday‘𝑦) = suc 𝑎 ↔ (bday‘𝑧) = suc 𝑎)) |
| 26 | 25 | cbvrexvw 3241 |
. . . . . . . . . 10
⊢
(∃𝑦 ∈
ℕ0s (bday‘𝑦) = suc 𝑎 ↔ ∃𝑧 ∈ ℕ0s (bday‘𝑧) = suc 𝑎) |
| 27 | 24, 26 | bitrdi 290 |
. . . . . . . . 9
⊢ (𝑏 = suc 𝑎 → (∃𝑦 ∈ ℕ0s (bday‘𝑦) = 𝑏 ↔ ∃𝑧 ∈ ℕ0s (bday‘𝑧) = suc 𝑎)) |
| 28 | | eqeq2 2772 |
. . . . . . . . . 10
⊢ (𝑏 = 𝑥 → ((bday‘𝑦) = 𝑏 ↔ (bday‘𝑦) = 𝑥)) |
| 29 | 28 | rexbidv 3186 |
. . . . . . . . 9
⊢ (𝑏 = 𝑥 → (∃𝑦 ∈ ℕ0s (bday‘𝑦) = 𝑏 ↔ ∃𝑦 ∈ ℕ0s (bday‘𝑦) = 𝑥)) |
| 30 | | 0n0s 28715 |
. . . . . . . . . 10
⊢
0s ∈ ℕ0s |
| 31 | | bday0 28197 |
. . . . . . . . . 10
⊢ (bday‘ 0s ) = ∅ |
| 32 | | fveqeq2 6894 |
. . . . . . . . . . 11
⊢ (𝑦 = 0s → ((bday‘𝑦) = ∅ ↔ (bday‘ 0s ) = ∅)) |
| 33 | 32 | rspcev 3576 |
. . . . . . . . . 10
⊢ ((
0s ∈ ℕ0s ∧ (bday‘ 0s ) = ∅) →
∃𝑦 ∈
ℕ0s (bday‘𝑦) = ∅) |
| 34 | 30, 31, 33 | mp2an 705 |
. . . . . . . . 9
⊢
∃𝑦 ∈
ℕ0s (bday‘𝑦) = ∅ |
| 35 | | fveqeq2 6894 |
. . . . . . . . . . . . 13
⊢ (𝑧 = (𝑦 +s 1s ) → ((bday‘𝑧) = suc (bday‘𝑦) ↔ (bday‘(𝑦 +s 1s )) = suc (bday‘𝑦))) |
| 36 | | peano2n0s 28716 |
. . . . . . . . . . . . 13
⊢ (𝑦 ∈ ℕ0s
→ (𝑦 +s
1s ) ∈ ℕ0s) |
| 37 | | bdayn0p1 28755 |
. . . . . . . . . . . . 13
⊢ (𝑦 ∈ ℕ0s
→ (bday‘(𝑦 +s 1s )) = suc (bday‘𝑦)) |
| 38 | 35, 36, 37 | rspcedvdw 3579 |
. . . . . . . . . . . 12
⊢ (𝑦 ∈ ℕ0s
→ ∃𝑧 ∈
ℕ0s (bday‘𝑧) = suc (bday‘𝑦)) |
| 39 | 38 | adantl 487 |
. . . . . . . . . . 11
⊢ ((𝑎 ∈ ω ∧ 𝑦 ∈ ℕ0s)
→ ∃𝑧 ∈
ℕ0s (bday‘𝑧) = suc (bday‘𝑦)) |
| 40 | | suceq 6431 |
. . . . . . . . . . . . 13
⊢ ((bday‘𝑦) = 𝑎 → suc (bday‘𝑦) = suc 𝑎) |
| 41 | 40 | eqeq2d 2771 |
. . . . . . . . . . . 12
⊢ ((bday‘𝑦) = 𝑎 → ((bday‘𝑧) = suc (bday‘𝑦) ↔ (bday‘𝑧) = suc 𝑎)) |
| 42 | 41 | rexbidv 3186 |
. . . . . . . . . . 11
⊢ ((bday‘𝑦) = 𝑎 → (∃𝑧 ∈ ℕ0s (bday‘𝑧) = suc (bday‘𝑦) ↔ ∃𝑧 ∈ ℕ0s (bday‘𝑧) = suc 𝑎)) |
| 43 | 39, 42 | syl5ibcom 248 |
. . . . . . . . . 10
⊢ ((𝑎 ∈ ω ∧ 𝑦 ∈ ℕ0s)
→ ((bday‘𝑦) = 𝑎 → ∃𝑧 ∈ ℕ0s (bday‘𝑧) = suc 𝑎)) |
| 44 | 43 | rexlimdva 3163 |
. . . . . . . . 9
⊢ (𝑎 ∈ ω →
(∃𝑦 ∈
ℕ0s (bday‘𝑦) = 𝑎 → ∃𝑧 ∈ ℕ0s (bday‘𝑧) = suc 𝑎)) |
| 45 | 20, 22, 27, 29, 34, 44 | finds 7908 |
. . . . . . . 8
⊢ (𝑥 ∈ ω →
∃𝑦 ∈
ℕ0s (bday‘𝑦) = 𝑥) |
| 46 | | fvelrnb 6945 |
. . . . . . . . . 10
⊢ ((bday ↾ ℕ0s) Fn
ℕ0s → (𝑥 ∈ ran (bday ↾ ℕ0s) ↔ ∃𝑦 ∈ ℕ0s
((bday ↾ ℕ0s)‘𝑦) = 𝑥)) |
| 47 | 12, 46 | ax-mp 5 |
. . . . . . . . 9
⊢ (𝑥 ∈ ran (bday ↾ ℕ0s) ↔ ∃𝑦 ∈ ℕ0s
((bday ↾ ℕ0s)‘𝑦) = 𝑥) |
| 48 | | fvres 6904 |
. . . . . . . . . . 11
⊢ (𝑦 ∈ ℕ0s
→ ((bday ↾
ℕ0s)‘𝑦) = (bday‘𝑦)) |
| 49 | 48 | eqeq1d 2762 |
. . . . . . . . . 10
⊢ (𝑦 ∈ ℕ0s
→ (((bday ↾
ℕ0s)‘𝑦) = 𝑥 ↔ (bday‘𝑦) = 𝑥)) |
| 50 | 49 | rexbiia 3107 |
. . . . . . . . 9
⊢
(∃𝑦 ∈
ℕ0s ((bday ↾
ℕ0s)‘𝑦) = 𝑥 ↔ ∃𝑦 ∈ ℕ0s (bday‘𝑦) = 𝑥) |
| 51 | 47, 50 | bitri 278 |
. . . . . . . 8
⊢ (𝑥 ∈ ran (bday ↾ ℕ0s) ↔ ∃𝑦 ∈ ℕ0s
(bday‘𝑦) = 𝑥) |
| 52 | 45, 51 | sylibr 237 |
. . . . . . 7
⊢ (𝑥 ∈ ω → 𝑥 ∈ ran (bday ↾ ℕ0s)) |
| 53 | 52 | ssriv 3912 |
. . . . . 6
⊢ ω
⊆ ran (bday ↾
ℕ0s) |
| 54 | 18, 53 | eqssi 3924 |
. . . . 5
⊢ ran
(bday ↾ ℕ0s) =
ω |
| 55 | | df-fo 6544 |
. . . . 5
⊢ ((bday ↾
ℕ0s):ℕ0s–onto→ω ↔ ((bday ↾ ℕ0s) Fn
ℕ0s ∧ ran (bday ↾
ℕ0s) = ω)) |
| 56 | 12, 54, 55 | mpbir2an 724 |
. . . 4
⊢ (bday ↾
ℕ0s):ℕ0s–onto→ω |
| 57 | | fof 6796 |
. . . 4
⊢ ((bday ↾
ℕ0s):ℕ0s–onto→ω → (bday ↾
ℕ0s):ℕ0s⟶ω) |
| 58 | 56, 57 | ax-mp 5 |
. . 3
⊢ (bday ↾
ℕ0s):ℕ0s⟶ω |
| 59 | 13, 48 | eqeqan12d 2774 |
. . . . 5
⊢ ((𝑥 ∈ ℕ0s
∧ 𝑦 ∈
ℕ0s) → (((bday ↾
ℕ0s)‘𝑥) = ((bday
↾ ℕ0s)‘𝑦) ↔ (bday‘𝑥) = (bday‘𝑦))) |
| 60 | | n0on 28722 |
. . . . . 6
⊢ (𝑥 ∈ ℕ0s
→ 𝑥 ∈
Ons) |
| 61 | | n0on 28722 |
. . . . . 6
⊢ (𝑦 ∈ ℕ0s
→ 𝑦 ∈
Ons) |
| 62 | | bday11on 28651 |
. . . . . . 7
⊢ ((𝑥 ∈ Ons ∧
𝑦 ∈ Ons
∧ (bday‘𝑥) = (bday‘𝑦)) → 𝑥 = 𝑦) |
| 63 | 62 | 3expia 1139 |
. . . . . 6
⊢ ((𝑥 ∈ Ons ∧
𝑦 ∈ Ons)
→ ((bday‘𝑥) = (bday‘𝑦) → 𝑥 = 𝑦)) |
| 64 | 60, 61, 63 | syl2an 608 |
. . . . 5
⊢ ((𝑥 ∈ ℕ0s
∧ 𝑦 ∈
ℕ0s) → ((bday‘𝑥) = (bday‘𝑦) → 𝑥 = 𝑦)) |
| 65 | 59, 64 | sylbid 243 |
. . . 4
⊢ ((𝑥 ∈ ℕ0s
∧ 𝑦 ∈
ℕ0s) → (((bday ↾
ℕ0s)‘𝑥) = ((bday
↾ ℕ0s)‘𝑦) → 𝑥 = 𝑦)) |
| 66 | 65 | rgen2 3202 |
. . 3
⊢
∀𝑥 ∈
ℕ0s ∀𝑦 ∈ ℕ0s (((bday ↾ ℕ0s)‘𝑥) = ((bday ↾ ℕ0s)‘𝑦) → 𝑥 = 𝑦) |
| 67 | | dff13 7258 |
. . 3
⊢ ((bday ↾
ℕ0s):ℕ0s–1-1→ω ↔ ((bday ↾
ℕ0s):ℕ0s⟶ω ∧ ∀𝑥 ∈ ℕ0s
∀𝑦 ∈
ℕ0s (((bday ↾
ℕ0s)‘𝑥) = ((bday
↾ ℕ0s)‘𝑦) → 𝑥 = 𝑦))) |
| 68 | 58, 66, 67 | mpbir2an 724 |
. 2
⊢ (bday ↾
ℕ0s):ℕ0s–1-1→ω |
| 69 | | df-f1o 6545 |
. 2
⊢ ((bday ↾
ℕ0s):ℕ0s–1-1-onto→ω ↔ ((bday ↾
ℕ0s):ℕ0s–1-1→ω ∧ (bday ↾
ℕ0s):ℕ0s–onto→ω)) |
| 70 | 68, 56, 69 | mpbir2an 724 |
1
⊢ (bday ↾
ℕ0s):ℕ0s–1-1-onto→ω |