The categories of semilattices #
THIS FILE IS SYNCHRONIZED WITH MATHLIB4. Any changes to this file require a corresponding PR to mathlib4.
This defines SemilatSup
and SemilatInf
, the categories of sup-semilattices with a bottom
element and inf-semilattices with a top element.
References #
- X : Type ?
- is_semilattice_sup : semilattice_sup self.X
- is_order_bot : order_bot self.X
The category of sup-semilattices with a bottom element.
Instances for SemilatSup
- X : Type ?
- is_semilattice_inf : semilattice_inf self.X
- is_order_top : order_top self.X
The category of inf-semilattices with a top element.
Instances for SemilatInf
Equations
Construct a bundled SemilatSup
from a semilattice_sup
.
Equations
Equations
- SemilatSup.category_theory.large_category = {to_category_struct := {to_quiver := {hom := λ (X Y : SemilatSup), sup_bot_hom ↥X ↥Y}, id := λ (X : SemilatSup), sup_bot_hom.id ↥X, comp := λ (X Y Z : SemilatSup) (f : X ⟶ Y) (g : Y ⟶ Z), sup_bot_hom.comp g f}, id_comp' := SemilatSup.category_theory.large_category._proof_1, comp_id' := SemilatSup.category_theory.large_category._proof_2, assoc' := SemilatSup.category_theory.large_category._proof_3}
Equations
- SemilatSup.category_theory.concrete_category = category_theory.concrete_category.mk {obj := SemilatSup.X, map := λ (X Y : SemilatSup), coe_fn, map_id' := SemilatSup.category_theory.concrete_category._proof_1, map_comp' := SemilatSup.category_theory.concrete_category._proof_2}
Equations
- SemilatSup.has_forget_to_PartOrd = {forget₂ := {obj := λ (X : SemilatSup), {α := ↥X, str := semilattice_sup.to_partial_order ↥X X.is_semilattice_sup}, map := λ (X Y : SemilatSup) (f : X ⟶ Y), ↑f, map_id' := SemilatSup.has_forget_to_PartOrd._proof_1, map_comp' := SemilatSup.has_forget_to_PartOrd._proof_2}, forget_comp := SemilatSup.has_forget_to_PartOrd._proof_3}
Equations
Construct a bundled SemilatInf
from a semilattice_inf
.
Equations
Equations
- SemilatInf.category_theory.large_category = {to_category_struct := {to_quiver := {hom := λ (X Y : SemilatInf), inf_top_hom ↥X ↥Y}, id := λ (X : SemilatInf), inf_top_hom.id ↥X, comp := λ (X Y Z : SemilatInf) (f : X ⟶ Y) (g : Y ⟶ Z), inf_top_hom.comp g f}, id_comp' := SemilatInf.category_theory.large_category._proof_1, comp_id' := SemilatInf.category_theory.large_category._proof_2, assoc' := SemilatInf.category_theory.large_category._proof_3}
Equations
- SemilatInf.category_theory.concrete_category = category_theory.concrete_category.mk {obj := SemilatInf.X, map := λ (X Y : SemilatInf), coe_fn, map_id' := SemilatInf.category_theory.concrete_category._proof_1, map_comp' := SemilatInf.category_theory.concrete_category._proof_2}
Equations
- SemilatInf.has_forget_to_PartOrd = {forget₂ := {obj := λ (X : SemilatInf), {α := ↥X, str := semilattice_inf.to_partial_order ↥X X.is_semilattice_inf}, map := λ (X Y : SemilatInf) (f : X ⟶ Y), ↑f, map_id' := SemilatInf.has_forget_to_PartOrd._proof_1, map_comp' := SemilatInf.has_forget_to_PartOrd._proof_2}, forget_comp := SemilatInf.has_forget_to_PartOrd._proof_3}
Order dual #
Constructs an isomorphism of lattices from an order isomorphism between them.
Equations
- SemilatSup.iso.mk e = {hom := ↑e, inv := ↑(e.symm), hom_inv_id' := _, inv_hom_id' := _}
order_dual
as a functor.
Equations
- SemilatSup.dual = {obj := λ (X : SemilatSup), SemilatInf.of (↥X)ᵒᵈ, map := λ (X Y : SemilatSup), ⇑sup_bot_hom.dual, map_id' := SemilatSup.dual._proof_1, map_comp' := SemilatSup.dual._proof_2}
Constructs an isomorphism of lattices from an order isomorphism between them.
Equations
- SemilatInf.iso.mk e = {hom := ↑e, inv := ↑(e.symm), hom_inv_id' := _, inv_hom_id' := _}
order_dual
as a functor.
Equations
- SemilatInf.dual = {obj := λ (X : SemilatInf), SemilatSup.of (↥X)ᵒᵈ, map := λ (X Y : SemilatInf), ⇑inf_top_hom.dual, map_id' := SemilatInf.dual._proof_1, map_comp' := SemilatInf.dual._proof_2}
The equivalence between SemilatSup
and SemilatInf
induced by order_dual
both ways.
Equations
- SemilatSup_equiv_SemilatInf = category_theory.equivalence.mk SemilatSup.dual SemilatInf.dual (category_theory.nat_iso.of_components (λ (X : SemilatSup), SemilatSup.iso.mk (order_iso.dual_dual ↥X)) SemilatSup_equiv_SemilatInf._proof_1) (category_theory.nat_iso.of_components (λ (X : SemilatInf), SemilatInf.iso.mk (order_iso.dual_dual ↥X)) SemilatSup_equiv_SemilatInf._proof_2)