MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  bdayn0sf1o Structured version   Visualization version   GIF version

Theorem bdayn0sf1o 28266
Description: The birthday function restricted to the non-negative surreal integers is a bijection with the finite ordinals. (Contributed by Scott Fenton, 7-Nov-2025.)
Assertion
Ref Expression
bdayn0sf1o ( bday ↾ ℕ0s):ℕ0s1-1-onto→ω

Proof of Theorem bdayn0sf1o
Dummy variables 𝑎 𝑏 𝑥 𝑦 𝑧 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 bdayfun 27682 . . . . . . 7 Fun bday
2 funres 6524 . . . . . . 7 (Fun bday → Fun ( bday ↾ ℕ0s))
31, 2ax-mp 5 . . . . . 6 Fun ( bday ↾ ℕ0s)
4 dmres 5963 . . . . . . 7 dom ( bday ↾ ℕ0s) = (ℕ0s ∩ dom bday )
5 bdaydm 27684 . . . . . . . 8 dom bday = No
65ineq2i 4168 . . . . . . 7 (ℕ0s ∩ dom bday ) = (ℕ0s No )
7 n0ssno 28220 . . . . . . . 8 0s No
8 dfss2 3921 . . . . . . . 8 (ℕ0s No ↔ (ℕ0s No ) = ℕ0s)
97, 8mpbi 230 . . . . . . 7 (ℕ0s No ) = ℕ0s
104, 6, 93eqtri 2756 . . . . . 6 dom ( bday ↾ ℕ0s) = ℕ0s
11 df-fn 6485 . . . . . 6 (( bday ↾ ℕ0s) Fn ℕ0s ↔ (Fun ( bday ↾ ℕ0s) ∧ dom ( bday ↾ ℕ0s) = ℕ0s))
123, 10, 11mpbir2an 711 . . . . 5 ( bday ↾ ℕ0s) Fn ℕ0s
13 fvres 6841 . . . . . . . . 9 (𝑥 ∈ ℕ0s → (( bday ↾ ℕ0s)‘𝑥) = ( bday 𝑥))
14 n0sbday 28251 . . . . . . . . 9 (𝑥 ∈ ℕ0s → ( bday 𝑥) ∈ ω)
1513, 14eqeltrd 2828 . . . . . . . 8 (𝑥 ∈ ℕ0s → (( bday ↾ ℕ0s)‘𝑥) ∈ ω)
1615rgen 3046 . . . . . . 7 𝑥 ∈ ℕ0s (( bday ↾ ℕ0s)‘𝑥) ∈ ω
17 fnfvrnss 7055 . . . . . . 7 ((( bday ↾ ℕ0s) Fn ℕ0s ∧ ∀𝑥 ∈ ℕ0s (( bday ↾ ℕ0s)‘𝑥) ∈ ω) → ran ( bday ↾ ℕ0s) ⊆ ω)
1812, 16, 17mp2an 692 . . . . . 6 ran ( bday ↾ ℕ0s) ⊆ ω
19 eqeq2 2741 . . . . . . . . . 10 (𝑏 = ∅ → (( bday 𝑦) = 𝑏 ↔ ( bday 𝑦) = ∅))
2019rexbidv 3153 . . . . . . . . 9 (𝑏 = ∅ → (∃𝑦 ∈ ℕ0s ( bday 𝑦) = 𝑏 ↔ ∃𝑦 ∈ ℕ0s ( bday 𝑦) = ∅))
21 eqeq2 2741 . . . . . . . . . 10 (𝑏 = 𝑎 → (( bday 𝑦) = 𝑏 ↔ ( bday 𝑦) = 𝑎))
2221rexbidv 3153 . . . . . . . . 9 (𝑏 = 𝑎 → (∃𝑦 ∈ ℕ0s ( bday 𝑦) = 𝑏 ↔ ∃𝑦 ∈ ℕ0s ( bday 𝑦) = 𝑎))
23 eqeq2 2741 . . . . . . . . . . 11 (𝑏 = suc 𝑎 → (( bday 𝑦) = 𝑏 ↔ ( bday 𝑦) = suc 𝑎))
2423rexbidv 3153 . . . . . . . . . 10 (𝑏 = suc 𝑎 → (∃𝑦 ∈ ℕ0s ( bday 𝑦) = 𝑏 ↔ ∃𝑦 ∈ ℕ0s ( bday 𝑦) = suc 𝑎))
25 fveqeq2 6831 . . . . . . . . . . 11 (𝑦 = 𝑧 → (( bday 𝑦) = suc 𝑎 ↔ ( bday 𝑧) = suc 𝑎))
2625cbvrexvw 3208 . . . . . . . . . 10 (∃𝑦 ∈ ℕ0s ( bday 𝑦) = suc 𝑎 ↔ ∃𝑧 ∈ ℕ0s ( bday 𝑧) = suc 𝑎)
2724, 26bitrdi 287 . . . . . . . . 9 (𝑏 = suc 𝑎 → (∃𝑦 ∈ ℕ0s ( bday 𝑦) = 𝑏 ↔ ∃𝑧 ∈ ℕ0s ( bday 𝑧) = suc 𝑎))
28 eqeq2 2741 . . . . . . . . . 10 (𝑏 = 𝑥 → (( bday 𝑦) = 𝑏 ↔ ( bday 𝑦) = 𝑥))
2928rexbidv 3153 . . . . . . . . 9 (𝑏 = 𝑥 → (∃𝑦 ∈ ℕ0s ( bday 𝑦) = 𝑏 ↔ ∃𝑦 ∈ ℕ0s ( bday 𝑦) = 𝑥))
30 0n0s 28229 . . . . . . . . . 10 0s ∈ ℕ0s
31 bday0s 27743 . . . . . . . . . 10 ( bday ‘ 0s ) = ∅
32 fveqeq2 6831 . . . . . . . . . . 11 (𝑦 = 0s → (( bday 𝑦) = ∅ ↔ ( bday ‘ 0s ) = ∅))
3332rspcev 3577 . . . . . . . . . 10 (( 0s ∈ ℕ0s ∧ ( bday ‘ 0s ) = ∅) → ∃𝑦 ∈ ℕ0s ( bday 𝑦) = ∅)
3430, 31, 33mp2an 692 . . . . . . . . 9 𝑦 ∈ ℕ0s ( bday 𝑦) = ∅
35 fveqeq2 6831 . . . . . . . . . . . . 13 (𝑧 = (𝑦 +s 1s ) → (( bday 𝑧) = suc ( bday 𝑦) ↔ ( bday ‘(𝑦 +s 1s )) = suc ( bday 𝑦)))
36 peano2n0s 28230 . . . . . . . . . . . . 13 (𝑦 ∈ ℕ0s → (𝑦 +s 1s ) ∈ ℕ0s)
37 bdayn0p1 28265 . . . . . . . . . . . . 13 (𝑦 ∈ ℕ0s → ( bday ‘(𝑦 +s 1s )) = suc ( bday 𝑦))
3835, 36, 37rspcedvdw 3580 . . . . . . . . . . . 12 (𝑦 ∈ ℕ0s → ∃𝑧 ∈ ℕ0s ( bday 𝑧) = suc ( bday 𝑦))
3938adantl 481 . . . . . . . . . . 11 ((𝑎 ∈ ω ∧ 𝑦 ∈ ℕ0s) → ∃𝑧 ∈ ℕ0s ( bday 𝑧) = suc ( bday 𝑦))
40 suceq 6375 . . . . . . . . . . . . 13 (( bday 𝑦) = 𝑎 → suc ( bday 𝑦) = suc 𝑎)
4140eqeq2d 2740 . . . . . . . . . . . 12 (( bday 𝑦) = 𝑎 → (( bday 𝑧) = suc ( bday 𝑦) ↔ ( bday 𝑧) = suc 𝑎))
4241rexbidv 3153 . . . . . . . . . . 11 (( bday 𝑦) = 𝑎 → (∃𝑧 ∈ ℕ0s ( bday 𝑧) = suc ( bday 𝑦) ↔ ∃𝑧 ∈ ℕ0s ( bday 𝑧) = suc 𝑎))
4339, 42syl5ibcom 245 . . . . . . . . . 10 ((𝑎 ∈ ω ∧ 𝑦 ∈ ℕ0s) → (( bday 𝑦) = 𝑎 → ∃𝑧 ∈ ℕ0s ( bday 𝑧) = suc 𝑎))
4443rexlimdva 3130 . . . . . . . . 9 (𝑎 ∈ ω → (∃𝑦 ∈ ℕ0s ( bday 𝑦) = 𝑎 → ∃𝑧 ∈ ℕ0s ( bday 𝑧) = suc 𝑎))
4520, 22, 27, 29, 34, 44finds 7829 . . . . . . . 8 (𝑥 ∈ ω → ∃𝑦 ∈ ℕ0s ( bday 𝑦) = 𝑥)
46 fvelrnb 6883 . . . . . . . . . 10 (( bday ↾ ℕ0s) Fn ℕ0s → (𝑥 ∈ ran ( bday ↾ ℕ0s) ↔ ∃𝑦 ∈ ℕ0s (( bday ↾ ℕ0s)‘𝑦) = 𝑥))
4712, 46ax-mp 5 . . . . . . . . 9 (𝑥 ∈ ran ( bday ↾ ℕ0s) ↔ ∃𝑦 ∈ ℕ0s (( bday ↾ ℕ0s)‘𝑦) = 𝑥)
48 fvres 6841 . . . . . . . . . . 11 (𝑦 ∈ ℕ0s → (( bday ↾ ℕ0s)‘𝑦) = ( bday 𝑦))
4948eqeq1d 2731 . . . . . . . . . 10 (𝑦 ∈ ℕ0s → ((( bday ↾ ℕ0s)‘𝑦) = 𝑥 ↔ ( bday 𝑦) = 𝑥))
5049rexbiia 3074 . . . . . . . . 9 (∃𝑦 ∈ ℕ0s (( bday ↾ ℕ0s)‘𝑦) = 𝑥 ↔ ∃𝑦 ∈ ℕ0s ( bday 𝑦) = 𝑥)
5147, 50bitri 275 . . . . . . . 8 (𝑥 ∈ ran ( bday ↾ ℕ0s) ↔ ∃𝑦 ∈ ℕ0s ( bday 𝑦) = 𝑥)
5245, 51sylibr 234 . . . . . . 7 (𝑥 ∈ ω → 𝑥 ∈ ran ( bday ↾ ℕ0s))
5352ssriv 3939 . . . . . 6 ω ⊆ ran ( bday ↾ ℕ0s)
5418, 53eqssi 3952 . . . . 5 ran ( bday ↾ ℕ0s) = ω
55 df-fo 6488 . . . . 5 (( bday ↾ ℕ0s):ℕ0sonto→ω ↔ (( bday ↾ ℕ0s) Fn ℕ0s ∧ ran ( bday ↾ ℕ0s) = ω))
5612, 54, 55mpbir2an 711 . . . 4 ( bday ↾ ℕ0s):ℕ0sonto→ω
57 fof 6736 . . . 4 (( bday ↾ ℕ0s):ℕ0sonto→ω → ( bday ↾ ℕ0s):ℕ0s⟶ω)
5856, 57ax-mp 5 . . 3 ( bday ↾ ℕ0s):ℕ0s⟶ω
5913, 48eqeqan12d 2743 . . . . 5 ((𝑥 ∈ ℕ0s𝑦 ∈ ℕ0s) → ((( bday ↾ ℕ0s)‘𝑥) = (( bday ↾ ℕ0s)‘𝑦) ↔ ( bday 𝑥) = ( bday 𝑦)))
60 n0ons 28235 . . . . . 6 (𝑥 ∈ ℕ0s𝑥 ∈ Ons)
61 n0ons 28235 . . . . . 6 (𝑦 ∈ ℕ0s𝑦 ∈ Ons)
62 bday11on 28173 . . . . . . 7 ((𝑥 ∈ Ons𝑦 ∈ Ons ∧ ( bday 𝑥) = ( bday 𝑦)) → 𝑥 = 𝑦)
63623expia 1121 . . . . . 6 ((𝑥 ∈ Ons𝑦 ∈ Ons) → (( bday 𝑥) = ( bday 𝑦) → 𝑥 = 𝑦))
6460, 61, 63syl2an 596 . . . . 5 ((𝑥 ∈ ℕ0s𝑦 ∈ ℕ0s) → (( bday 𝑥) = ( bday 𝑦) → 𝑥 = 𝑦))
6559, 64sylbid 240 . . . 4 ((𝑥 ∈ ℕ0s𝑦 ∈ ℕ0s) → ((( bday ↾ ℕ0s)‘𝑥) = (( bday ↾ ℕ0s)‘𝑦) → 𝑥 = 𝑦))
6665rgen2 3169 . . 3 𝑥 ∈ ℕ0s𝑦 ∈ ℕ0s ((( bday ↾ ℕ0s)‘𝑥) = (( bday ↾ ℕ0s)‘𝑦) → 𝑥 = 𝑦)
67 dff13 7191 . . 3 (( bday ↾ ℕ0s):ℕ0s1-1→ω ↔ (( bday ↾ ℕ0s):ℕ0s⟶ω ∧ ∀𝑥 ∈ ℕ0s𝑦 ∈ ℕ0s ((( bday ↾ ℕ0s)‘𝑥) = (( bday ↾ ℕ0s)‘𝑦) → 𝑥 = 𝑦)))
6858, 66, 67mpbir2an 711 . 2 ( bday ↾ ℕ0s):ℕ0s1-1→ω
69 df-f1o 6489 . 2 (( bday ↾ ℕ0s):ℕ0s1-1-onto→ω ↔ (( bday ↾ ℕ0s):ℕ0s1-1→ω ∧ ( bday ↾ ℕ0s):ℕ0sonto→ω))
7068, 56, 69mpbir2an 711 1 ( bday ↾ ℕ0s):ℕ0s1-1-onto→ω
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 206  wa 395   = wceq 1540  wcel 2109  wral 3044  wrex 3053  cin 3902  wss 3903  c0 4284  dom cdm 5619  ran crn 5620  cres 5621  suc csuc 6309  Fun wfun 6476   Fn wfn 6477  wf 6478  1-1wf1 6479  ontowfo 6480  1-1-ontowf1o 6481  cfv 6482  (class class class)co 7349  ωcom 7799   No csur 27549   bday cbday 27551   0s c0s 27737   1s c1s 27738   +s cadds 27873  Onscons 28159  0scnn0s 28213
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1795  ax-4 1809  ax-5 1910  ax-6 1967  ax-7 2008  ax-8 2111  ax-9 2119  ax-10 2142  ax-11 2158  ax-12 2178  ax-ext 2701  ax-rep 5218  ax-sep 5235  ax-nul 5245  ax-pow 5304  ax-pr 5371  ax-un 7671
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 848  df-3or 1087  df-3an 1088  df-tru 1543  df-fal 1553  df-ex 1780  df-nf 1784  df-sb 2066  df-mo 2533  df-eu 2562  df-clab 2708  df-cleq 2721  df-clel 2803  df-nfc 2878  df-ne 2926  df-ral 3045  df-rex 3054  df-rmo 3343  df-reu 3344  df-rab 3395  df-v 3438  df-sbc 3743  df-csb 3852  df-dif 3906  df-un 3908  df-in 3910  df-ss 3920  df-pss 3923  df-nul 4285  df-if 4477  df-pw 4553  df-sn 4578  df-pr 4580  df-tp 4582  df-op 4584  df-ot 4586  df-uni 4859  df-int 4897  df-iun 4943  df-br 5093  df-opab 5155  df-mpt 5174  df-tr 5200  df-id 5514  df-eprel 5519  df-po 5527  df-so 5528  df-fr 5572  df-se 5573  df-we 5574  df-xp 5625  df-rel 5626  df-cnv 5627  df-co 5628  df-dm 5629  df-rn 5630  df-res 5631  df-ima 5632  df-pred 6249  df-ord 6310  df-on 6311  df-lim 6312  df-suc 6313  df-iota 6438  df-fun 6484  df-fn 6485  df-f 6486  df-f1 6487  df-fo 6488  df-f1o 6489  df-fv 6490  df-riota 7306  df-ov 7352  df-oprab 7353  df-mpo 7354  df-om 7800  df-1st 7924  df-2nd 7925  df-frecs 8214  df-wrecs 8245  df-recs 8294  df-rdg 8332  df-1o 8388  df-2o 8389  df-nadd 8584  df-no 27552  df-slt 27553  df-bday 27554  df-sle 27655  df-sslt 27692  df-scut 27694  df-0s 27739  df-1s 27740  df-made 27759  df-old 27760  df-left 27762  df-right 27763  df-norec 27852  df-norec2 27863  df-adds 27874  df-negs 27934  df-subs 27935  df-ons 28160  df-n0s 28215
This theorem is referenced by: (None)
  Copyright terms: Public domain W3C validator