Metamath Proof Explorer


Theorem oniso

Description: The birthday function restricted to the surreal ordinals forms an order-preserving isomorphism with the regular ordinals. (Contributed by Scott Fenton, 8-Nov-2025)

Ref Expression
Assertion oniso ⊢ bday ↾ On s Isom < s , E On s On

Proof

Step Hyp Ref Expression
1 bdayfun ⊢ Fun ⁡ bday
2 funres ⊢ Fun ⁡ bday → Fun ⁡ bday ↾ On s
3 1 2 ax-mp ⊢ Fun ⁡ bday ↾ On s
4 dmres ⊢ dom ⁡ bday ↾ On s = On s ∩ dom ⁡ bday
5 bdaydm ⊢ dom ⁡ bday = No
6 5 ineq2i ⊢ On s ∩ dom ⁡ bday = On s ∩ No
7 onssno ⊢ On s ⊆ No
8 dfss2 ⊢ On s ⊆ No ↔ On s ∩ No = On s
9 7 8 mpbi ⊢ On s ∩ No = On s
10 4 6 9 3eqtri ⊢ dom ⁡ bday ↾ On s = On s
11 df-fn ⊢ bday ↾ On s Fn On s ↔ Fun ⁡ bday ↾ On s ∧ dom ⁡ bday ↾ On s = On s
12 3 10 11 mpbir2an ⊢ bday ↾ On s Fn On s
13 rnresss ⊢ ran ⁡ bday ↾ On s ⊆ ran ⁡ bday
14 bdayrn ⊢ ran ⁡ bday = On
15 13 14 sseqtri ⊢ ran ⁡ bday ↾ On s ⊆ On
16 df-f ⊢ bday ↾ On s : On s ⟶ On ↔ bday ↾ On s Fn On s ∧ ran ⁡ bday ↾ On s ⊆ On
17 12 15 16 mpbir2an ⊢ bday ↾ On s : On s ⟶ On
18 fvres ⊢ x ∈ On s → bday ↾ On s ⁡ x = bday ⁡ x
19 fvres ⊢ y ∈ On s → bday ↾ On s ⁡ y = bday ⁡ y
20 18 19 eqeqan12d ⊢ x ∈ On s ∧ y ∈ On s → bday ↾ On s ⁡ x = bday ↾ On s ⁡ y ↔ bday ⁡ x = bday ⁡ y
21 bday11on ⊢ x ∈ On s ∧ y ∈ On s ∧ bday ⁡ x = bday ⁡ y → x = y
22 21 3expia ⊢ x ∈ On s ∧ y ∈ On s → bday ⁡ x = bday ⁡ y → x = y
23 20 22 sylbid ⊢ x ∈ On s ∧ y ∈ On s → bday ↾ On s ⁡ x = bday ↾ On s ⁡ y → x = y
24 23 rgen2 ⊢ ∀ x ∈ On s ∀ y ∈ On s bday ↾ On s ⁡ x = bday ↾ On s ⁡ y → x = y
25 dff13 ⊢ bday ↾ On s : On s ⟶ 1-1 On ↔ bday ↾ On s : On s ⟶ On ∧ ∀ x ∈ On s ∀ y ∈ On s bday ↾ On s ⁡ x = bday ↾ On s ⁡ y → x = y
26 17 24 25 mpbir2an ⊢ bday ↾ On s : On s ⟶ 1-1 On
27 fveqeq2 ⊢ y = Old ⁡ x | s ∅ → bday ↾ On s ⁡ y = x ↔ bday ↾ On s ⁡ Old ⁡ x | s ∅ = x
28 fvex ⊢ Old ⁡ x ∈ V
29 28 a1i ⊢ x ∈ On → Old ⁡ x ∈ V
30 oldssno ⊢ Old ⁡ x ⊆ No
31 30 a1i ⊢ x ∈ On → Old ⁡ x ⊆ No
32 eqidd ⊢ x ∈ On → Old ⁡ x | s ∅ = Old ⁡ x | s ∅
33 29 31 32 elons2d ⊢ x ∈ On → Old ⁡ x | s ∅ ∈ On s
34 33 fvresd ⊢ x ∈ On → bday ↾ On s ⁡ Old ⁡ x | s ∅ = bday ⁡ Old ⁡ x | s ∅
35 28 elpw ⊢ Old ⁡ x ∈ 𝒫 No ↔ Old ⁡ x ⊆ No
36 30 35 mpbir ⊢ Old ⁡ x ∈ 𝒫 No
37 nulsgts ⊢ Old ⁡ x ∈ 𝒫 No → Old ⁡ x ≪ s ∅
38 36 37 ax-mp ⊢ Old ⁡ x ≪ s ∅
39 id ⊢ x ∈ On → x ∈ On
40 un0 ⊢ Old ⁡ x ∪ ∅ = Old ⁡ x
41 40 imaeq2i ⊢ bday Old ⁡ x ∪ ∅ = bday Old ⁡ x
42 oldbdayim ⊢ y ∈ Old ⁡ x → bday ⁡ y ∈ x
43 42 rgen ⊢ ∀ y ∈ Old ⁡ x bday ⁡ y ∈ x
44 43 a1i ⊢ x ∈ On → ∀ y ∈ Old ⁡ x bday ⁡ y ∈ x
45 30 5 sseqtrri ⊢ Old ⁡ x ⊆ dom ⁡ bday
46 funimass4 ⊢ Fun ⁡ bday ∧ Old ⁡ x ⊆ dom ⁡ bday → bday Old ⁡ x ⊆ x ↔ ∀ y ∈ Old ⁡ x bday ⁡ y ∈ x
47 1 45 46 mp2an ⊢ bday Old ⁡ x ⊆ x ↔ ∀ y ∈ Old ⁡ x bday ⁡ y ∈ x
48 44 47 sylibr ⊢ x ∈ On → bday Old ⁡ x ⊆ x
49 41 48 eqsstrid ⊢ x ∈ On → bday Old ⁡ x ∪ ∅ ⊆ x
50 cutbdaybnd ⊢ Old ⁡ x ≪ s ∅ ∧ x ∈ On ∧ bday Old ⁡ x ∪ ∅ ⊆ x → bday ⁡ Old ⁡ x | s ∅ ⊆ x
51 38 39 49 50 mp3an2i ⊢ x ∈ On → bday ⁡ Old ⁡ x | s ∅ ⊆ x
52 sltssep ⊢ Old ⁡ x ≪ s w → ∀ y ∈ Old ⁡ x ∀ z ∈ w y < s z
53 vex ⊢ w ∈ V
54 breq2 ⊢ z = w → y < s z ↔ y < s w
55 53 54 ralsn ⊢ ∀ z ∈ w y < s z ↔ y < s w
56 55 ralbii ⊢ ∀ y ∈ Old ⁡ x ∀ z ∈ w y < s z ↔ ∀ y ∈ Old ⁡ x y < s w
57 52 56 sylib ⊢ Old ⁡ x ≪ s w → ∀ y ∈ Old ⁡ x y < s w
58 ltsirr ⊢ w ∈ No → ¬ w < s w
59 58 3ad2ant2 ⊢ x ∈ On ∧ w ∈ No ∧ ∀ y ∈ Old ⁡ x y < s w → ¬ w < s w
60 oldbday ⊢ x ∈ On ∧ w ∈ No → w ∈ Old ⁡ x ↔ bday ⁡ w ∈ x
61 60 3adant3 ⊢ x ∈ On ∧ w ∈ No ∧ ∀ y ∈ Old ⁡ x y < s w → w ∈ Old ⁡ x ↔ bday ⁡ w ∈ x
62 breq1 ⊢ y = w → y < s w ↔ w < s w
63 62 rspccv ⊢ ∀ y ∈ Old ⁡ x y < s w → w ∈ Old ⁡ x → w < s w
64 63 3ad2ant3 ⊢ x ∈ On ∧ w ∈ No ∧ ∀ y ∈ Old ⁡ x y < s w → w ∈ Old ⁡ x → w < s w
65 61 64 sylbird ⊢ x ∈ On ∧ w ∈ No ∧ ∀ y ∈ Old ⁡ x y < s w → bday ⁡ w ∈ x → w < s w
66 59 65 mtod ⊢ x ∈ On ∧ w ∈ No ∧ ∀ y ∈ Old ⁡ x y < s w → ¬ bday ⁡ w ∈ x
67 simp1 ⊢ x ∈ On ∧ w ∈ No ∧ ∀ y ∈ Old ⁡ x y < s w → x ∈ On
68 bdayon ⊢ bday ⁡ w ∈ On
69 ontri1 ⊢ x ∈ On ∧ bday ⁡ w ∈ On → x ⊆ bday ⁡ w ↔ ¬ bday ⁡ w ∈ x
70 67 68 69 sylancl ⊢ x ∈ On ∧ w ∈ No ∧ ∀ y ∈ Old ⁡ x y < s w → x ⊆ bday ⁡ w ↔ ¬ bday ⁡ w ∈ x
71 66 70 mpbird ⊢ x ∈ On ∧ w ∈ No ∧ ∀ y ∈ Old ⁡ x y < s w → x ⊆ bday ⁡ w
72 71 3expia ⊢ x ∈ On ∧ w ∈ No → ∀ y ∈ Old ⁡ x y < s w → x ⊆ bday ⁡ w
73 57 72 syl5 ⊢ x ∈ On ∧ w ∈ No → Old ⁡ x ≪ s w → x ⊆ bday ⁡ w
74 73 adantrd ⊢ x ∈ On ∧ w ∈ No → Old ⁡ x ≪ s w ∧ w ≪ s ∅ → x ⊆ bday ⁡ w
75 74 ralrimiva ⊢ x ∈ On → ∀ w ∈ No Old ⁡ x ≪ s w ∧ w ≪ s ∅ → x ⊆ bday ⁡ w
76 ssint ⊢ x ⊆ ⋂ bday y ∈ No | Old ⁡ x ≪ s y ∧ y ≪ s ∅ ↔ ∀ z ∈ bday y ∈ No | Old ⁡ x ≪ s y ∧ y ≪ s ∅ x ⊆ z
77 bdayfn ⊢ bday Fn No
78 ssrab2 ⊢ y ∈ No | Old ⁡ x ≪ s y ∧ y ≪ s ∅ ⊆ No
79 sseq2 ⊢ z = bday ⁡ w → x ⊆ z ↔ x ⊆ bday ⁡ w
80 79 ralima ⊢ bday Fn No ∧ y ∈ No | Old ⁡ x ≪ s y ∧ y ≪ s ∅ ⊆ No → ∀ z ∈ bday y ∈ No | Old ⁡ x ≪ s y ∧ y ≪ s ∅ x ⊆ z ↔ ∀ w ∈ y ∈ No | Old ⁡ x ≪ s y ∧ y ≪ s ∅ x ⊆ bday ⁡ w
81 77 78 80 mp2an ⊢ ∀ z ∈ bday y ∈ No | Old ⁡ x ≪ s y ∧ y ≪ s ∅ x ⊆ z ↔ ∀ w ∈ y ∈ No | Old ⁡ x ≪ s y ∧ y ≪ s ∅ x ⊆ bday ⁡ w
82 sneq ⊢ y = w → y = w
83 82 breq2d ⊢ y = w → Old ⁡ x ≪ s y ↔ Old ⁡ x ≪ s w
84 82 breq1d ⊢ y = w → y ≪ s ∅ ↔ w ≪ s ∅
85 83 84 anbi12d ⊢ y = w → Old ⁡ x ≪ s y ∧ y ≪ s ∅ ↔ Old ⁡ x ≪ s w ∧ w ≪ s ∅
86 85 ralrab ⊢ ∀ w ∈ y ∈ No | Old ⁡ x ≪ s y ∧ y ≪ s ∅ x ⊆ bday ⁡ w ↔ ∀ w ∈ No Old ⁡ x ≪ s w ∧ w ≪ s ∅ → x ⊆ bday ⁡ w
87 76 81 86 3bitri ⊢ x ⊆ ⋂ bday y ∈ No | Old ⁡ x ≪ s y ∧ y ≪ s ∅ ↔ ∀ w ∈ No Old ⁡ x ≪ s w ∧ w ≪ s ∅ → x ⊆ bday ⁡ w
88 75 87 sylibr ⊢ x ∈ On → x ⊆ ⋂ bday y ∈ No | Old ⁡ x ≪ s y ∧ y ≪ s ∅
89 cutbday ⊢ Old ⁡ x ≪ s ∅ → bday ⁡ Old ⁡ x | s ∅ = ⋂ bday y ∈ No | Old ⁡ x ≪ s y ∧ y ≪ s ∅
90 38 89 ax-mp ⊢ bday ⁡ Old ⁡ x | s ∅ = ⋂ bday y ∈ No | Old ⁡ x ≪ s y ∧ y ≪ s ∅
91 88 90 sseqtrrdi ⊢ x ∈ On → x ⊆ bday ⁡ Old ⁡ x | s ∅
92 51 91 eqssd ⊢ x ∈ On → bday ⁡ Old ⁡ x | s ∅ = x
93 34 92 eqtrd ⊢ x ∈ On → bday ↾ On s ⁡ Old ⁡ x | s ∅ = x
94 27 33 93 rspcedvdw ⊢ x ∈ On → ∃ y ∈ On s bday ↾ On s ⁡ y = x
95 fvelrnb ⊢ bday ↾ On s Fn On s → x ∈ ran ⁡ bday ↾ On s ↔ ∃ y ∈ On s bday ↾ On s ⁡ y = x
96 12 95 ax-mp ⊢ x ∈ ran ⁡ bday ↾ On s ↔ ∃ y ∈ On s bday ↾ On s ⁡ y = x
97 94 96 sylibr ⊢ x ∈ On → x ∈ ran ⁡ bday ↾ On s
98 97 ssriv ⊢ On ⊆ ran ⁡ bday ↾ On s
99 15 98 eqssi ⊢ ran ⁡ bday ↾ On s = On
100 df-fo ⊢ bday ↾ On s : On s ⟶ onto On ↔ bday ↾ On s Fn On s ∧ ran ⁡ bday ↾ On s = On
101 12 99 100 mpbir2an ⊢ bday ↾ On s : On s ⟶ onto On
102 df-f1o ⊢ bday ↾ On s : On s ⟶ 1-1 onto On ↔ bday ↾ On s : On s ⟶ 1-1 On ∧ bday ↾ On s : On s ⟶ onto On
103 26 101 102 mpbir2an ⊢ bday ↾ On s : On s ⟶ 1-1 onto On
104 onlts ⊢ x ∈ On s ∧ y ∈ On s → x < s y ↔ bday ⁡ x ∈ bday ⁡ y
105 fvex ⊢ bday ⁡ y ∈ V
106 105 epeli ⊢ bday ⁡ x E bday ⁡ y ↔ bday ⁡ x ∈ bday ⁡ y
107 104 106 bitr4di ⊢ x ∈ On s ∧ y ∈ On s → x < s y ↔ bday ⁡ x E bday ⁡ y
108 18 19 breqan12d ⊢ x ∈ On s ∧ y ∈ On s → bday ↾ On s ⁡ x E bday ↾ On s ⁡ y ↔ bday ⁡ x E bday ⁡ y
109 107 108 bitr4d ⊢ x ∈ On s ∧ y ∈ On s → x < s y ↔ bday ↾ On s ⁡ x E bday ↾ On s ⁡ y
110 109 rgen2 ⊢ ∀ x ∈ On s ∀ y ∈ On s x < s y ↔ bday ↾ On s ⁡ x E bday ↾ On s ⁡ y
111 df-isom ⊢ bday ↾ On s Isom < s , E On s On ↔ bday ↾ On s : On s ⟶ 1-1 onto On ∧ ∀ x ∈ On s ∀ y ∈ On s x < s y ↔ bday ↾ On s ⁡ x E bday ↾ On s ⁡ y
112 103 110 111 mpbir2an ⊢ bday ↾ On s Isom < s , E On s On