Minimal/maximal and bottom/top elements #
This file defines predicates for elements to be minimal/maximal or bottom/top and typeclasses saying that there are no such elements.
Predicates #
IsBot: An element is bottom if all elements are greater than it.IsTop: An element is top if all elements are less than it.IsMin: An element is minimal if no element is strictly less than it.IsMax: An element is maximal if no element is strictly greater than it.
See also isBot_iff_isMin and isTop_iff_isMax for the equivalences in a (co)directed order.
Typeclasses #
NoBotOrder: An order without bottom elements.NoTopOrder: An order without top elements.NoMinOrder: An order without minimal elements.NoMaxOrder: An order without maximal elements.
Order without bottom elements.
For each term
a, there is somebwhich is either incomparable or strictly smaller.
Instances
Order without top elements.
For each term
a, there is somebwhich is either incomparable or strictly larger.
Instances
Order without minimal elements. Sometimes called coinitial or dense.
- exists_lt (a : α) : ∃ (b : α), b < a
For each term
a, there is some strictly smallerb.
Instances
Order without maximal elements. Sometimes called cofinal.
- exists_gt (a : α) : ∃ (b : α), a < b
For each term
a, there is some strictly greaterb.
Instances
a : α is a bottom element of α if it is less than or equal to any other element of α.
This predicate is roughly an unbundled version of OrderBot, except that a preorder may have
several bottom elements. When α is linear, this is useful to make a case disjunction on
NoMinOrder α within a proof.
Equations
Instances For
a : α is a top element of α if it is greater than or equal to any other element of α.
This predicate is roughly an unbundled version of OrderBot, except that a preorder may have
several top elements. When α is linear, this is useful to make a case disjunction on
NoMaxOrder α within a proof.
Equations
Instances For
a is a minimal element of α if no element is strictly less than it. We spell it without <
to avoid having to convert between ≤ and <. Instead, isMin_iff_forall_not_lt does the
conversion.
Equations
Instances For
a is a maximal element of α if no element is strictly greater than it. We spell it without
< to avoid having to convert between ≤ and <. Instead, isMax_iff_forall_not_lt does the
conversion.
Equations
Instances For
Alias of the reverse direction of isBot_toDual_iff.
Alias of the reverse direction of isMin_toDual_iff.
Alias of the reverse direction of isBot_ofDual_iff.
Alias of the reverse direction of isMin_ofDual_iff.
Alias of not_isMin_of_lt.