Documentation

Mathlib.Order.Category.BddDistLat

The category of bounded distributive lattices #

This defines BddDistLat, the category of bounded distributive lattices.

Note that this category is sometimes called DistLat when being a lattice is understood to entail having a bottom and a top element.

structure BddDistLatextends DistLat :
Type (u_1 + 1)

The category of bounded distributive lattices with bounded lattice morphisms.

Instances For
    @[implicit_reducible]
    @[reducible, inline]

    Construct a bundled BddDistLat from a BoundedOrder DistribLattice.

    Instances For
      structure BddDistLat.Hom (X Y : BddDistLat) :

      The type of morphisms in BddDistLat R.

      Instances For
        theorem BddDistLat.Hom.ext {X Y : BddDistLat} {x y : X.Hom Y} (hom' : x.hom' = y.hom') :
        x = y
        theorem BddDistLat.Hom.ext_iff {X Y : BddDistLat} {x y : X.Hom Y} :
        x = y x.hom' = y.hom'
        @[reducible, inline]

        Turn a morphism in BddDistLat back into a BoundedLatticeHom.

        Instances For
          @[reducible, inline]

          Typecheck a BoundedLatticeHom as a morphism in BddDistLat.

          Instances For

            Use the ConcreteCategory.hom projection for @[simps] lemmas.

            Instances For

              The results below duplicate the ConcreteCategory simp lemmas, but we can keep them for dsimp.

              theorem BddDistLat.ext {X Y : BddDistLat} {f g : X Y} (w : ∀ (x : X.toDistLat), (CategoryTheory.ConcreteCategory.hom f) x = (CategoryTheory.ConcreteCategory.hom g) x) :
              f = g
              theorem BddDistLat.hom_ext {X Y : BddDistLat} {f g : X Y} (hf : Hom.hom f = Hom.hom g) :
              f = g
              theorem BddDistLat.hom_ext_iff {X Y : BddDistLat} {f g : X Y} :
              f = g Hom.hom f = Hom.hom g
              @[simp]
              theorem BddDistLat.ofHom_hom {X Y : BddDistLat} (f : X Y) :
              ofHom (Hom.hom f) = f
              @[implicit_reducible]

              Turn a BddDistLat into a BddLat by forgetting it is distributive.

              Instances For
                def BddDistLat.Iso.mk {α β : BddDistLat} (e : α.toDistLat ≃o β.toDistLat) :
                α β

                Constructs an equivalence between bounded distributive lattices from an order isomorphism between them.

                Instances For
                  @[simp]
                  theorem BddDistLat.Iso.mk_inv {α β : BddDistLat} (e : α.toDistLat ≃o β.toDistLat) :
                  (mk e).inv = ofHom (have __src := { toFun := e.symm, map_sup' := , map_inf' := }; { toFun := e.symm, map_sup' := , map_inf' := , map_top' := , map_bot' := })
                  @[simp]
                  theorem BddDistLat.Iso.mk_hom {α β : BddDistLat} (e : α.toDistLat ≃o β.toDistLat) :
                  (mk e).hom = ofHom (have __src := { toFun := e, map_sup' := , map_inf' := }; { toFun := e, map_sup' := , map_inf' := , map_top' := , map_bot' := })
                  @[simp]
                  theorem BddDistLat.dual_map {X✝ Y✝ : BddDistLat} (f : X✝ Y✝) :

                  The equivalence between BddDistLat and itself induced by OrderDual both ways.

                  Instances For