The category of distributive lattices #
This file defines DistLat
, the category of distributive lattices.
Note that DistLat
in the literature doesn't always
correspond to DistLat
as we don't require bottom or top elements. Instead, this DistLat
corresponds to BddDistLat
.
The category of distributive lattices.
- carrier : Type u_1
The underlying distributive lattice.
- str : DistribLattice ↑self
Instances For
@[reducible, inline]
Construct a bundled DistLat
from the underlying type and typeclass.
Equations
Instances For
instance
DistLat.instConcreteCategoryLatticeHomCarrier :
CategoryTheory.ConcreteCategory DistLat fun (x1 x2 : DistLat) => LatticeHom ↑x1 ↑x2
Equations
@[reducible, inline]
Typecheck a LatticeHom
as a morphism in DistLat
.
Equations
Instances For
The results below duplicate the ConcreteCategory
simp lemmas, but we can keep them for dsimp
.
@[simp]
@[simp]
@[simp]
theorem
DistLat.ext
{X Y : DistLat}
{f g : X ⟶ Y}
(w : ∀ (x : ↑X), (CategoryTheory.ConcreteCategory.hom f) x = (CategoryTheory.ConcreteCategory.hom g) x)
:
theorem
DistLat.ext_iff
{X Y : DistLat}
{f g : X ⟶ Y}
:
f = g ↔ ∀ (x : ↑X), (CategoryTheory.ConcreteCategory.hom f) x = (CategoryTheory.ConcreteCategory.hom g) x
@[simp]
@[simp]
theorem
DistLat.hom_ofHom
{X Y : Type u}
[DistribLattice X]
[DistribLattice Y]
(f : LatticeHom X Y)
:
@[simp]
@[simp]
theorem
DistLat.ofHom_comp
{X Y Z : Type u}
[DistribLattice X]
[DistribLattice Y]
[DistribLattice Z]
(f : LatticeHom X Y)
(g : LatticeHom Y Z)
:
theorem
DistLat.ofHom_apply
{X Y : Type u}
[DistribLattice X]
[DistribLattice Y]
(f : LatticeHom X Y)
(x : X)
:
Constructs an equivalence between distributive lattices from an order isomorphism between them.
Equations
Instances For
@[simp]