Metamath Proof Explorer


Theorem n0subs

Description: Subtraction of non-negative surreal integers. (Contributed by Scott Fenton, 26-May-2025)

Ref Expression
Assertion n0subs ⊢ M ∈ ℕ 0s ∧ N ∈ ℕ 0s → M ≤ s N ↔ N - s M ∈ ℕ 0s

Proof

Step Hyp Ref Expression
1 breq2 ⊢ x = 0 s → z ≤ s x ↔ z ≤ s 0 s
2 oveq1 ⊢ x = 0 s → x - s z = 0 s - s z
3 2 eleq1d ⊢ x = 0 s → x - s z ∈ ℕ 0s ↔ 0 s - s z ∈ ℕ 0s
4 1 3 imbi12d ⊢ x = 0 s → z ≤ s x → x - s z ∈ ℕ 0s ↔ z ≤ s 0 s → 0 s - s z ∈ ℕ 0s
5 4 ralbidv ⊢ x = 0 s → ∀ z ∈ ℕ 0s z ≤ s x → x - s z ∈ ℕ 0s ↔ ∀ z ∈ ℕ 0s z ≤ s 0 s → 0 s - s z ∈ ℕ 0s
6 breq2 ⊢ x = y → z ≤ s x ↔ z ≤ s y
7 oveq1 ⊢ x = y → x - s z = y - s z
8 7 eleq1d ⊢ x = y → x - s z ∈ ℕ 0s ↔ y - s z ∈ ℕ 0s
9 6 8 imbi12d ⊢ x = y → z ≤ s x → x - s z ∈ ℕ 0s ↔ z ≤ s y → y - s z ∈ ℕ 0s
10 9 ralbidv ⊢ x = y → ∀ z ∈ ℕ 0s z ≤ s x → x - s z ∈ ℕ 0s ↔ ∀ z ∈ ℕ 0s z ≤ s y → y - s z ∈ ℕ 0s
11 breq2 ⊢ x = y + s 1 s → z ≤ s x ↔ z ≤ s y + s 1 s
12 oveq1 ⊢ x = y + s 1 s → x - s z = y + s 1 s - s z
13 12 eleq1d ⊢ x = y + s 1 s → x - s z ∈ ℕ 0s ↔ y + s 1 s - s z ∈ ℕ 0s
14 11 13 imbi12d ⊢ x = y + s 1 s → z ≤ s x → x - s z ∈ ℕ 0s ↔ z ≤ s y + s 1 s → y + s 1 s - s z ∈ ℕ 0s
15 14 ralbidv ⊢ x = y + s 1 s → ∀ z ∈ ℕ 0s z ≤ s x → x - s z ∈ ℕ 0s ↔ ∀ z ∈ ℕ 0s z ≤ s y + s 1 s → y + s 1 s - s z ∈ ℕ 0s
16 breq2 ⊢ x = N → z ≤ s x ↔ z ≤ s N
17 oveq1 ⊢ x = N → x - s z = N - s z
18 17 eleq1d ⊢ x = N → x - s z ∈ ℕ 0s ↔ N - s z ∈ ℕ 0s
19 16 18 imbi12d ⊢ x = N → z ≤ s x → x - s z ∈ ℕ 0s ↔ z ≤ s N → N - s z ∈ ℕ 0s
20 19 ralbidv ⊢ x = N → ∀ z ∈ ℕ 0s z ≤ s x → x - s z ∈ ℕ 0s ↔ ∀ z ∈ ℕ 0s z ≤ s N → N - s z ∈ ℕ 0s
21 n0sge0 ⊢ z ∈ ℕ 0s → 0 s ≤ s z
22 21 biantrud ⊢ z ∈ ℕ 0s → z ≤ s 0 s ↔ z ≤ s 0 s ∧ 0 s ≤ s z
23 n0no ⊢ z ∈ ℕ 0s → z ∈ No
24 0no ⊢ 0 s ∈ No
25 lestri3 ⊢ z ∈ No ∧ 0 s ∈ No → z = 0 s ↔ z ≤ s 0 s ∧ 0 s ≤ s z
26 23 24 25 sylancl ⊢ z ∈ ℕ 0s → z = 0 s ↔ z ≤ s 0 s ∧ 0 s ≤ s z
27 22 26 bitr4d ⊢ z ∈ ℕ 0s → z ≤ s 0 s ↔ z = 0 s
28 oveq2 ⊢ z = 0 s → 0 s - s z = 0 s - s 0 s
29 subsid ⊢ 0 s ∈ No → 0 s - s 0 s = 0 s
30 24 29 ax-mp ⊢ 0 s - s 0 s = 0 s
31 0n0s ⊢ 0 s ∈ ℕ 0s
32 30 31 eqeltri ⊢ 0 s - s 0 s ∈ ℕ 0s
33 28 32 eqeltrdi ⊢ z = 0 s → 0 s - s z ∈ ℕ 0s
34 27 33 biimtrdi ⊢ z ∈ ℕ 0s → z ≤ s 0 s → 0 s - s z ∈ ℕ 0s
35 34 rgen ⊢ ∀ z ∈ ℕ 0s z ≤ s 0 s → 0 s - s z ∈ ℕ 0s
36 breq1 ⊢ z = x → z ≤ s y ↔ x ≤ s y
37 oveq2 ⊢ z = x → y - s z = y - s x
38 37 eleq1d ⊢ z = x → y - s z ∈ ℕ 0s ↔ y - s x ∈ ℕ 0s
39 36 38 imbi12d ⊢ z = x → z ≤ s y → y - s z ∈ ℕ 0s ↔ x ≤ s y → y - s x ∈ ℕ 0s
40 39 cbvralvw ⊢ ∀ z ∈ ℕ 0s z ≤ s y → y - s z ∈ ℕ 0s ↔ ∀ x ∈ ℕ 0s x ≤ s y → y - s x ∈ ℕ 0s
41 n0no ⊢ y ∈ ℕ 0s → y ∈ No
42 peano2no ⊢ y ∈ No → y + s 1 s ∈ No
43 subsid1 ⊢ y + s 1 s ∈ No → y + s 1 s - s 0 s = y + s 1 s
44 41 42 43 3syl ⊢ y ∈ ℕ 0s → y + s 1 s - s 0 s = y + s 1 s
45 peano2n0s ⊢ y ∈ ℕ 0s → y + s 1 s ∈ ℕ 0s
46 44 45 eqeltrd ⊢ y ∈ ℕ 0s → y + s 1 s - s 0 s ∈ ℕ 0s
47 oveq2 ⊢ z = 0 s → y + s 1 s - s z = y + s 1 s - s 0 s
48 47 eleq1d ⊢ z = 0 s → y + s 1 s - s z ∈ ℕ 0s ↔ y + s 1 s - s 0 s ∈ ℕ 0s
49 46 48 syl5ibrcom ⊢ y ∈ ℕ 0s → z = 0 s → y + s 1 s - s z ∈ ℕ 0s
50 49 2a1dd ⊢ y ∈ ℕ 0s → z = 0 s → ∀ x ∈ ℕ 0s x ≤ s y → y - s x ∈ ℕ 0s → z ≤ s y + s 1 s → y + s 1 s - s z ∈ ℕ 0s
51 50 adantr ⊢ y ∈ ℕ 0s ∧ z ∈ ℕ 0s → z = 0 s → ∀ x ∈ ℕ 0s x ≤ s y → y - s x ∈ ℕ 0s → z ≤ s y + s 1 s → y + s 1 s - s z ∈ ℕ 0s
52 breq1 ⊢ x = z - s 1 s → x ≤ s y ↔ z - s 1 s ≤ s y
53 oveq2 ⊢ x = z - s 1 s → y - s x = y - s z - s 1 s
54 53 eleq1d ⊢ x = z - s 1 s → y - s x ∈ ℕ 0s ↔ y - s z - s 1 s ∈ ℕ 0s
55 52 54 imbi12d ⊢ x = z - s 1 s → x ≤ s y → y - s x ∈ ℕ 0s ↔ z - s 1 s ≤ s y → y - s z - s 1 s ∈ ℕ 0s
56 55 rspcv ⊢ z - s 1 s ∈ ℕ 0s → ∀ x ∈ ℕ 0s x ≤ s y → y - s x ∈ ℕ 0s → z - s 1 s ≤ s y → y - s z - s 1 s ∈ ℕ 0s
57 23 adantl ⊢ y ∈ ℕ 0s ∧ z ∈ ℕ 0s → z ∈ No
58 1no ⊢ 1 s ∈ No
59 58 a1i ⊢ y ∈ ℕ 0s ∧ z ∈ ℕ 0s → 1 s ∈ No
60 41 adantr ⊢ y ∈ ℕ 0s ∧ z ∈ ℕ 0s → y ∈ No
61 57 59 60 lesubaddsd ⊢ y ∈ ℕ 0s ∧ z ∈ ℕ 0s → z - s 1 s ≤ s y ↔ z ≤ s y + s 1 s
62 60 57 59 subsubs2d ⊢ y ∈ ℕ 0s ∧ z ∈ ℕ 0s → y - s z - s 1 s = y + s 1 s - s z
63 60 59 57 addsubsassd ⊢ y ∈ ℕ 0s ∧ z ∈ ℕ 0s → y + s 1 s - s z = y + s 1 s - s z
64 62 63 eqtr4d ⊢ y ∈ ℕ 0s ∧ z ∈ ℕ 0s → y - s z - s 1 s = y + s 1 s - s z
65 64 eleq1d ⊢ y ∈ ℕ 0s ∧ z ∈ ℕ 0s → y - s z - s 1 s ∈ ℕ 0s ↔ y + s 1 s - s z ∈ ℕ 0s
66 61 65 imbi12d ⊢ y ∈ ℕ 0s ∧ z ∈ ℕ 0s → z - s 1 s ≤ s y → y - s z - s 1 s ∈ ℕ 0s ↔ z ≤ s y + s 1 s → y + s 1 s - s z ∈ ℕ 0s
67 66 biimpd ⊢ y ∈ ℕ 0s ∧ z ∈ ℕ 0s → z - s 1 s ≤ s y → y - s z - s 1 s ∈ ℕ 0s → z ≤ s y + s 1 s → y + s 1 s - s z ∈ ℕ 0s
68 56 67 syl9r ⊢ y ∈ ℕ 0s ∧ z ∈ ℕ 0s → z - s 1 s ∈ ℕ 0s → ∀ x ∈ ℕ 0s x ≤ s y → y - s x ∈ ℕ 0s → z ≤ s y + s 1 s → y + s 1 s - s z ∈ ℕ 0s
69 n0s0m1 ⊢ z ∈ ℕ 0s → z = 0 s ∨ z - s 1 s ∈ ℕ 0s
70 69 adantl ⊢ y ∈ ℕ 0s ∧ z ∈ ℕ 0s → z = 0 s ∨ z - s 1 s ∈ ℕ 0s
71 51 68 70 mpjaod ⊢ y ∈ ℕ 0s ∧ z ∈ ℕ 0s → ∀ x ∈ ℕ 0s x ≤ s y → y - s x ∈ ℕ 0s → z ≤ s y + s 1 s → y + s 1 s - s z ∈ ℕ 0s
72 71 ralrimdva ⊢ y ∈ ℕ 0s → ∀ x ∈ ℕ 0s x ≤ s y → y - s x ∈ ℕ 0s → ∀ z ∈ ℕ 0s z ≤ s y + s 1 s → y + s 1 s - s z ∈ ℕ 0s
73 40 72 biimtrid ⊢ y ∈ ℕ 0s → ∀ z ∈ ℕ 0s z ≤ s y → y - s z ∈ ℕ 0s → ∀ z ∈ ℕ 0s z ≤ s y + s 1 s → y + s 1 s - s z ∈ ℕ 0s
74 5 10 15 20 35 73 n0sind ⊢ N ∈ ℕ 0s → ∀ z ∈ ℕ 0s z ≤ s N → N - s z ∈ ℕ 0s
75 breq1 ⊢ z = M → z ≤ s N ↔ M ≤ s N
76 oveq2 ⊢ z = M → N - s z = N - s M
77 76 eleq1d ⊢ z = M → N - s z ∈ ℕ 0s ↔ N - s M ∈ ℕ 0s
78 75 77 imbi12d ⊢ z = M → z ≤ s N → N - s z ∈ ℕ 0s ↔ M ≤ s N → N - s M ∈ ℕ 0s
79 78 rspcva ⊢ M ∈ ℕ 0s ∧ ∀ z ∈ ℕ 0s z ≤ s N → N - s z ∈ ℕ 0s → M ≤ s N → N - s M ∈ ℕ 0s
80 74 79 sylan2 ⊢ M ∈ ℕ 0s ∧ N ∈ ℕ 0s → M ≤ s N → N - s M ∈ ℕ 0s
81 n0sge0 ⊢ N - s M ∈ ℕ 0s → 0 s ≤ s N - s M
82 n0no ⊢ N ∈ ℕ 0s → N ∈ No
83 82 adantl ⊢ M ∈ ℕ 0s ∧ N ∈ ℕ 0s → N ∈ No
84 n0no ⊢ M ∈ ℕ 0s → M ∈ No
85 84 adantr ⊢ M ∈ ℕ 0s ∧ N ∈ ℕ 0s → M ∈ No
86 83 85 subsge0d ⊢ M ∈ ℕ 0s ∧ N ∈ ℕ 0s → 0 s ≤ s N - s M ↔ M ≤ s N
87 81 86 imbitrid ⊢ M ∈ ℕ 0s ∧ N ∈ ℕ 0s → N - s M ∈ ℕ 0s → M ≤ s N
88 80 87 impbid ⊢ M ∈ ℕ 0s ∧ N ∈ ℕ 0s → M ≤ s N ↔ N - s M ∈ ℕ 0s