Documentation

Mathlib.Order.Category.FinBddDistLat

The category of finite bounded distributive lattices #

This file defines FinBddDistLat, the category of finite distributive lattices with bounded lattice homomorphisms.

structure FinBddDistLatextends BddDistLat :
Type (u_1 + 1)

The category of finite distributive lattices with bounded lattice morphisms.

Instances For
    @[implicit_reducible]
    @[reducible, inline]
    abbrev FinBddDistLat.of (Ξ± : Type u_1) [DistribLattice Ξ±] [BoundedOrder Ξ±] [Fintype Ξ±] :

    Construct a bundled FinBddDistLat from a Fintype BoundedOrder DistribLattice.

    Instances For
      @[reducible, inline]
      abbrev FinBddDistLat.of' (Ξ± : Type u_1) [DistribLattice Ξ±] [Fintype Ξ±] [Nonempty Ξ±] :

      Construct a bundled FinBddDistLat from a Nonempty Fintype DistribLattice.

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

        The type of morphisms in FinBddDistLat R.

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

          Turn a morphism in FinBddDistLat back into a BoundedLatticeHom.

          Instances For
            @[reducible, inline]

            Typecheck a BoundedLatticeHom as a morphism in FinBddDistLat.

            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 FinBddDistLat.ext {X Y : FinBddDistLat} {f g : X ⟢ Y} (w : βˆ€ (x : ↑X.toDistLat), (CategoryTheory.ConcreteCategory.hom f) x = (CategoryTheory.ConcreteCategory.hom g) x) :
                f = g
                theorem FinBddDistLat.hom_ext {X Y : FinBddDistLat} {f g : X ⟢ Y} (hf : Hom.hom f = Hom.hom g) :
                f = g
                theorem FinBddDistLat.hom_ext_iff {X Y : FinBddDistLat} {f g : X ⟢ Y} :
                f = g ↔ Hom.hom f = Hom.hom g
                @[implicit_reducible]
                def FinBddDistLat.Iso.mk {Ξ± Ξ² : FinBddDistLat} (e : ↑α.toDistLat ≃o ↑β.toDistLat) :
                Ξ± β‰… Ξ²

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

                Instances For
                  @[simp]
                  theorem FinBddDistLat.Iso.mk_hom {Ξ± Ξ² : FinBddDistLat} (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 FinBddDistLat.Iso.mk_inv {Ξ± Ξ² : FinBddDistLat} (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 FinBddDistLat.dual_map {X✝ Y✝ : FinBddDistLat} (f : X✝ ⟢ Y✝) :

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

                  Instances For