Metamath Proof Explorer


Theorem om2noseqlt

Description: Surreal less-than relation for G . (Contributed by Scott Fenton, 18-Apr-2025)

Ref Expression
Hypotheses om2noseq.1 ( 𝜑𝐶 No )
om2noseq.2 ( 𝜑𝐺 = ( rec ( ( 𝑥 ∈ V ↦ ( 𝑥 +s 1s ) ) , 𝐶 ) ↾ ω ) )
om2noseq.3 ( 𝜑𝑍 = ( rec ( ( 𝑥 ∈ V ↦ ( 𝑥 +s 1s ) ) , 𝐶 ) “ ω ) )
Assertion om2noseqlt ( ( 𝜑 ∧ ( 𝐴 ∈ ω ∧ 𝐵 ∈ ω ) ) → ( 𝐴𝐵 → ( 𝐺𝐴 ) <s ( 𝐺𝐵 ) ) )

Proof

Step Hyp Ref Expression
1 om2noseq.1 ( 𝜑𝐶 No )
2 om2noseq.2 ( 𝜑𝐺 = ( rec ( ( 𝑥 ∈ V ↦ ( 𝑥 +s 1s ) ) , 𝐶 ) ↾ ω ) )
3 om2noseq.3 ( 𝜑𝑍 = ( rec ( ( 𝑥 ∈ V ↦ ( 𝑥 +s 1s ) ) , 𝐶 ) “ ω ) )
4 nnaordex2 ( ( 𝐴 ∈ ω ∧ 𝐵 ∈ ω ) → ( 𝐴𝐵 ↔ ∃ 𝑦 ∈ ω ( 𝐴 +o suc 𝑦 ) = 𝐵 ) )
5 4 adantl ( ( 𝜑 ∧ ( 𝐴 ∈ ω ∧ 𝐵 ∈ ω ) ) → ( 𝐴𝐵 ↔ ∃ 𝑦 ∈ ω ( 𝐴 +o suc 𝑦 ) = 𝐵 ) )
6 suceq ( 𝑦 = ∅ → suc 𝑦 = suc ∅ )
7 df-1o 1o = suc ∅
8 6 7 eqtr4di ( 𝑦 = ∅ → suc 𝑦 = 1o )
9 8 oveq2d ( 𝑦 = ∅ → ( 𝐴 +o suc 𝑦 ) = ( 𝐴 +o 1o ) )
10 9 fveq2d ( 𝑦 = ∅ → ( 𝐺 ‘ ( 𝐴 +o suc 𝑦 ) ) = ( 𝐺 ‘ ( 𝐴 +o 1o ) ) )
11 10 breq2d ( 𝑦 = ∅ → ( ( 𝐺𝐴 ) <s ( 𝐺 ‘ ( 𝐴 +o suc 𝑦 ) ) ↔ ( 𝐺𝐴 ) <s ( 𝐺 ‘ ( 𝐴 +o 1o ) ) ) )
12 suceq ( 𝑦 = 𝑧 → suc 𝑦 = suc 𝑧 )
13 12 oveq2d ( 𝑦 = 𝑧 → ( 𝐴 +o suc 𝑦 ) = ( 𝐴 +o suc 𝑧 ) )
14 13 fveq2d ( 𝑦 = 𝑧 → ( 𝐺 ‘ ( 𝐴 +o suc 𝑦 ) ) = ( 𝐺 ‘ ( 𝐴 +o suc 𝑧 ) ) )
15 14 breq2d ( 𝑦 = 𝑧 → ( ( 𝐺𝐴 ) <s ( 𝐺 ‘ ( 𝐴 +o suc 𝑦 ) ) ↔ ( 𝐺𝐴 ) <s ( 𝐺 ‘ ( 𝐴 +o suc 𝑧 ) ) ) )
16 suceq ( 𝑦 = suc 𝑧 → suc 𝑦 = suc suc 𝑧 )
17 16 oveq2d ( 𝑦 = suc 𝑧 → ( 𝐴 +o suc 𝑦 ) = ( 𝐴 +o suc suc 𝑧 ) )
18 17 fveq2d ( 𝑦 = suc 𝑧 → ( 𝐺 ‘ ( 𝐴 +o suc 𝑦 ) ) = ( 𝐺 ‘ ( 𝐴 +o suc suc 𝑧 ) ) )
19 18 breq2d ( 𝑦 = suc 𝑧 → ( ( 𝐺𝐴 ) <s ( 𝐺 ‘ ( 𝐴 +o suc 𝑦 ) ) ↔ ( 𝐺𝐴 ) <s ( 𝐺 ‘ ( 𝐴 +o suc suc 𝑧 ) ) ) )
20 1 2 3 om2noseqfo ( 𝜑𝐺 : ω –onto𝑍 )
21 fof ( 𝐺 : ω –onto𝑍𝐺 : ω ⟶ 𝑍 )
22 20 21 syl ( 𝜑𝐺 : ω ⟶ 𝑍 )
23 3 1 noseqssno ( 𝜑𝑍 No )
24 22 23 fssd ( 𝜑𝐺 : ω ⟶ No )
25 24 ffvelcdmda ( ( 𝜑𝐴 ∈ ω ) → ( 𝐺𝐴 ) ∈ No )
26 25 sltp1d ( ( 𝜑𝐴 ∈ ω ) → ( 𝐺𝐴 ) <s ( ( 𝐺𝐴 ) +s 1s ) )
27 nnon ( 𝐴 ∈ ω → 𝐴 ∈ On )
28 oa1suc ( 𝐴 ∈ On → ( 𝐴 +o 1o ) = suc 𝐴 )
29 27 28 syl ( 𝐴 ∈ ω → ( 𝐴 +o 1o ) = suc 𝐴 )
30 29 fveq2d ( 𝐴 ∈ ω → ( 𝐺 ‘ ( 𝐴 +o 1o ) ) = ( 𝐺 ‘ suc 𝐴 ) )
31 30 adantl ( ( 𝜑𝐴 ∈ ω ) → ( 𝐺 ‘ ( 𝐴 +o 1o ) ) = ( 𝐺 ‘ suc 𝐴 ) )
32 1 adantr ( ( 𝜑𝐴 ∈ ω ) → 𝐶 No )
33 2 adantr ( ( 𝜑𝐴 ∈ ω ) → 𝐺 = ( rec ( ( 𝑥 ∈ V ↦ ( 𝑥 +s 1s ) ) , 𝐶 ) ↾ ω ) )
34 simpr ( ( 𝜑𝐴 ∈ ω ) → 𝐴 ∈ ω )
35 32 33 34 om2noseqsuc ( ( 𝜑𝐴 ∈ ω ) → ( 𝐺 ‘ suc 𝐴 ) = ( ( 𝐺𝐴 ) +s 1s ) )
36 31 35 eqtrd ( ( 𝜑𝐴 ∈ ω ) → ( 𝐺 ‘ ( 𝐴 +o 1o ) ) = ( ( 𝐺𝐴 ) +s 1s ) )
37 26 36 breqtrrd ( ( 𝜑𝐴 ∈ ω ) → ( 𝐺𝐴 ) <s ( 𝐺 ‘ ( 𝐴 +o 1o ) ) )
38 25 adantr ( ( ( 𝜑𝐴 ∈ ω ) ∧ ( 𝑧 ∈ ω ∧ ( 𝐺𝐴 ) <s ( 𝐺 ‘ ( 𝐴 +o suc 𝑧 ) ) ) ) → ( 𝐺𝐴 ) ∈ No )
39 24 ad2antrr ( ( ( 𝜑𝐴 ∈ ω ) ∧ ( 𝑧 ∈ ω ∧ ( 𝐺𝐴 ) <s ( 𝐺 ‘ ( 𝐴 +o suc 𝑧 ) ) ) ) → 𝐺 : ω ⟶ No )
40 peano2 ( 𝑧 ∈ ω → suc 𝑧 ∈ ω )
41 40 adantr ( ( 𝑧 ∈ ω ∧ ( 𝐺𝐴 ) <s ( 𝐺 ‘ ( 𝐴 +o suc 𝑧 ) ) ) → suc 𝑧 ∈ ω )
42 nnacl ( ( 𝐴 ∈ ω ∧ suc 𝑧 ∈ ω ) → ( 𝐴 +o suc 𝑧 ) ∈ ω )
43 34 41 42 syl2an ( ( ( 𝜑𝐴 ∈ ω ) ∧ ( 𝑧 ∈ ω ∧ ( 𝐺𝐴 ) <s ( 𝐺 ‘ ( 𝐴 +o suc 𝑧 ) ) ) ) → ( 𝐴 +o suc 𝑧 ) ∈ ω )
44 39 43 ffvelcdmd ( ( ( 𝜑𝐴 ∈ ω ) ∧ ( 𝑧 ∈ ω ∧ ( 𝐺𝐴 ) <s ( 𝐺 ‘ ( 𝐴 +o suc 𝑧 ) ) ) ) → ( 𝐺 ‘ ( 𝐴 +o suc 𝑧 ) ) ∈ No )
45 peano2 ( suc 𝑧 ∈ ω → suc suc 𝑧 ∈ ω )
46 40 45 syl ( 𝑧 ∈ ω → suc suc 𝑧 ∈ ω )
47 46 adantr ( ( 𝑧 ∈ ω ∧ ( 𝐺𝐴 ) <s ( 𝐺 ‘ ( 𝐴 +o suc 𝑧 ) ) ) → suc suc 𝑧 ∈ ω )
48 nnacl ( ( 𝐴 ∈ ω ∧ suc suc 𝑧 ∈ ω ) → ( 𝐴 +o suc suc 𝑧 ) ∈ ω )
49 34 47 48 syl2an ( ( ( 𝜑𝐴 ∈ ω ) ∧ ( 𝑧 ∈ ω ∧ ( 𝐺𝐴 ) <s ( 𝐺 ‘ ( 𝐴 +o suc 𝑧 ) ) ) ) → ( 𝐴 +o suc suc 𝑧 ) ∈ ω )
50 39 49 ffvelcdmd ( ( ( 𝜑𝐴 ∈ ω ) ∧ ( 𝑧 ∈ ω ∧ ( 𝐺𝐴 ) <s ( 𝐺 ‘ ( 𝐴 +o suc 𝑧 ) ) ) ) → ( 𝐺 ‘ ( 𝐴 +o suc suc 𝑧 ) ) ∈ No )
51 simprr ( ( ( 𝜑𝐴 ∈ ω ) ∧ ( 𝑧 ∈ ω ∧ ( 𝐺𝐴 ) <s ( 𝐺 ‘ ( 𝐴 +o suc 𝑧 ) ) ) ) → ( 𝐺𝐴 ) <s ( 𝐺 ‘ ( 𝐴 +o suc 𝑧 ) ) )
52 44 sltp1d ( ( ( 𝜑𝐴 ∈ ω ) ∧ ( 𝑧 ∈ ω ∧ ( 𝐺𝐴 ) <s ( 𝐺 ‘ ( 𝐴 +o suc 𝑧 ) ) ) ) → ( 𝐺 ‘ ( 𝐴 +o suc 𝑧 ) ) <s ( ( 𝐺 ‘ ( 𝐴 +o suc 𝑧 ) ) +s 1s ) )
53 nnasuc ( ( 𝐴 ∈ ω ∧ suc 𝑧 ∈ ω ) → ( 𝐴 +o suc suc 𝑧 ) = suc ( 𝐴 +o suc 𝑧 ) )
54 53 fveq2d ( ( 𝐴 ∈ ω ∧ suc 𝑧 ∈ ω ) → ( 𝐺 ‘ ( 𝐴 +o suc suc 𝑧 ) ) = ( 𝐺 ‘ suc ( 𝐴 +o suc 𝑧 ) ) )
55 34 41 54 syl2an ( ( ( 𝜑𝐴 ∈ ω ) ∧ ( 𝑧 ∈ ω ∧ ( 𝐺𝐴 ) <s ( 𝐺 ‘ ( 𝐴 +o suc 𝑧 ) ) ) ) → ( 𝐺 ‘ ( 𝐴 +o suc suc 𝑧 ) ) = ( 𝐺 ‘ suc ( 𝐴 +o suc 𝑧 ) ) )
56 1 ad2antrr ( ( ( 𝜑𝐴 ∈ ω ) ∧ ( 𝑧 ∈ ω ∧ ( 𝐺𝐴 ) <s ( 𝐺 ‘ ( 𝐴 +o suc 𝑧 ) ) ) ) → 𝐶 No )
57 2 ad2antrr ( ( ( 𝜑𝐴 ∈ ω ) ∧ ( 𝑧 ∈ ω ∧ ( 𝐺𝐴 ) <s ( 𝐺 ‘ ( 𝐴 +o suc 𝑧 ) ) ) ) → 𝐺 = ( rec ( ( 𝑥 ∈ V ↦ ( 𝑥 +s 1s ) ) , 𝐶 ) ↾ ω ) )
58 56 57 43 om2noseqsuc ( ( ( 𝜑𝐴 ∈ ω ) ∧ ( 𝑧 ∈ ω ∧ ( 𝐺𝐴 ) <s ( 𝐺 ‘ ( 𝐴 +o suc 𝑧 ) ) ) ) → ( 𝐺 ‘ suc ( 𝐴 +o suc 𝑧 ) ) = ( ( 𝐺 ‘ ( 𝐴 +o suc 𝑧 ) ) +s 1s ) )
59 55 58 eqtrd ( ( ( 𝜑𝐴 ∈ ω ) ∧ ( 𝑧 ∈ ω ∧ ( 𝐺𝐴 ) <s ( 𝐺 ‘ ( 𝐴 +o suc 𝑧 ) ) ) ) → ( 𝐺 ‘ ( 𝐴 +o suc suc 𝑧 ) ) = ( ( 𝐺 ‘ ( 𝐴 +o suc 𝑧 ) ) +s 1s ) )
60 52 59 breqtrrd ( ( ( 𝜑𝐴 ∈ ω ) ∧ ( 𝑧 ∈ ω ∧ ( 𝐺𝐴 ) <s ( 𝐺 ‘ ( 𝐴 +o suc 𝑧 ) ) ) ) → ( 𝐺 ‘ ( 𝐴 +o suc 𝑧 ) ) <s ( 𝐺 ‘ ( 𝐴 +o suc suc 𝑧 ) ) )
61 38 44 50 51 60 slttrd ( ( ( 𝜑𝐴 ∈ ω ) ∧ ( 𝑧 ∈ ω ∧ ( 𝐺𝐴 ) <s ( 𝐺 ‘ ( 𝐴 +o suc 𝑧 ) ) ) ) → ( 𝐺𝐴 ) <s ( 𝐺 ‘ ( 𝐴 +o suc suc 𝑧 ) ) )
62 61 expr ( ( ( 𝜑𝐴 ∈ ω ) ∧ 𝑧 ∈ ω ) → ( ( 𝐺𝐴 ) <s ( 𝐺 ‘ ( 𝐴 +o suc 𝑧 ) ) → ( 𝐺𝐴 ) <s ( 𝐺 ‘ ( 𝐴 +o suc suc 𝑧 ) ) ) )
63 62 expcom ( 𝑧 ∈ ω → ( ( 𝜑𝐴 ∈ ω ) → ( ( 𝐺𝐴 ) <s ( 𝐺 ‘ ( 𝐴 +o suc 𝑧 ) ) → ( 𝐺𝐴 ) <s ( 𝐺 ‘ ( 𝐴 +o suc suc 𝑧 ) ) ) ) )
64 11 15 19 37 63 finds2 ( 𝑦 ∈ ω → ( ( 𝜑𝐴 ∈ ω ) → ( 𝐺𝐴 ) <s ( 𝐺 ‘ ( 𝐴 +o suc 𝑦 ) ) ) )
65 64 impcom ( ( ( 𝜑𝐴 ∈ ω ) ∧ 𝑦 ∈ ω ) → ( 𝐺𝐴 ) <s ( 𝐺 ‘ ( 𝐴 +o suc 𝑦 ) ) )
66 fveq2 ( ( 𝐴 +o suc 𝑦 ) = 𝐵 → ( 𝐺 ‘ ( 𝐴 +o suc 𝑦 ) ) = ( 𝐺𝐵 ) )
67 66 breq2d ( ( 𝐴 +o suc 𝑦 ) = 𝐵 → ( ( 𝐺𝐴 ) <s ( 𝐺 ‘ ( 𝐴 +o suc 𝑦 ) ) ↔ ( 𝐺𝐴 ) <s ( 𝐺𝐵 ) ) )
68 65 67 syl5ibcom ( ( ( 𝜑𝐴 ∈ ω ) ∧ 𝑦 ∈ ω ) → ( ( 𝐴 +o suc 𝑦 ) = 𝐵 → ( 𝐺𝐴 ) <s ( 𝐺𝐵 ) ) )
69 68 rexlimdva ( ( 𝜑𝐴 ∈ ω ) → ( ∃ 𝑦 ∈ ω ( 𝐴 +o suc 𝑦 ) = 𝐵 → ( 𝐺𝐴 ) <s ( 𝐺𝐵 ) ) )
70 69 adantrr ( ( 𝜑 ∧ ( 𝐴 ∈ ω ∧ 𝐵 ∈ ω ) ) → ( ∃ 𝑦 ∈ ω ( 𝐴 +o suc 𝑦 ) = 𝐵 → ( 𝐺𝐴 ) <s ( 𝐺𝐵 ) ) )
71 5 70 sylbid ( ( 𝜑 ∧ ( 𝐴 ∈ ω ∧ 𝐵 ∈ ω ) ) → ( 𝐴𝐵 → ( 𝐺𝐴 ) <s ( 𝐺𝐵 ) ) )