- sup : α → α → α
Typeclass for the ⊔
(\lub
) notation
- inf : α → α → α
Typeclass for the ⊓
(\glb
) notation
Instances
- semilattice_inf.to_has_inf
- order_dual.has_inf
- prod.has_inf
- pi.has_inf
- rat.has_inf
- submonoid.has_inf
- add_submonoid.has_inf
- subgroup.has_inf
- add_subgroup.has_inf
- submodule.has_inf
- setoid.has_inf
- subsemiring.has_inf
- associates.has_inf
- filter.has_inf
- real.has_inf
- linear_pmap.has_inf
- convex_cone.has_inf
- filter.germ.has_inf
- measure_theory.simple_func.has_inf
- sup : α → α → α
- le : α → α → Prop
- lt : α → α → Prop
- le_refl : ∀ (a : α), a ≤ a
- le_trans : ∀ (a b c_1 : α), a ≤ b → b ≤ c_1 → a ≤ c_1
- lt_iff_le_not_le : (∀ (a b : α), a < b ↔ a ≤ b ∧ ¬b ≤ a) . "order_laws_tac"
- le_antisymm : ∀ (a b : α), a ≤ b → b ≤ a → a = b
- le_sup_left : ∀ (a b : α), a ≤ a ⊔ b
- le_sup_right : ∀ (a b : α), b ≤ a ⊔ b
- sup_le : ∀ (a b c_1 : α), a ≤ c_1 → b ≤ c_1 → a ⊔ b ≤ c_1
A semilattice_sup
is a join-semilattice, that is, a partial order
with a join (a.k.a. lub / least upper bound, sup / supremum) operation
⊔
which is the least element larger than both factors.
Instances
- lattice.to_semilattice_sup
- semilattice_sup_top.to_semilattice_sup
- semilattice_sup_bot.to_semilattice_sup
- order_dual.semilattice_sup
- prod.semilattice_sup
- pi.semilattice_sup
- rat.semilattice_sup
- real.semilattice_sup
- many_one_degree.semilattice_sup
- finsupp.semilattice_sup
- semiquot.semilattice_sup
- filter.germ.semilattice_sup
- measure_theory.simple_func.semilattice_sup
Equations
Equations
Equations
- inf : α → α → α
- le : α → α → Prop
- lt : α → α → Prop
- le_refl : ∀ (a : α), a ≤ a
- le_trans : ∀ (a b c_1 : α), a ≤ b → b ≤ c_1 → a ≤ c_1
- lt_iff_le_not_le : (∀ (a b : α), a < b ↔ a ≤ b ∧ ¬b ≤ a) . "order_laws_tac"
- le_antisymm : ∀ (a b : α), a ≤ b → b ≤ a → a = b
- inf_le_left : ∀ (a b : α), a ⊓ b ≤ a
- inf_le_right : ∀ (a b : α), a ⊓ b ≤ b
- le_inf : ∀ (a b c_1 : α), a ≤ b → a ≤ c_1 → a ≤ b ⊓ c_1
A semilattice_inf
is a meet-semilattice, that is, a partial order
with a meet (a.k.a. glb / greatest lower bound, inf / infimum) operation
⊓
which is the greatest element smaller than both factors.
Instances
- lattice.to_semilattice_inf
- semilattice_inf_top.to_semilattice_inf
- semilattice_inf_bot.to_semilattice_inf
- order_dual.semilattice_inf
- prod.semilattice_inf
- pi.semilattice_inf
- rat.semilattice_inf
- real.semilattice_inf
- finsupp.semilattice_inf
- filter.germ.semilattice_inf
- measure_theory.simple_func.semilattice_inf
Equations
Equations
Equations
- sup : α → α → α
- le : α → α → Prop
- lt : α → α → Prop
- le_refl : ∀ (a : α), a ≤ a
- le_trans : ∀ (a b c_1 : α), a ≤ b → b ≤ c_1 → a ≤ c_1
- lt_iff_le_not_le : (∀ (a b : α), a < b ↔ a ≤ b ∧ ¬b ≤ a) . "order_laws_tac"
- le_antisymm : ∀ (a b : α), a ≤ b → b ≤ a → a = b
- le_sup_left : ∀ (a b : α), a ≤ a ⊔ b
- le_sup_right : ∀ (a b : α), b ≤ a ⊔ b
- sup_le : ∀ (a b c_1 : α), a ≤ c_1 → b ≤ c_1 → a ⊔ b ≤ c_1
- inf : α → α → α
- inf_le_left : ∀ (a b : α), a ⊓ b ≤ a
- inf_le_right : ∀ (a b : α), a ⊓ b ≤ b
- le_inf : ∀ (a b c_1 : α), a ≤ b → a ≤ c_1 → a ≤ b ⊓ c_1
A lattice is a join-semilattice which is also a meet-semilattice.
Instances
- distrib_lattice.to_lattice
- lattice_of_decidable_linear_order
- bounded_lattice.to_lattice
- with_zero.lattice
- conditionally_complete_lattice.to_lattice
- order_dual.lattice
- prod.lattice
- pi.lattice
- with_bot.lattice
- with_top.lattice
- multiset.lattice
- finset.lattice
- rat.lattice
- nat.lattice
- real.lattice
- topological_space.compacts.lattice
- finsupp.lattice
- filter.germ.lattice
- circle_deg1_lift.lattice
- measure_theory.simple_func.lattice
- ring.fractional_ideal.lattice
- sup : α → α → α
- le : α → α → Prop
- lt : α → α → Prop
- le_refl : ∀ (a : α), a ≤ a
- le_trans : ∀ (a b c_1 : α), a ≤ b → b ≤ c_1 → a ≤ c_1
- lt_iff_le_not_le : (∀ (a b : α), a < b ↔ a ≤ b ∧ ¬b ≤ a) . "order_laws_tac"
- le_antisymm : ∀ (a b : α), a ≤ b → b ≤ a → a = b
- le_sup_left : ∀ (a b : α), a ≤ a ⊔ b
- le_sup_right : ∀ (a b : α), b ≤ a ⊔ b
- sup_le : ∀ (a b c_1 : α), a ≤ c_1 → b ≤ c_1 → a ⊔ b ≤ c_1
- inf : α → α → α
- inf_le_left : ∀ (a b : α), a ⊓ b ≤ a
- inf_le_right : ∀ (a b : α), a ⊓ b ≤ b
- le_inf : ∀ (a b c_1 : α), a ≤ b → a ≤ c_1 → a ≤ b ⊓ c_1
- le_sup_inf : ∀ (x y z : α), (x ⊔ y) ⊓ (x ⊔ z) ≤ x ⊔ y ⊓ z
A distributive lattice is a lattice that satisfies any of four equivalent distribution properties (of sup over inf or inf over sup, on the left or right). A classic example of a distributive lattice is the lattice of subsets of a set, and in fact this example is generic in the sense that every distributive lattice is realizable as a sublattice of a powerset lattice.
Instances
- distrib_lattice_of_decidable_linear_order
- bounded_distrib_lattice.to_distrib_lattice
- nat.distrib_lattice
- order_dual.distrib_lattice
- prod.distrib_lattice
- multiset.distrib_lattice
- finset.distrib_lattice
- rat.distrib_lattice
- cardinal.distrib_lattice
- real.distrib_lattice
- nnreal.distrib_lattice
- prime_multiset.distrib_lattice
Equations
- lattice_of_decidable_linear_order = {sup := max o, le := decidable_linear_order.le o, lt := decidable_linear_order.lt o, le_refl := _, le_trans := _, lt_iff_le_not_le := _, le_antisymm := _, le_sup_left := _, le_sup_right := _, sup_le := _, inf := min o, inf_le_left := _, inf_le_right := _, le_inf := _}
Equations
- distrib_lattice_of_decidable_linear_order = {sup := lattice.sup lattice_of_decidable_linear_order, le := lattice.le lattice_of_decidable_linear_order, lt := lattice.lt lattice_of_decidable_linear_order, le_refl := _, le_trans := _, lt_iff_le_not_le := _, le_antisymm := _, le_sup_left := _, le_sup_right := _, sup_le := _, inf := lattice.inf lattice_of_decidable_linear_order, inf_le_left := _, inf_le_right := _, le_inf := _, le_sup_inf := _}
Equations
- order_dual.has_sup α = {sup := has_inf.inf _inst_1}
Equations
- order_dual.has_inf α = {inf := has_sup.sup _inst_1}
Equations
- order_dual.semilattice_sup α = {sup := has_sup.sup (order_dual.has_sup α), le := partial_order.le (order_dual.partial_order α), lt := partial_order.lt (order_dual.partial_order α), le_refl := _, le_trans := _, lt_iff_le_not_le := _, le_antisymm := _, le_sup_left := _, le_sup_right := _, sup_le := _}
Equations
- order_dual.semilattice_inf α = {inf := has_inf.inf (order_dual.has_inf α), le := partial_order.le (order_dual.partial_order α), lt := partial_order.lt (order_dual.partial_order α), le_refl := _, le_trans := _, lt_iff_le_not_le := _, le_antisymm := _, inf_le_left := _, inf_le_right := _, le_inf := _}
Equations
- order_dual.lattice α = {sup := semilattice_sup.sup (order_dual.semilattice_sup α), le := semilattice_sup.le (order_dual.semilattice_sup α), lt := semilattice_sup.lt (order_dual.semilattice_sup α), le_refl := _, le_trans := _, lt_iff_le_not_le := _, le_antisymm := _, le_sup_left := _, le_sup_right := _, sup_le := _, inf := semilattice_inf.inf (order_dual.semilattice_inf α), inf_le_left := _, inf_le_right := _, le_inf := _}
Equations
- order_dual.distrib_lattice α = {sup := lattice.sup (order_dual.lattice α), le := lattice.le (order_dual.lattice α), lt := lattice.lt (order_dual.lattice α), le_refl := _, le_trans := _, lt_iff_le_not_le := _, le_antisymm := _, le_sup_left := _, le_sup_right := _, sup_le := _, inf := lattice.inf (order_dual.lattice α), inf_le_left := _, inf_le_right := _, le_inf := _, le_sup_inf := _}
Equations
- prod.semilattice_sup α β = {sup := has_sup.sup (prod.has_sup α β), le := partial_order.le (prod.partial_order α β), lt := partial_order.lt (prod.partial_order α β), le_refl := _, le_trans := _, lt_iff_le_not_le := _, le_antisymm := _, le_sup_left := _, le_sup_right := _, sup_le := _}
Equations
- prod.semilattice_inf α β = {inf := has_inf.inf (prod.has_inf α β), le := partial_order.le (prod.partial_order α β), lt := partial_order.lt (prod.partial_order α β), le_refl := _, le_trans := _, lt_iff_le_not_le := _, le_antisymm := _, inf_le_left := _, inf_le_right := _, le_inf := _}
Equations
- prod.lattice α β = {sup := semilattice_sup.sup (prod.semilattice_sup α β), le := semilattice_inf.le (prod.semilattice_inf α β), lt := semilattice_inf.lt (prod.semilattice_inf α β), le_refl := _, le_trans := _, lt_iff_le_not_le := _, le_antisymm := _, le_sup_left := _, le_sup_right := _, sup_le := _, inf := semilattice_inf.inf (prod.semilattice_inf α β), inf_le_left := _, inf_le_right := _, le_inf := _}
Equations
- prod.distrib_lattice α β = {sup := lattice.sup (prod.lattice α β), le := lattice.le (prod.lattice α β), lt := lattice.lt (prod.lattice α β), le_refl := _, le_trans := _, lt_iff_le_not_le := _, le_antisymm := _, le_sup_left := _, le_sup_right := _, sup_le := _, inf := lattice.inf (prod.lattice α β), inf_le_left := _, inf_le_right := _, le_inf := _, le_sup_inf := _}