Lattice structures on the type of nonnegative elements #
@[implicit_reducible]
Equations
- Nonneg.orderBot = { bot := Nonneg.orderBot._aux_1, bot_le := ⋯ }
@[implicit_reducible]
Equations
- Nonneg.semilatticeSup = { toPartialOrder := Subtype.partialOrder fun (x : α) => a ≤ x, sup := Nonneg.semilatticeSup._aux_1, le_sup_left := ⋯, le_sup_right := ⋯, sup_le := ⋯ }
@[implicit_reducible]
Equations
- Nonneg.semilatticeInf = { toPartialOrder := Subtype.partialOrder fun (x : α) => a ≤ x, inf := Nonneg.semilatticeInf._aux_1, inf_le_left := ⋯, inf_le_right := ⋯, le_inf := ⋯ }
@[implicit_reducible]
Equations
- Nonneg.distribLattice = { toSemilatticeSup := Nonneg.semilatticeSup, inf := Nonneg.distribLattice._aux_1, inf_le_left := ⋯, inf_le_right := ⋯, le_inf := ⋯, le_sup_inf := ⋯ }
@[reducible, inline]
noncomputable abbrev
Nonneg.conditionallyCompleteLinearOrder
{α : Type u_1}
[ConditionallyCompleteLinearOrder α]
{a : α}
:
If sSup ∅ ≤ a then {x : α // a ≤ x} is a ConditionallyCompleteLinearOrder.
Equations
- One or more equations did not get rendered due to their size.
Instances For
@[reducible, inline]
noncomputable abbrev
Nonneg.conditionallyCompleteLinearOrderBot
{α : Type u_1}
[ConditionallyCompleteLinearOrder α]
(a : α)
:
If sSup ∅ ≤ a then {x : α // a ≤ x} is a ConditionallyCompleteLinearOrderBot.
This instance uses data fields from Subtype.linearOrder to help type-class inference.
The Set.Ici data fields are definitionally equal, but that requires unfolding semireducible
definitions, so type-class inference won't see this.
Equations
- Nonneg.conditionallyCompleteLinearOrderBot a = { toConditionallyCompleteLinearOrder := Nonneg.conditionallyCompleteLinearOrder, toOrderBot := Nonneg.orderBot, csSup_empty := ⋯ }