Upper / lower bounds #
In this file we prove various lemmas about upper/lower bounds of a set:
monotonicity, behaviour under ∪
, ∩
, insert
,
and provide formulas for ∅
, univ
, and intervals.
A set s
is not bounded above if and only if for each x
there exists y ∈ s
such that x
is not greater than or equal to y
. This version only assumes Preorder
structure and uses
¬(y ≤ x)
. A version for linear orders is called not_bddAbove_iff
.
A set s
is not bounded below if and only if for each x
there exists y ∈ s
such that x
is not less than or equal to y
. This version only assumes Preorder
structure and uses
¬(x ≤ y)
. A version for linear orders is called not_bddBelow_iff
.
A set s
is not bounded above if and only if for each x
there exists y ∈ s
that is greater
than x
. A version for preorders is called not_bddAbove_iff'
.
A set s
is not bounded below if and only if for each x
there exists y ∈ s
that is less
than x
. A version for preorders is called not_bddBelow_iff'
.
If a
is the least element of a set s
, then subtype s
is an order with bottom element.
Equations
- h.orderBot = OrderBot.mk ⋯
Instances For
If a
is the greatest element of a set s
, then subtype s
is an order with top element.
Equations
- h.orderTop = OrderTop.mk ⋯
Instances For
Monotonicity #
Conversions #
If s
has a greatest element, then it is bounded above.
Union and intersection #
If a
is the least upper bound of s
and b
is the least upper bound of t
,
then a ⊔ b
is the least upper bound of s ∪ t
.
If a
is the greatest lower bound of s
and b
is the greatest lower bound of t
,
then a ⊓ b
is the greatest lower bound of s ∪ t
.
If a
is the least element of s
and b
is the least element of t
,
then min a b
is the least element of s ∪ t
.
If a
is the greatest element of s
and b
is the greatest element of t
,
then max a b
is the greatest element of s ∪ t
.
Singleton #
Bounded intervals #
Univ #
Empty set #
insert #
Sets are automatically bounded or cobounded in complete lattices. To use the same statements
in complete and conditionally complete lattices but let automation fill automatically the
boundedness proofs in complete lattices, we use the tactic bddDefault
in the statements,
in the form (hA : BddAbove A := by bddDefault)
.
Equations
- tacticBddDefault = Lean.ParserDescr.node `tacticBddDefault 1024 (Lean.ParserDescr.nonReservedSymbol "bddDefault" false)