Topology of ordinals #
We prove some miscellaneous results involving the order topology of ordinals.
Main results #
Ordinal.isClosed_iff_iSup: A set of ordinals is closed iff it's closed under suprema.Ordinal.enumOrd_isNormal_iff_isClosed: The function enumerating the ordinals of a set is normal iff the set is closed.
Todo #
Most things in this file should be generalized to other well-orders, or to Scott-Hausdorff topologies.
@[implicit_reducible]
@[deprecated SuccOrder.isOpen_singleton_iff (since := "2026-01-20")]
@[deprecated SuccOrder.nhds_eq_pure (since := "2026-01-20")]
@[deprecated SuccOrder.isOpen_iff (since := "2026-01-20")]
theorem
Ordinal.mem_iff_iSup_of_isClosed
{s : Set Ordinal.{u}}
{a : Ordinal.{u}}
(hs : IsClosed s)
:
@[deprecated Ordinal.mem_closure_iff_iSup (since := "2026-04-05")]
theorem
Ordinal.mem_closure_iff_bsup
{s : Set Ordinal.{u}}
{a : Ordinal.{u}}
:
a ∈ closure s ↔ ∃ (o : Ordinal.{u}) (_ : o ≠ 0) (f : (a : Ordinal.{u}) → a < o → Ordinal.{u}),
(∀ (i : Ordinal.{u}) (hi : i < o), f i hi ∈ s) ∧ o.bsup f = a
@[deprecated Ordinal.mem_closure_iff_iSup (since := "2026-04-05")]
theorem
Ordinal.mem_closed_iff_bsup
{s : Set Ordinal.{u}}
{a : Ordinal.{u}}
(hs : IsClosed s)
:
a ∈ s ↔ ∃ (o : Ordinal.{u}) (_ : o ≠ 0) (f : (a : Ordinal.{u}) → a < o → Ordinal.{u}),
(∀ (i : Ordinal.{u}) (hi : i < o), f i hi ∈ s) ∧ o.bsup f = a
@[deprecated Ordinal.isClosed_iff_iSup (since := "2026-04-05")]
theorem
Ordinal.isClosed_iff_bsup
{s : Set Ordinal.{u}}
:
IsClosed s ↔ ∀ {o : Ordinal.{u}},
o ≠ 0 →
∀ (f : (a : Ordinal.{u}) → a < o → Ordinal.{u}), (∀ (i : Ordinal.{u}) (hi : i < o), f i hi ∈ s) → o.bsup f ∈ s
@[deprecated SuccOrder.isSuccLimit_of_mem_frontier (since := "2026-01-20")]
theorem
Ordinal.isSuccLimit_of_mem_frontier
{s : Set Ordinal.{u}}
{a : Ordinal.{u}}
(ha : a ∈ frontier s)
:
An ordinal is an accumulation point of a set of ordinals if it is positive and there are elements in the set arbitrarily close to the ordinal from below.
Equations
- o.IsAcc S = AccPt o (Filter.principal S)
Instances For
A set of ordinals is closed below an ordinal if it contains all of its accumulation points below the ordinal.
Equations
- Ordinal.IsClosedBelow S o = IsClosed (Subtype.val ⁻¹' S)
Instances For
theorem
Ordinal.IsAcc.forall_lt
{o : Ordinal.{u_1}}
{S : Set Ordinal.{u_1}}
(h : o.IsAcc S)
(p : Ordinal.{u_1})
:
theorem
Ordinal.IsAcc.mono
{o : Ordinal.{u_1}}
{S T : Set Ordinal.{u_1}}
(h : S ⊆ T)
(ho : o.IsAcc S)
:
o.IsAcc T
theorem
Ordinal.IsAcc.inter_Ioo_nonempty
{o : Ordinal.{u_1}}
{S : Set Ordinal.{u_1}}
(hS : o.IsAcc S)
{p : Ordinal.{u_1}}
(hp : p < o)
:
@[deprecated Topology.IsOpenEmbedding.accPt_comap_iff (since := "2026-03-30")]
theorem
Ordinal.IsClosedBelow.forall_lt
{S : Set Ordinal.{u_1}}
{o : Ordinal.{u_1}}
:
IsClosedBelow S o → ∀ p < o, p.IsAcc S → p ∈ S
Alias of the forward direction of Ordinal.isClosedBelow_iff.
theorem
Ordinal.IsClosedBelow.sInter
{o : Ordinal.{u_1}}
{S : Set (Set Ordinal.{u_1})}
(h : ∀ C ∈ S, IsClosedBelow C o)
:
IsClosedBelow (⋂₀ S) o
theorem
Ordinal.IsClosedBelow.iInter
{ι : Type u}
{f : ι → Set Ordinal.{u_1}}
{o : Ordinal.{u_1}}
(h : ∀ (i : ι), IsClosedBelow (f i) o)
:
IsClosedBelow (⋂ (i : ι), f i) o