@[instance]
@[class]
- 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
- top : α
- le_top : ∀ (a : α), a ≤ ⊤
- bot : α
- bot_le : ∀ (a : α), ⊥ ≤ a
- Sup : set α → α
- Inf : set α → α
- le_Sup : ∀ (s : set α) (a : α), a ∈ s → a ≤ complete_distrib_lattice.Sup s
- Sup_le : ∀ (s : set α) (a : α), (∀ (b : α), b ∈ s → b ≤ a) → complete_distrib_lattice.Sup s ≤ a
- Inf_le : ∀ (s : set α) (a : α), a ∈ s → complete_distrib_lattice.Inf s ≤ a
- le_Inf : ∀ (s : set α) (a : α), (∀ (b : α), b ∈ s → a ≤ b) → a ≤ complete_distrib_lattice.Inf s
- infi_sup_le_sup_Inf : ∀ (a : α) (s : set α), (⨅ (b : α) (H : b ∈ s), a ⊔ b) ≤ a ⊔ complete_distrib_lattice.Inf s
- inf_Sup_le_supr_inf : ∀ (a : α) (s : set α), a ⊓ complete_distrib_lattice.Sup s ≤ ⨆ (b : α) (H : b ∈ s), a ⊓ b
A complete distributive lattice is a bit stronger than the name might suggest; perhaps completely distributive lattice is more descriptive, as this class includes a requirement that the lattice join distribute over arbitrary infima, and similarly for the dual.
theorem
sup_Inf_eq
{α : Type u}
[complete_distrib_lattice α]
{a : α}
{s : set α} :
a ⊔ has_Inf.Inf s = ⨅ (b : α) (H : b ∈ s), a ⊔ b
theorem
Inf_sup_eq
{α : Type u}
[complete_distrib_lattice α]
{b : α}
{s : set α} :
has_Inf.Inf s ⊔ b = ⨅ (a : α) (H : a ∈ s), a ⊔ b
theorem
inf_Sup_eq
{α : Type u}
[complete_distrib_lattice α]
{a : α}
{s : set α} :
a ⊓ has_Sup.Sup s = ⨆ (b : α) (H : b ∈ s), a ⊓ b
theorem
Sup_inf_eq
{α : Type u}
[complete_distrib_lattice α]
{b : α}
{s : set α} :
has_Sup.Sup s ⊓ b = ⨆ (a : α) (H : a ∈ s), a ⊓ b
theorem
Inf_sup_Inf
{α : Type u}
[complete_distrib_lattice α]
{s t : set α} :
has_Inf.Inf s ⊔ has_Inf.Inf t = ⨅ (p : α × α) (H : p ∈ s.prod t), p.fst ⊔ p.snd
theorem
Sup_inf_Sup
{α : Type u}
[complete_distrib_lattice α]
{s t : set α} :
has_Sup.Sup s ⊓ has_Sup.Sup t = ⨆ (p : α × α) (H : p ∈ s.prod t), p.fst ⊓ p.snd
@[instance]
def
complete_distrib_lattice.bounded_distrib_lattice
{α : Type u}
[d : complete_distrib_lattice α] :
Equations
- complete_distrib_lattice.bounded_distrib_lattice = {sup := complete_distrib_lattice.sup d, le := complete_distrib_lattice.le d, lt := complete_distrib_lattice.lt d, le_refl := _, le_trans := _, lt_iff_le_not_le := _, le_antisymm := _, le_sup_left := _, le_sup_right := _, sup_le := _, inf := complete_distrib_lattice.inf d, inf_le_left := _, inf_le_right := _, le_inf := _, le_sup_inf := _, top := complete_distrib_lattice.top d, le_top := _, bot := complete_distrib_lattice.bot d, bot_le := _}
@[class]
- 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
- top : α
- le_top : ∀ (a : α), a ≤ ⊤
- bot : α
- bot_le : ∀ (a : α), ⊥ ≤ a
- compl : α → α
- sdiff : α → α → α
- inf_compl_le_bot : ∀ (x : α), x ⊓ xᶜ ≤ ⊥
- top_le_sup_compl : ∀ (x : α), ⊤ ≤ x ⊔ xᶜ
- sdiff_eq : ∀ (x y : α), x \ y = x ⊓ yᶜ
- Sup : set α → α
- Inf : set α → α
- le_Sup : ∀ (s : set α) (a : α), a ∈ s → a ≤ complete_boolean_algebra.Sup s
- Sup_le : ∀ (s : set α) (a : α), (∀ (b : α), b ∈ s → b ≤ a) → complete_boolean_algebra.Sup s ≤ a
- Inf_le : ∀ (s : set α) (a : α), a ∈ s → complete_boolean_algebra.Inf s ≤ a
- le_Inf : ∀ (s : set α) (a : α), (∀ (b : α), b ∈ s → a ≤ b) → a ≤ complete_boolean_algebra.Inf s
- infi_sup_le_sup_Inf : ∀ (a : α) (s : set α), (⨅ (b : α) (H : b ∈ s), a ⊔ b) ≤ a ⊔ complete_boolean_algebra.Inf s
- inf_Sup_le_supr_inf : ∀ (a : α) (s : set α), a ⊓ complete_boolean_algebra.Sup s ≤ ⨆ (b : α) (H : b ∈ s), a ⊓ b
A complete boolean algebra is a completely distributive boolean algebra.
@[instance]
@[instance]
def
complete_boolean_algebra.to_complete_distrib_lattice
(α : Type u_1)
[s : complete_boolean_algebra α] :
theorem
compl_Inf
{α : Type u}
[complete_boolean_algebra α]
{s : set α} :
(has_Inf.Inf s)ᶜ = ⨆ (i : α) (H : i ∈ s), iᶜ
theorem
compl_Sup
{α : Type u}
[complete_boolean_algebra α]
{s : set α} :
(has_Sup.Sup s)ᶜ = ⨅ (i : α) (H : i ∈ s), iᶜ