Users' Mathboxes Mathbox for Richard Penner < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >   Mathboxes  >  onov0suclim Structured version   Visualization version   GIF version

Theorem onov0suclim 44275
Description: Compactly express rules for binary operations on ordinals. (Contributed by RP, 18-Jan-2025.)
Hypotheses
Ref Expression
onov0suclim.0 (𝐴 ∈ On → (𝐴 ⊗ ∅) = 𝐷)
onov0suclim.suc ((𝐴 ∈ On ∧ 𝐶 ∈ On) → (𝐴 ⊗ suc 𝐶) = 𝐸)
onov0suclim.lim (((𝐴 ∈ On ∧ 𝐵 ∈ On) ∧ Lim 𝐵) → (𝐴 ⊗ 𝐵) = 𝐹)
Assertion
Ref Expression
onov0suclim ((𝐴 ∈ On ∧ 𝐵 ∈ On) → ((𝐵 = ∅ → (𝐴 ⊗ 𝐵) = 𝐷) ∧ ((𝐵 = suc 𝐶 ∧ 𝐶 ∈ On) → (𝐴 ⊗ 𝐵) = 𝐸) ∧ (Lim 𝐵 → (𝐴 ⊗ 𝐵) = 𝐹)))

Proof of Theorem onov0suclim
StepHypRef Expression
1 eloni 6372 . . . 4 (𝐵 ∈ On → Ord 𝐵)
2 orduniorsuc 7841 . . . . 5 (Ord 𝐵 → (𝐵 = ∪ 𝐵 ∨ 𝐵 = suc ∪ 𝐵))
3 unizlim 6487 . . . . . . 7 (Ord 𝐵 → (𝐵 = ∪ 𝐵 ↔ (𝐵 = ∅ ∨ Lim 𝐵)))
43biimpd 232 . . . . . 6 (Ord 𝐵 → (𝐵 = ∪ 𝐵 → (𝐵 = ∅ ∨ Lim 𝐵)))
54orim1d 981 . . . . 5 (Ord 𝐵 → ((𝐵 = ∪ 𝐵 ∨ 𝐵 = suc ∪ 𝐵) → ((𝐵 = ∅ ∨ Lim 𝐵) ∨ 𝐵 = suc ∪ 𝐵)))
62, 5mpd 16 . . . 4 (Ord 𝐵 → ((𝐵 = ∅ ∨ Lim 𝐵) ∨ 𝐵 = suc ∪ 𝐵))
71, 6syl 18 . . 3 (𝐵 ∈ On → ((𝐵 = ∅ ∨ Lim 𝐵) ∨ 𝐵 = suc ∪ 𝐵))
87adantl 487 . 2 ((𝐴 ∈ On ∧ 𝐵 ∈ On) → ((𝐵 = ∅ ∨ Lim 𝐵) ∨ 𝐵 = suc ∪ 𝐵))
9 oveq2 7428 . . . . . . . . 9 (𝐵 = ∅ → (𝐴 ⊗ 𝐵) = (𝐴 ⊗ ∅))
10 onov0suclim.0 . . . . . . . . 9 (𝐴 ∈ On → (𝐴 ⊗ ∅) = 𝐷)
119, 10sylan9eqr 2818 . . . . . . . 8 ((𝐴 ∈ On ∧ 𝐵 = ∅) → (𝐴 ⊗ 𝐵) = 𝐷)
1211ex 418 . . . . . . 7 (𝐴 ∈ On → (𝐵 = ∅ → (𝐴 ⊗ 𝐵) = 𝐷))
1312ad2antrr 739 . . . . . 6 (((𝐴 ∈ On ∧ 𝐵 ∈ On) ∧ 𝐵 = ∅) → (𝐵 = ∅ → (𝐴 ⊗ 𝐵) = 𝐷))
14 eloni 6372 . . . . . . . . . . . . 13 (𝐶 ∈ On → Ord 𝐶)
15 0elsuc 7846 . . . . . . . . . . . . 13 (Ord 𝐶 → ∅ ∈ suc 𝐶)
1614, 15syl 18 . . . . . . . . . . . 12 (𝐶 ∈ On → ∅ ∈ suc 𝐶)
1716adantl 487 . . . . . . . . . . 11 ((𝐵 = suc 𝐶 ∧ 𝐶 ∈ On) → ∅ ∈ suc 𝐶)
18 simpl 488 . . . . . . . . . . 11 ((𝐵 = suc 𝐶 ∧ 𝐶 ∈ On) → 𝐵 = suc 𝐶)
1917, 18eleqtrrd 2864 . . . . . . . . . 10 ((𝐵 = suc 𝐶 ∧ 𝐶 ∈ On) → ∅ ∈ 𝐵)
20 n0i 4286 . . . . . . . . . 10 (∅ ∈ 𝐵 → ¬ 𝐵 = ∅)
2119, 20syl 18 . . . . . . . . 9 ((𝐵 = suc 𝐶 ∧ 𝐶 ∈ On) → ¬ 𝐵 = ∅)
2221pm2.21d 122 . . . . . . . 8 ((𝐵 = suc 𝐶 ∧ 𝐶 ∈ On) → (𝐵 = ∅ → (𝐴 ⊗ 𝐵) = 𝐸))
2322adantl 487 . . . . . . 7 (((𝐴 ∈ On ∧ 𝐵 ∈ On) ∧ (𝐵 = suc 𝐶 ∧ 𝐶 ∈ On)) → (𝐵 = ∅ → (𝐴 ⊗ 𝐵) = 𝐸))
2423impancom 457 . . . . . 6 (((𝐴 ∈ On ∧ 𝐵 ∈ On) ∧ 𝐵 = ∅) → ((𝐵 = suc 𝐶 ∧ 𝐶 ∈ On) → (𝐴 ⊗ 𝐵) = 𝐸))
25 nlim0 6423 . . . . . . . . 9 ¬ Lim ∅
26 limeq 6374 . . . . . . . . 9 (𝐵 = ∅ → (Lim 𝐵 ↔ Lim ∅))
2725, 26mtbiri 330 . . . . . . . 8 (𝐵 = ∅ → ¬ Lim 𝐵)
2827adantl 487 . . . . . . 7 (((𝐴 ∈ On ∧ 𝐵 ∈ On) ∧ 𝐵 = ∅) → ¬ Lim 𝐵)
2928pm2.21d 122 . . . . . 6 (((𝐴 ∈ On ∧ 𝐵 ∈ On) ∧ 𝐵 = ∅) → (Lim 𝐵 → (𝐴 ⊗ 𝐵) = 𝐹))
3013, 24, 293jca 1146 . . . . 5 (((𝐴 ∈ On ∧ 𝐵 ∈ On) ∧ 𝐵 = ∅) → ((𝐵 = ∅ → (𝐴 ⊗ 𝐵) = 𝐷) ∧ ((𝐵 = suc 𝐶 ∧ 𝐶 ∈ On) → (𝐴 ⊗ 𝐵) = 𝐸) ∧ (Lim 𝐵 → (𝐴 ⊗ 𝐵) = 𝐹)))
3130ex 418 . . . 4 ((𝐴 ∈ On ∧ 𝐵 ∈ On) → (𝐵 = ∅ → ((𝐵 = ∅ → (𝐴 ⊗ 𝐵) = 𝐷) ∧ ((𝐵 = suc 𝐶 ∧ 𝐶 ∈ On) → (𝐴 ⊗ 𝐵) = 𝐸) ∧ (Lim 𝐵 → (𝐴 ⊗ 𝐵) = 𝐹))))
3227con2i 140 . . . . . . . 8 (Lim 𝐵 → ¬ 𝐵 = ∅)
3332adantl 487 . . . . . . 7 (((𝐴 ∈ On ∧ 𝐵 ∈ On) ∧ Lim 𝐵) → ¬ 𝐵 = ∅)
3433pm2.21d 122 . . . . . 6 (((𝐴 ∈ On ∧ 𝐵 ∈ On) ∧ Lim 𝐵) → (𝐵 = ∅ → (𝐴 ⊗ 𝐵) = 𝐷))
35 limeq 6374 . . . . . . . . . . . 12 (𝐵 = suc 𝐶 → (Lim 𝐵 ↔ Lim suc 𝐶))
3635notbid 321 . . . . . . . . . . 11 (𝐵 = suc 𝐶 → (¬ Lim 𝐵 ↔ ¬ Lim suc 𝐶))
3736biimprd 251 . . . . . . . . . 10 (𝐵 = suc 𝐶 → (¬ Lim suc 𝐶 → ¬ Lim 𝐵))
38 nlimsucg 7853 . . . . . . . . . 10 (𝐶 ∈ On → ¬ Lim suc 𝐶)
3937, 38impel 515 . . . . . . . . 9 ((𝐵 = suc 𝐶 ∧ 𝐶 ∈ On) → ¬ Lim 𝐵)
4039adantl 487 . . . . . . . 8 (((𝐴 ∈ On ∧ 𝐵 ∈ On) ∧ (𝐵 = suc 𝐶 ∧ 𝐶 ∈ On)) → ¬ Lim 𝐵)
4140pm2.21d 122 . . . . . . 7 (((𝐴 ∈ On ∧ 𝐵 ∈ On) ∧ (𝐵 = suc 𝐶 ∧ 𝐶 ∈ On)) → (Lim 𝐵 → (𝐴 ⊗ 𝐵) = 𝐸))
4241impancom 457 . . . . . 6 (((𝐴 ∈ On ∧ 𝐵 ∈ On) ∧ Lim 𝐵) → ((𝐵 = suc 𝐶 ∧ 𝐶 ∈ On) → (𝐴 ⊗ 𝐵) = 𝐸))
43 onov0suclim.lim . . . . . . 7 (((𝐴 ∈ On ∧ 𝐵 ∈ On) ∧ Lim 𝐵) → (𝐴 ⊗ 𝐵) = 𝐹)
4443a1d 26 . . . . . 6 (((𝐴 ∈ On ∧ 𝐵 ∈ On) ∧ Lim 𝐵) → (Lim 𝐵 → (𝐴 ⊗ 𝐵) = 𝐹))
4534, 42, 443jca 1146 . . . . 5 (((𝐴 ∈ On ∧ 𝐵 ∈ On) ∧ Lim 𝐵) → ((𝐵 = ∅ → (𝐴 ⊗ 𝐵) = 𝐷) ∧ ((𝐵 = suc 𝐶 ∧ 𝐶 ∈ On) → (𝐴 ⊗ 𝐵) = 𝐸) ∧ (Lim 𝐵 → (𝐴 ⊗ 𝐵) = 𝐹)))
4645ex 418 . . . 4 ((𝐴 ∈ On ∧ 𝐵 ∈ On) → (Lim 𝐵 → ((𝐵 = ∅ → (𝐴 ⊗ 𝐵) = 𝐷) ∧ ((𝐵 = suc 𝐶 ∧ 𝐶 ∈ On) → (𝐴 ⊗ 𝐵) = 𝐸) ∧ (Lim 𝐵 → (𝐴 ⊗ 𝐵) = 𝐹))))
4731, 46jaod 873 . . 3 ((𝐴 ∈ On ∧ 𝐵 ∈ On) → ((𝐵 = ∅ ∨ Lim 𝐵) → ((𝐵 = ∅ → (𝐴 ⊗ 𝐵) = 𝐷) ∧ ((𝐵 = suc 𝐶 ∧ 𝐶 ∈ On) → (𝐴 ⊗ 𝐵) = 𝐸) ∧ (Lim 𝐵 → (𝐴 ⊗ 𝐵) = 𝐹))))
48 1n0 8495 . . . . . . . . 9 1o ≠ ∅
49 necom 3009 . . . . . . . . . . 11 (1o ≠ ∅ ↔ ∅ ≠ 1o)
50 df-1o 8476 . . . . . . . . . . . . 13 1o = suc ∅
51 uni0 4896 . . . . . . . . . . . . . 14 ∪ ∅ = ∅
52 suceq 6431 . . . . . . . . . . . . . 14 (∪ ∅ = ∅ → suc ∪ ∅ = suc ∅)
5351, 52ax-mp 5 . . . . . . . . . . . . 13 suc ∪ ∅ = suc ∅
5450, 53eqtr4i 2787 . . . . . . . . . . . 12 1o = suc ∪ ∅
5554neeq2i 3021 . . . . . . . . . . 11 (∅ ≠ 1o ↔ ∅ ≠ suc ∪ ∅)
56 df-ne 2957 . . . . . . . . . . 11 (∅ ≠ suc ∪ ∅ ↔ ¬ ∅ = suc ∪ ∅)
5749, 55, 563bitri 300 . . . . . . . . . 10 (1o ≠ ∅ ↔ ¬ ∅ = suc ∪ ∅)
58 id 23 . . . . . . . . . . . 12 (𝐵 = ∅ → 𝐵 = ∅)
59 unieq 4878 . . . . . . . . . . . . 13 (𝐵 = ∅ → ∪ 𝐵 = ∪ ∅)
60 suceq 6431 . . . . . . . . . . . . 13 (∪ 𝐵 = ∪ ∅ → suc ∪ 𝐵 = suc ∪ ∅)
6159, 60syl 18 . . . . . . . . . . . 12 (𝐵 = ∅ → suc ∪ 𝐵 = suc ∪ ∅)
6258, 61eqeq12d 2777 . . . . . . . . . . 11 (𝐵 = ∅ → (𝐵 = suc ∪ 𝐵 ↔ ∅ = suc ∪ ∅))
6362notbid 321 . . . . . . . . . 10 (𝐵 = ∅ → (¬ 𝐵 = suc ∪ 𝐵 ↔ ¬ ∅ = suc ∪ ∅))
6457, 63bitr4id 293 . . . . . . . . 9 (𝐵 = ∅ → (1o ≠ ∅ ↔ ¬ 𝐵 = suc ∪ 𝐵))
6548, 64mpbii 236 . . . . . . . 8 (𝐵 = ∅ → ¬ 𝐵 = suc ∪ 𝐵)
6665con2i 140 . . . . . . 7 (𝐵 = suc ∪ 𝐵 → ¬ 𝐵 = ∅)
6766adantl 487 . . . . . 6 (((𝐴 ∈ On ∧ 𝐵 ∈ On) ∧ 𝐵 = suc ∪ 𝐵) → ¬ 𝐵 = ∅)
6867pm2.21d 122 . . . . 5 (((𝐴 ∈ On ∧ 𝐵 ∈ On) ∧ 𝐵 = suc ∪ 𝐵) → (𝐵 = ∅ → (𝐴 ⊗ 𝐵) = 𝐷))
69 simprl 783 . . . . . . . . 9 ((𝐴 ∈ On ∧ (𝐵 = suc 𝐶 ∧ 𝐶 ∈ On)) → 𝐵 = suc 𝐶)
7069oveq2d 7436 . . . . . . . 8 ((𝐴 ∈ On ∧ (𝐵 = suc 𝐶 ∧ 𝐶 ∈ On)) → (𝐴 ⊗ 𝐵) = (𝐴 ⊗ suc 𝐶))
71 onov0suclim.suc . . . . . . . . 9 ((𝐴 ∈ On ∧ 𝐶 ∈ On) → (𝐴 ⊗ suc 𝐶) = 𝐸)
7271adantrl 729 . . . . . . . 8 ((𝐴 ∈ On ∧ (𝐵 = suc 𝐶 ∧ 𝐶 ∈ On)) → (𝐴 ⊗ suc 𝐶) = 𝐸)
7370, 72eqtrd 2796 . . . . . . 7 ((𝐴 ∈ On ∧ (𝐵 = suc 𝐶 ∧ 𝐶 ∈ On)) → (𝐴 ⊗ 𝐵) = 𝐸)
7473ex 418 . . . . . 6 (𝐴 ∈ On → ((𝐵 = suc 𝐶 ∧ 𝐶 ∈ On) → (𝐴 ⊗ 𝐵) = 𝐸))
7574ad2antrr 739 . . . . 5 (((𝐴 ∈ On ∧ 𝐵 ∈ On) ∧ 𝐵 = suc ∪ 𝐵) → ((𝐵 = suc 𝐶 ∧ 𝐶 ∈ On) → (𝐴 ⊗ 𝐵) = 𝐸))
76 onuni 7802 . . . . . . . . 9 (𝐵 ∈ On → ∪ 𝐵 ∈ On)
77 nlimsucg 7853 . . . . . . . . 9 (∪ 𝐵 ∈ On → ¬ Lim suc ∪ 𝐵)
7876, 77syl 18 . . . . . . . 8 (𝐵 ∈ On → ¬ Lim suc ∪ 𝐵)
79 limeq 6374 . . . . . . . . . 10 (𝐵 = suc ∪ 𝐵 → (Lim 𝐵 ↔ Lim suc ∪ 𝐵))
8079notbid 321 . . . . . . . . 9 (𝐵 = suc ∪ 𝐵 → (¬ Lim 𝐵 ↔ ¬ Lim suc ∪ 𝐵))
8180biimprd 251 . . . . . . . 8 (𝐵 = suc ∪ 𝐵 → (¬ Lim suc ∪ 𝐵 → ¬ Lim 𝐵))
8278, 81mpan9 516 . . . . . . 7 ((𝐵 ∈ On ∧ 𝐵 = suc ∪ 𝐵) → ¬ Lim 𝐵)
8382adantll 727 . . . . . 6 (((𝐴 ∈ On ∧ 𝐵 ∈ On) ∧ 𝐵 = suc ∪ 𝐵) → ¬ Lim 𝐵)
8483pm2.21d 122 . . . . 5 (((𝐴 ∈ On ∧ 𝐵 ∈ On) ∧ 𝐵 = suc ∪ 𝐵) → (Lim 𝐵 → (𝐴 ⊗ 𝐵) = 𝐹))
8568, 75, 843jca 1146 . . . 4 (((𝐴 ∈ On ∧ 𝐵 ∈ On) ∧ 𝐵 = suc ∪ 𝐵) → ((𝐵 = ∅ → (𝐴 ⊗ 𝐵) = 𝐷) ∧ ((𝐵 = suc 𝐶 ∧ 𝐶 ∈ On) → (𝐴 ⊗ 𝐵) = 𝐸) ∧ (Lim 𝐵 → (𝐴 ⊗ 𝐵) = 𝐹)))
8685ex 418 . . 3 ((𝐴 ∈ On ∧ 𝐵 ∈ On) → (𝐵 = suc ∪ 𝐵 → ((𝐵 = ∅ → (𝐴 ⊗ 𝐵) = 𝐷) ∧ ((𝐵 = suc 𝐶 ∧ 𝐶 ∈ On) → (𝐴 ⊗ 𝐵) = 𝐸) ∧ (Lim 𝐵 → (𝐴 ⊗ 𝐵) = 𝐹))))
8747, 86jaod 873 . 2 ((𝐴 ∈ On ∧ 𝐵 ∈ On) → (((𝐵 = ∅ ∨ Lim 𝐵) ∨ 𝐵 = suc ∪ 𝐵) → ((𝐵 = ∅ → (𝐴 ⊗ 𝐵) = 𝐷) ∧ ((𝐵 = suc 𝐶 ∧ 𝐶 ∈ On) → (𝐴 ⊗ 𝐵) = 𝐸) ∧ (Lim 𝐵 → (𝐴 ⊗ 𝐵) = 𝐹))))
888, 87mpd 16 1 ((𝐴 ∈ On ∧ 𝐵 ∈ On) → ((𝐵 = ∅ → (𝐴 ⊗ 𝐵) = 𝐷) ∧ ((𝐵 = suc 𝐶 ∧ 𝐶 ∈ On) → (𝐴 ⊗ 𝐵) = 𝐸) ∧ (Lim 𝐵 → (𝐴 ⊗ 𝐵) = 𝐹)))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  ¬ wn 3   → wi 4   ∧ wa 401   ∨ wo 861   ∧ w3a 1103   = wceq 1570   ∈ wcel 2145   ≠ wne 2956  ∅c0 4279  ∪ cuni 4867  Ord word 6361  Oncon0 6362  Lim wlim 6363  suc csuc 6364  (class class class)co 7420  1oc1o 8469
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1828  ax-4 1842  ax-5 1943  ax-6 2000  ax-7 2041  ax-8 2147  ax-9 2155  ax-ext 2733  ax-sep 5249  ax-nul 5260  ax-pr 5391  ax-un 7751
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3or 1104  df-3an 1105  df-tru 1573  df-fal 1583  df-ex 1813  df-sb 2100  df-clab 2740  df-cleq 2753  df-clel 2836  df-ne 2957  df-ral 3078  df-rex 3088  df-rab 3414  df-v 3453  df-dif 3902  df-un 3904  df-in 3906  df-ss 3916  df-pss 3919  df-nul 4280  df-if 4483  df-pw 4559  df-sn 4585  df-pr 4587  df-op 4591  df-uni 4868  df-br 5104  df-opab 5168  df-tr 5213  df-eprel 5551  df-po 5559  df-so 5560  df-fr 5604  df-we 5606  df-ord 6365  df-on 6366  df-lim 6367  df-suc 6368  df-iota 6494  df-fv 6546  df-ov 7423  df-1o 8476
This theorem is used by:  oa0suclim  44276  om0suclim  44277  oe0suclim  44278
  Copyright terms: Public domain W3C validator