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

Theorem bdayiun 28310
Description: The birthday of a surreal is the least upper bound of the successors of the birthdays of its options. This is the definition of the birthday of a combinatorial game in the Lean Combinatorial Game Theory library at https://github.com/vihdzp/combinatorial-games. (Contributed by Scott Fenton, 22-Nov-2025.)
Assertion
Ref Expression
bdayiun (𝐴 ∈ No → (bday‘𝐴) = ∪ 𝑥 ∈ (O‘(bday‘𝐴))suc (bday‘𝑥))
Distinct variable group:   𝑥,𝐴

Proof of Theorem bdayiun
Dummy variable 𝑦 is distinct from all other variables.
StepHypRef Expression
1 lrcut 28299 . . . 4 (𝐴 ∈ No → ((L‘𝐴) |s (R‘𝐴)) = 𝐴)
21fveq2d 6894 . . 3 (𝐴 ∈ No → (bday‘((L‘𝐴) |s (R‘𝐴))) = (bday‘𝐴))
3 lltr 28257 . . . 4 (L‘𝐴) <<s (R‘𝐴)
4 fvex 6903 . . . . 5 (O‘(bday‘𝐴)) ∈ V
5 bdayon 28147 . . . . . . 7 (bday‘𝑥) ∈ On
65onsuci 7854 . . . . . 6 suc (bday‘𝑥) ∈ On
76rgenw 3080 . . . . 5 ∀𝑥 ∈ (O‘(bday‘𝐴))suc (bday‘𝑥) ∈ On
8 iunon 8354 . . . . 5 (((O‘(bday‘𝐴)) ∈ V ∧ ∀𝑥 ∈ (O‘(bday‘𝐴))suc (bday‘𝑥) ∈ On) → ∪ 𝑥 ∈ (O‘(bday‘𝐴))suc (bday‘𝑥) ∈ On)
94, 7, 8mp2an 705 . . . 4 ∪ 𝑥 ∈ (O‘(bday‘𝐴))suc (bday‘𝑥) ∈ On
10 lrold 28292 . . . . . 6 ((L‘𝐴) ∪ (R‘𝐴)) = (O‘(bday‘𝐴))
1110imaeq2i 6052 . . . . 5 (bday “ ((L‘𝐴) ∪ (R‘𝐴))) = (bday “ (O‘(bday‘𝐴)))
12 nfv 1946 . . . . . 6 Ⅎ𝑦 𝐴 ∈ No
13 bdayfun 28142 . . . . . . 7 Fun bday
1413a1i 11 . . . . . 6 (𝐴 ∈ No → Fun bday)
15 fvex 6903 . . . . . . . . . 10 (bday‘𝑦) ∈ V
1615sucid 6450 . . . . . . . . 9 (bday‘𝑦) ∈ suc (bday‘𝑦)
17 fveq2 6890 . . . . . . . . . . . 12 (𝑥 = 𝑦 → (bday‘𝑥) = (bday‘𝑦))
1817suceqd 6433 . . . . . . . . . . 11 (𝑥 = 𝑦 → suc (bday‘𝑥) = suc (bday‘𝑦))
1918eleq2d 2846 . . . . . . . . . 10 (𝑥 = 𝑦 → ((bday‘𝑦) ∈ suc (bday‘𝑥) ↔ (bday‘𝑦) ∈ suc (bday‘𝑦)))
2019rspcev 3576 . . . . . . . . 9 ((𝑦 ∈ (O‘(bday‘𝐴)) ∧ (bday‘𝑦) ∈ suc (bday‘𝑦)) → ∃𝑥 ∈ (O‘(bday‘𝐴))(bday‘𝑦) ∈ suc (bday‘𝑥))
2116, 20mpan2 704 . . . . . . . 8 (𝑦 ∈ (O‘(bday‘𝐴)) → ∃𝑥 ∈ (O‘(bday‘𝐴))(bday‘𝑦) ∈ suc (bday‘𝑥))
2221adantl 487 . . . . . . 7 ((𝐴 ∈ No ∧ 𝑦 ∈ (O‘(bday‘𝐴))) → ∃𝑥 ∈ (O‘(bday‘𝐴))(bday‘𝑦) ∈ suc (bday‘𝑥))
2322eliund 4957 . . . . . 6 ((𝐴 ∈ No ∧ 𝑦 ∈ (O‘(bday‘𝐴))) → (bday‘𝑦) ∈ ∪ 𝑥 ∈ (O‘(bday‘𝐴))suc (bday‘𝑥))
2412, 14, 23funimassd 6956 . . . . 5 (𝐴 ∈ No → (bday “ (O‘(bday‘𝐴))) ⊆ ∪ 𝑥 ∈ (O‘(bday‘𝐴))suc (bday‘𝑥))
2511, 24eqsstrid 3947 . . . 4 (𝐴 ∈ No → (bday “ ((L‘𝐴) ∪ (R‘𝐴))) ⊆ ∪ 𝑥 ∈ (O‘(bday‘𝐴))suc (bday‘𝑥))
26 cutbdaybnd 28190 . . . 4 (((L‘𝐴) <<s (R‘𝐴) ∧ ∪ 𝑥 ∈ (O‘(bday‘𝐴))suc (bday‘𝑥) ∈ On ∧ (bday “ ((L‘𝐴) ∪ (R‘𝐴))) ⊆ ∪ 𝑥 ∈ (O‘(bday‘𝐴))suc (bday‘𝑥)) → (bday‘((L‘𝐴) |s (R‘𝐴))) ⊆ ∪ 𝑥 ∈ (O‘(bday‘𝐴))suc (bday‘𝑥))
273, 9, 25, 26mp3an12i 1494 . . 3 (𝐴 ∈ No → (bday‘((L‘𝐴) |s (R‘𝐴))) ⊆ ∪ 𝑥 ∈ (O‘(bday‘𝐴))suc (bday‘𝑥))
282, 27eqsstrrd 3944 . 2 (𝐴 ∈ No → (bday‘𝐴) ⊆ ∪ 𝑥 ∈ (O‘(bday‘𝐴))suc (bday‘𝑥))
29 oldbdayim 28284 . . . . 5 (𝑥 ∈ (O‘(bday‘𝐴)) → (bday‘𝑥) ∈ (bday‘𝐴))
3029adantl 487 . . . 4 ((𝐴 ∈ No ∧ 𝑥 ∈ (O‘(bday‘𝐴))) → (bday‘𝑥) ∈ (bday‘𝐴))
31 bdayon 28147 . . . . 5 (bday‘𝐴) ∈ On
325, 31onsucssi 7856 . . . 4 ((bday‘𝑥) ∈ (bday‘𝐴) ↔ suc (bday‘𝑥) ⊆ (bday‘𝐴))
3330, 32sylib 221 . . 3 ((𝐴 ∈ No ∧ 𝑥 ∈ (O‘(bday‘𝐴))) → suc (bday‘𝑥) ⊆ (bday‘𝐴))
3433iunssd 5008 . 2 (𝐴 ∈ No → ∪ 𝑥 ∈ (O‘(bday‘𝐴))suc (bday‘𝑥) ⊆ (bday‘𝐴))
3528, 34eqssd 3926 1 (𝐴 ∈ No → (bday‘𝐴) = ∪ 𝑥 ∈ (O‘(bday‘𝐴))suc (bday‘𝑥))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:   → wi 4   ∧ wa 401   = wceq 1569   ∈ wcel 2144  ∀wral 3076  ∃wrex 3086  Vcvv 3450   ⊆ wss 3896   ∪ cun 4148  ∪ ciun 4950   class class class wbr 5102   “ cima 5654  Oncon0 6365  suc csuc 6367  Fun wfun 6537  ‘cfv 6543  (class class class)co 7424  Nocsur 28006  bdaycbday 28008   <<s cslts 28152   |s ccuts 28154  Ocold 28218  Lcleft 28220  Rcright 28221
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1827  ax-4 1841  ax-5 1942  ax-6 1999  ax-7 2040  ax-8 2146  ax-9 2154  ax-10 2177  ax-11 2193  ax-12 2212  ax-ext 2732  ax-rep 5231  ax-sep 5248  ax-nul 5259  ax-pow 5327  ax-pr 5391  ax-un 7755
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3or 1104  df-3an 1105  df-tru 1572  df-fal 1582  df-ex 1812  df-nf 1816  df-sb 2099  df-mo 2564  df-eu 2594  df-clab 2739  df-cleq 2752  df-clel 2835  df-nfc 2909  df-ne 2956  df-ral 3077  df-rex 3087  df-rmo 3365  df-reu 3366  df-rab 3413  df-v 3452  df-sbc 3739  df-csb 3848  df-ss 3897  df-pss 4013  df-dif 4046  df-in 4090  df-un 4150  df-nul 4278  df-if 4482  df-pw 4558  df-sn 4585  df-pr 4587  df-tp 4589  df-op 4835  df-uni 4867  df-int 4907  df-iun 4952  df-br 5103  df-opab 5167  df-mpt 5186  df-tr 5212  df-id 5546  df-eprel 5551  df-po 5559  df-so 5560  df-fr 5604  df-we 5606  df-xp 5657  df-rel 5658  df-cnv 5659  df-co 5660  df-dm 5661  df-rn 5662  df-res 5663  df-ima 5664  df-pred 6307  df-ord 6368  df-on 6369  df-suc 6371  df-iota 6497  df-fun 6545  df-fn 6546  df-f 6547  df-f1 6548  df-fo 6549  df-f1o 6550  df-fv 6551  df-riota 7381  df-ov 7427  df-oprab 7428  df-mpo 7429  df-2nd 8006  df-frecs 8306  df-wrecs 8337  df-recs 8386  df-1o 8483  df-2o 8484  df-no 28009  df-lts 28010  df-bday 28011  df-slts 28153  df-cuts 28155  df-made 28222  df-old 28223  df-left 28225  df-right 28226
This theorem is used by:  bdayle  28311
  Copyright terms: Public domain W3C validator