WithBot
, WithTop
#
Adding a bot
or a top
to an order.
Main declarations #
With
: Equipsα Option α
with the order onα
plusnone
as the top/bottom element.
Equations
- WithBot.instReprWithBot = { reprPrec := fun o x => match o with | none => Std.Format.text "⊥" | some a => Std.Format.text "↑" ++ repr a }
Equations
- (_ : Nontrivial (WithBot α)) = (_ : Nontrivial (Option α))
Specialization of Option.getD
to values in WithBot α
that respects API boundaries.
Equations
- WithBot.unbot' d x = WithBot.recBotCoe d id x
Instances For
Lift a map f : α → β
to WithBot α → WithBot β
. Implemented using Option.map
.
Equations
- WithBot.map f = Option.map f
Instances For
Equations
Equations
- WithBot.orderBot = let src := WithBot.bot; OrderBot.mk (_ : ∀ (x : WithBot α), none ≤ x)
Equations
- WithBot.instBoundedOrder = let src := WithBot.orderBot; let src_1 := WithBot.orderTop; BoundedOrder.mk
There is a general version le_bot_iff
, but this lemma does not require a PartialOrder
.
A version of bot_lt_iff_ne_bot
for WithBot
that only requires LT α
, not
PartialOrder α
.
Alias of the reverse direction of WithBot.monotone_map_iff
.
Alias of the reverse direction of WithBot.strictMono_map_iff
.
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
Equations
- WithBot.decidableEq = instDecidableEqOption
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
Equations
- WithBot.linearOrder = Lattice.toLinearOrder (WithBot α)
Equations
- WithTop.instReprWithTop = { reprPrec := fun o x => match o with | none => Std.Format.text "⊤" | some a => Std.Format.text "↑" ++ repr a }
Equations
- (_ : Nontrivial (WithTop α)) = (_ : Nontrivial (Option α))
WithTop.toDual
is the equivalence sending ⊤
to ⊥
and any a : α
to toDual a : αᵒᵈ
.
See WithTop.toDualBotEquiv
for the related order-iso.
Equations
- WithTop.toDual = Equiv.refl (WithTop α)
Instances For
WithTop.ofDual
is the equivalence sending ⊤
to ⊥
and any a : αᵒᵈ
to ofDual a : α
.
See WithTop.toDualBotEquiv
for the related order-iso.
Equations
- WithTop.ofDual = Equiv.refl (WithTop αᵒᵈ)
Instances For
WithBot.toDual
is the equivalence sending ⊥
to ⊤
and any a : α
to toDual a : αᵒᵈ
.
See WithBot.toDual_top_equiv
for the related order-iso.
Equations
- WithBot.toDual = Equiv.refl (WithBot α)
Instances For
WithBot.ofDual
is the equivalence sending ⊥
to ⊤
and any a : αᵒᵈ
to ofDual a : α
.
See WithBot.ofDual_top_equiv
for the related order-iso.
Equations
- WithBot.ofDual = Equiv.refl (WithBot αᵒᵈ)
Instances For
Specialization of Option.getD
to values in WithTop α
that respects API boundaries.
Equations
- WithTop.untop' d x = WithTop.recTopCoe d id x
Instances For
Lift a map f : α → β
to WithTop α → WithTop β
. Implemented using Option.map
.
Equations
- WithTop.map f = Option.map f
Instances For
Equations
Equations
- WithTop.orderTop = let src := WithTop.top; OrderTop.mk (_ : ∀ (x : WithTop α), x ≤ none)
Equations
- WithTop.boundedOrder = let src := WithTop.orderTop; let src_1 := WithTop.orderBot; BoundedOrder.mk
There is a general version top_le_iff
, but this lemma does not require a PartialOrder
.
A version of lt_top_iff_ne_top
for WithTop
that only requires LT α
, not
PartialOrder α
.
Alias of the reverse direction of WithTop.monotone_map_iff
.
Alias of the reverse direction of WithTop.strictMono_map_iff
.
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
Equations
- WithTop.decidableEq = instDecidableEqOption
Equations
- WithTop.decidableLE x x = decidable_of_decidable_of_iff (_ : ↑WithTop.toDual x ≤ ↑WithTop.toDual x ↔ x ≤ x)
Equations
- WithTop.decidableLT x x = decidable_of_decidable_of_iff (_ : ↑WithTop.toDual x < ↑WithTop.toDual x ↔ x < x)
Equations
- WithTop.linearOrder = Lattice.toLinearOrder (WithTop α)