Subtypes of conditionally complete linear orders #
In this file we give conditions on a subset of a conditionally complete linear order, to ensure that the subtype is itself conditionally complete.
We check that an OrdConnected set satisfies these conditions.
TODO #
Add appropriate instances for all Set.Ixx. This requires a refactor that will allow different
default values for sSup and sInf.
SupSet structure on a nonempty subset s of a preorder with SupSet. This definition is
non-canonical (it uses default s); it should be used only as here, as an auxiliary instance in the
construction of the ConditionallyCompleteLinearOrder structure.
Equations
- subsetSupSet s = { sSup := fun (t : Set ↑s) => if ht : t.Nonempty ∧ BddAbove t ∧ sSup (Subtype.val '' t) ∈ s then ⟨sSup (Subtype.val '' t), ⋯⟩ else default }
Instances For
InfSet structure on a nonempty subset s of a preorder with InfSet. This definition is
non-canonical (it uses default s); it should be used only as here, as an auxiliary instance in the
construction of the ConditionallyCompleteLinearOrder structure.
Equations
- subsetInfSet s = { sInf := fun (t : Set ↑s) => if ht : t.Nonempty ∧ BddBelow t ∧ sInf (Subtype.val '' t) ∈ s then ⟨sInf (Subtype.val '' t), ⋯⟩ else default }
Instances For
For a nonempty subset of a conditionally complete linear order to be a conditionally complete
linear order, it suffices that it contain the sSup of all its nonempty bounded-above subsets, and
the sInf of all its nonempty bounded-below subsets.
See note [reducible non-instances].
Equations
Instances For
The sSup function on a nonempty OrdConnected set s in a conditionally complete linear
order takes values within s, for all nonempty bounded-above subsets of s.
The sInf function on a nonempty OrdConnected set s in a conditionally complete linear
order takes values within s, for all nonempty bounded-below subsets of s.
A nonempty OrdConnected set in a conditionally complete linear order is naturally a
conditionally complete linear order.
Complete lattice structure on Set.Icc
Equations
- Set.Icc.completeLattice = CompleteLattice.mk ⋯ ⋯ ⋯ ⋯ ⋯ ⋯
Complete linear order structure on Set.Icc
Equations
- Set.Iic.instCompleteLattice = CompleteLattice.mk ⋯ ⋯ ⋯ ⋯ ⋯ ⋯