Jakobs' order through the Hessenberg sum #
Jakobs' order on finite multisets of ordinals, read as the order of ordinals through the
Hessenberg (natural) sum h s = ♯_{x ∈ s} ω ^ x. The natural sum is defined through Cantor normal
form coefficients: a ♯ b = CNF.eval ω (CNF.coeff ω a + CNF.coeff ω b).
Main results #
hval_add:h (s + t) = h s ♯ h t.jakobsLT_iff_hval_lt:jakobsLT s t ↔ h s < h t; hencehval_injective.image_hval:{h s | ∀ x ∈ s, x ≤ Λ} = Set.Iio (ω ^ (Λ + 1)).omega0_opow_add_one_lt_epsilon_zero:Λ < ε₀ → ω ^ (Λ + 1) < ε₀.
Related #
Mathlib no longer contains the natural sum of ordinals: it was moved out of
Mathlib.SetTheory.Ordinal.NaturalOps to the combinatorial games library
(https://github.com/vihdzp/combinatorial-games, CombinatorialGames.NatOrdinal), where it is
defined by recursion on NatOrdinal. The nadd here is defined independently, inside Mathlib,
through Cantor normal form coefficients; no equivalence between the two definitions is proved
here.
References #
- F. Jakobs, PhD thesis, 2019, Thm. 1.1.3; Dubrovin–Gräter–Hanke, Prop. 2.1.
Natural (Hessenberg) sum via CNF coefficients #
Natural (Hessenberg) sum: add Cantor-normal-form coefficients base ω.
Equations
Instances For
Natural (Hessenberg) sum: add Cantor-normal-form coefficients base ω.
Equations
- DGH.«term_♯_» = Lean.ParserDescr.trailingNode `DGH.«term_♯_» 65 65 (Lean.ParserDescr.binary `andthen (Lean.ParserDescr.symbol " ♯ ") (Lean.ParserDescr.cat `term 66))
Instances For
Ordinal + is commutative below ω (natural numbers).
Multisets of ordinals as CNF coefficient functions #
cf s x = count x s, as a finitely supported Ordinal-valued function.
Equations
- DGH.cf s = Finsupp.mapRange (fun (n : ℕ) => ↑n) ⋯ (Multiset.toFinsupp s)
Instances For
h s = ♯_{x ∈ s} ω ^ x (the Hessenberg sum of the ω ^ x).
Equations
Instances For
(1) h is a monoid homomorphism (Multiset Ordinal, +) → (Ordinal, ♯).
(2) Jakobs' order is the ordinal order through h #
(2) s <_J t ↔ h s < h t.
(3) Image of N(Λ) #
(3) {h s | all x ∈ s are ≤ Λ} = [0, ω ^ (Λ + 1)).
(2)+(3) packaged: N(Λ) with Jakobs' order is order-isomorphic to ω ^ (Λ + 1).
Corollary: for Λ < ε₀, the order type ω ^ (Λ + 1) of N(Λ) stays below ε₀.