Conditionally complete partial orders #
This file defines conditionally complete partial orders with suprema, infima or both. These are
partial orders where every nonempty, upwards (downwards) directed set which is
bounded above (below) has a least upper bound (greatest lower bound). This class extends SupSet
(InfSet) and the requirement is that sSup (sInf) must be the least upper bound.
The three classes defined herein are:
ConditionallyCompletePartialOrderSupfor partial orders with suprema,ConditionallyCompletePartialOrderInffor partial orders with infima, andConditionallyCompletePartialOrderfor partial orders with both suprema and infima
One common use case for these classes is the order on a von Neumann algebra, or W⋆-algebra.
This is the strongest order-theoretic structure satisfied by a von Neumann algebra;
in particular it is not a conditionally complete lattice, and indeed it is a lattice if and only
if the algebra is commutative. In addition, ℂ can be made to satisfy this class (one must provide
a suitable SupSet instance), with the order w ≤ z ↔ w.re ≤ z.re ∧ w.im = z.im, which is
available in the ComplexOrder namespace.
These use cases are the motivation for defining three classes, as compared with other parts of the
order theory library, where only the supremum versions are defined (e.g., CompletePartialOrder and
OmegaCompletePartialOrder). We note that, if these classes are used outside of order theory, then
it is more likely that the infimum versions would be useful. Indeed, whenever the underlying type
has an antitone involution (e.g., if it is an ordered ring, then negation would be such a map),
then any ConditionallyCompletePartialOrder{Sup,Inf} is automatically a
ConditionallyCompletePartialOrder. Because of the to_dual attribute, the additional overhead
required to add and maintain the infimum version is minimal.
Conditionally complete partial orders (with infima) are partial orders where every nonempty, directed set which is bounded below has a greatest lower bound.
- isGLB_csInf_of_directed (s : Set α) : DirectedOn (fun (x1 x2 : α) => x1 ≥ x2) s → s.Nonempty → BddBelow s → IsGLB s (sInf s)
For each nonempty, directed set
swhich is bounded below,sInf sis the greatest lower bound ofs.
Instances
Conditionally complete partial orders (with suprema) are partial orders where every nonempty, directed set which is bounded above has a least upper bound.
- isLUB_csSup_of_directed (s : Set α) : DirectedOn (fun (x1 x2 : α) => x1 ≤ x2) s → s.Nonempty → BddAbove s → IsLUB s (sSup s)
For each nonempty, directed set
swhich is bounded above,sSup sis the least upper bound ofs.
Instances
Conditionally complete partial orders (with suprema and infimae) are partial orders where every nonempty, directed set which is bounded above (respectively, below) has a least upper (respectively, greatest lower) bound.
- isLUB_csSup_of_directed (s : Set α) : DirectedOn (fun (x1 x2 : α) => x1 ≤ x2) s → s.Nonempty → BddAbove s → IsLUB s (sSup s)
- isGLB_csInf_of_directed (s : Set α) : DirectedOn (fun (x1 x2 : α) => x1 ≥ x2) s → s.Nonempty → BddBelow s → IsGLB s (sInf s)