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

Theorem bdayiun 28358
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 28347 . . . 4 (𝐴 ∈ No → ((L‘𝐴) |s (R‘𝐴)) = 𝐴)
21fveq2d 6920 . . 3 (𝐴 ∈ No → (bday‘((L‘𝐴) |s (R‘𝐴))) = (bday‘𝐴))
3 lltr 28305 . . . 4 (L‘𝐴) <<s (R‘𝐴)
4 fvex 6929 . . . . 5 (O‘(bday‘𝐴)) ∈ V
5 bdayon 28195 . . . . . . 7 (bday‘𝑥) ∈ On
65onsuci 7884 . . . . . 6 suc (bday‘𝑥) ∈ On
76rgenw 3084 . . . . 5 ∀𝑥 ∈ (O‘(bday‘𝐴))suc (bday‘𝑥) ∈ On
8 iunon 8385 . . . . 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 28340 . . . . . 6 ((L‘𝐴) ∪ (R‘𝐴)) = (O‘(bday‘𝐴))
1110imaeq2i 6068 . . . . 5 (bday “ ((L‘𝐴) ∪ (R‘𝐴))) = (bday “ (O‘(bday‘𝐴)))
12 nfv 1949 . . . . . 6 Ⅎ𝑦 𝐴 ∈ No
13 bdayfun 28190 . . . . . . 7 Fun bday
1413a1i 11 . . . . . 6 (𝐴 ∈ No → Fun bday)
15 fvex 6929 . . . . . . . . . 10 (bday‘𝑦) ∈ V
1615sucid 6473 . . . . . . . . 9 (bday‘𝑦) ∈ suc (bday‘𝑦)
17 fveq2 6916 . . . . . . . . . . . 12 (𝑥 = 𝑦 → (bday‘𝑥) = (bday‘𝑦))
1817suceqd 6456 . . . . . . . . . . 11 (𝑥 = 𝑦 → suc (bday‘𝑥) = suc (bday‘𝑦))
1918eleq2d 2850 . . . . . . . . . 10 (𝑥 = 𝑦 → ((bday‘𝑦) ∈ suc (bday‘𝑥) ↔ (bday‘𝑦) ∈ suc (bday‘𝑦)))
2019rspcev 3580 . . . . . . . . 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 4963 . . . . . 6 ((𝐴 ∈ No ∧ 𝑦 ∈ (O‘(bday‘𝐴))) → (bday‘𝑦) ∈ ∪ 𝑥 ∈ (O‘(bday‘𝐴))suc (bday‘𝑥))
2412, 14, 23funimassd 6982 . . . . 5 (𝐴 ∈ No → (bday “ (O‘(bday‘𝐴))) ⊆ ∪ 𝑥 ∈ (O‘(bday‘𝐴))suc (bday‘𝑥))
2511, 24eqsstrid 3951 . . . 4 (𝐴 ∈ No → (bday “ ((L‘𝐴) ∪ (R‘𝐴))) ⊆ ∪ 𝑥 ∈ (O‘(bday‘𝐴))suc (bday‘𝑥))
26 cutbdaybnd 28238 . . . 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 1495 . . 3 (𝐴 ∈ No → (bday‘((L‘𝐴) |s (R‘𝐴))) ⊆ ∪ 𝑥 ∈ (O‘(bday‘𝐴))suc (bday‘𝑥))
282, 27eqsstrrd 3948 . 2 (𝐴 ∈ No → (bday‘𝐴) ⊆ ∪ 𝑥 ∈ (O‘(bday‘𝐴))suc (bday‘𝑥))
29 oldbdayim 28332 . . . . 5 (𝑥 ∈ (O‘(bday‘𝐴)) → (bday‘𝑥) ∈ (bday‘𝐴))
3029adantl 487 . . . 4 ((𝐴 ∈ No ∧ 𝑥 ∈ (O‘(bday‘𝐴))) → (bday‘𝑥) ∈ (bday‘𝐴))
31 bdayon 28195 . . . . 5 (bday‘𝐴) ∈ On
325, 31onsucssi 7886 . . . 4 ((bday‘𝑥) ∈ (bday‘𝐴) ↔ suc (bday‘𝑥) ⊆ (bday‘𝐴))
3330, 32sylib 221 . . 3 ((𝐴 ∈ No ∧ 𝑥 ∈ (O‘(bday‘𝐴))) → suc (bday‘𝑥) ⊆ (bday‘𝐴))
3433iunssd 5014 . 2 (𝐴 ∈ No → ∪ 𝑥 ∈ (O‘(bday‘𝐴))suc (bday‘𝑥) ⊆ (bday‘𝐴))
3528, 34eqssd 3930 1 (𝐴 ∈ No → (bday‘𝐴) = ∪ 𝑥 ∈ (O‘(bday‘𝐴))suc (bday‘𝑥))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:   → wi 4   ∧ wa 401   = wceq 1570   ∈ wcel 2147  ∀wral 3080  ∃wrex 3090  Vcvv 3454   ⊆ wss 3900   ∪ cun 4152  ∪ ciun 4956   class class class wbr 5108   “ cima 5661  Oncon0 6388  suc csuc 6390  Fun wfun 6560  ‘cfv 6566  (class class class)co 7451  Nocsur 28054  bdaycbday 28056   <<s cslts 28200   |s ccuts 28202  Ocold 28266  Lcleft 28268  Rcright 28269
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 1945  ax-6 2002  ax-7 2043  ax-8 2149  ax-9 2157  ax-10 2180  ax-11 2197  ax-12 2216  ax-ext 2735  ax-rep 5238  ax-sep 5255  ax-nul 5266  ax-pow 5334  ax-pr 5398  ax-un 7783
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-nf 1817  df-sb 2102  df-mo 2567  df-eu 2597  df-clab 2742  df-cleq 2755  df-clel 2839  df-nfc 2913  df-ne 2960  df-ral 3081  df-rex 3091  df-rmo 3369  df-reu 3370  df-rab 3417  df-v 3456  df-sbc 3743  df-csb 3852  df-ss 3901  df-pss 4017  df-dif 4050  df-in 4094  df-un 4154  df-nul 4282  df-if 4486  df-pw 4562  df-sn 4589  df-pr 4591  df-tp 4593  df-op 4841  df-uni 4873  df-int 4913  df-iun 4958  df-br 5109  df-opab 5174  df-mpt 5193  df-tr 5219  df-id 5553  df-eprel 5558  df-po 5566  df-so 5567  df-fr 5611  df-we 5613  df-xp 5664  df-rel 5665  df-cnv 5666  df-co 5667  df-dm 5668  df-rn 5669  df-res 5670  df-ima 5671  df-pred 6330  df-ord 6391  df-on 6392  df-suc 6394  df-iota 6520  df-fun 6568  df-fn 6569  df-f 6570  df-f1 6571  df-fo 6572  df-f1o 6573  df-fv 6574  df-riota 7408  df-ov 7454  df-oprab 7455  df-mpo 7456  df-2nd 8036  df-frecs 8337  df-wrecs 8368  df-recs 8417  df-1o 8514  df-2o 8515  df-no 28057  df-lts 28058  df-bday 28059  df-slts 28201  df-cuts 28203  df-made 28270  df-old 28271  df-left 28273  df-right 28274
This theorem is used by:  bdayle  28359
  Copyright terms: Public domain W3C validator