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
Equations
- DistLat.instCoeSortType = { coe := DistLat.carrier }
@[reducible, inline]
Construct a bundled DistLat from the underlying type and typeclass.
Equations
- DistLat.of X = { carrier := X, str := inst✝ }
Instances For
Equations
- One or more equations did not get rendered due to their size.
instance
DistLat.instConcreteCategoryLatticeHomCarrier :
CategoryTheory.ConcreteCategory DistLat fun (x1 x2 : DistLat) => LatticeHom ↑x1 ↑x2
Equations
- One or more equations did not get rendered due to their size.
@[reducible, inline]
Typecheck a LatticeHom as a morphism in DistLat.
Equations
Instances For
Use the ConcreteCategory.hom projection for @[simps] lemmas.
Equations
- DistLat.Hom.Simps.hom X Y f = f.hom
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)
:
Equations
- One or more equations did not get rendered due to their size.
Constructs an equivalence between distributive lattices from an order isomorphism between them.
Equations
- One or more equations did not get rendered due to their size.
Instances For
OrderDual as a functor.
Equations
- One or more equations did not get rendered due to their size.
Instances For
@[simp]