Documentation

Mathlib.CategoryTheory.Monad.Kleisli

Kleisli category on a (co)monad #

This file defines the Kleisli category on a monad (T, η_ T, μ_ T) as well as the co-Kleisli category on a comonad (U, ε_ U, δ_ U). It also defines the Kleisli adjunction which gives rise to the monad (T, η_ T, μ_ T) as well as the co-Kleisli adjunction which gives rise to the comonad (U, ε_ U, δ_ U).

References #

structure CategoryTheory.Kleisli {C : Type u} [Category.{v, u} C] (T : Monad C) :

The objects for the Kleisli category of the monad T : Monad C, which are the same thing as objects of the base category C.

  • of : C

    The underlying object of the base category.

Instances For
    @[simp]
    theorem CategoryTheory.Kleisli.mk_of {C : Type u} [Category.{v, u} C] {T : Monad C} (c : Kleisli T) :
    { of := c.of } = c
    theorem CategoryTheory.Kleisli.of_mk {C : Type u} [Category.{v, u} C] {T : Monad C} (c : C) :
    { of := c }.of = c
    structure CategoryTheory.Kleisli.Hom {C : Type u} [Category.{v, u} C] {T : Monad C} (c c' : Kleisli T) :

    For (T : Monad C), morphisms c ⟶ c' in the Kleisli category of T are morphisms c ⟶ T.obj c' in C.

    • of : c.of T.obj c'.of

      The morphism in C underlying the morphism in the Kleisli category.

    Instances For
      @[implicit_reducible]
      Equations
      theorem CategoryTheory.Kleisli.Hom.ext {C : Type u} {inst✝ : Category.{v, u} C} {T : Monad C} {c c' : Kleisli T} {x y : c.Hom c'} (of : x.of = y.of) :
      x = y
      theorem CategoryTheory.Kleisli.Hom.ext_iff {C : Type u} {inst✝ : Category.{v, u} C} {T : Monad C} {c c' : Kleisli T} {x y : c.Hom c'} :
      x = y x.of = y.of
      @[implicit_reducible]

      The Kleisli category on a monad T. cf Definition 5.2.9 in Riehl.

      Equations
      • One or more equations did not get rendered due to their size.
      @[simp]
      theorem CategoryTheory.Kleisli.category_comp_of {C : Type u} [Category.{v, u} C] (T : Monad C) {x✝ x✝¹ Z : Kleisli T} (f : x✝.Hom x✝¹) (g : x✝¹.Hom Z) :
      theorem CategoryTheory.Kleisli.hom_ext {C : Type u} [Category.{v, u} C] {T : Monad C} {x y : Kleisli T} {f g : x y} (h : f.of = g.of) :
      f = g
      theorem CategoryTheory.Kleisli.hom_ext_iff {C : Type u} [Category.{v, u} C] {T : Monad C} {x y : Kleisli T} {f g : x y} :
      f = g f.of = g.of

      The left adjoint of the adjunction which induces the monad (T, η_ T, μ_ T).

      Equations
      • One or more equations did not get rendered due to their size.
      Instances For
        @[simp]

        The right adjoint of the adjunction which induces the monad (T, η_ T, μ_ T).

        Equations
        • One or more equations did not get rendered due to their size.
        Instances For
          @[simp]
          theorem CategoryTheory.Kleisli.Adjunction.fromKleisli_map {C : Type u} [Category.{v, u} C] (T : Monad C) {x✝ Y : Kleisli T} (f : x✝ Y) :

          The Kleisli adjunction which gives rise to the monad (T, η_ T, μ_ T). cf Lemma 5.2.11 of Riehl.

          Equations
          • One or more equations did not get rendered due to their size.
          Instances For

            The composition of the adjunction gives the original functor.

            Equations
            • One or more equations did not get rendered due to their size.
            Instances For
              structure CategoryTheory.Cokleisli {C : Type u} [Category.{v, u} C] (U : Comonad C) :

              The objects for the co-Kleisli category of the comonad U : Comonad C, which are the same thing as objects of the base category C.

              • of : C

                The underlying object of the base category.

              Instances For
                @[simp]
                theorem CategoryTheory.Cokleisli.mk_of {C : Type u} [Category.{v, u} C] (U : Comonad C) (c : Cokleisli U) :
                { of := c.of } = c
                theorem CategoryTheory.Cokleisli.of_mk {C : Type u} [Category.{v, u} C] (U : Comonad C) (c : C) :
                { of := c }.of = c
                structure CategoryTheory.Cokleisli.Hom {C : Type u} [Category.{v, u} C] {U : Comonad C} (c c' : Cokleisli U) :

                For (U : Comonad C), morphisms c ⟶ c' in the Cokleisli category of U are morphisms U.obj c ⟶ c' in C.

                • of : U.obj c.of c'.of

                  The morphism in C underlying the morphism in the Kleisli category.

                Instances For
                  @[implicit_reducible]
                  Equations
                  @[implicit_reducible]

                  The co-Kleisli category on a comonad U.

                  Equations
                  • One or more equations did not get rendered due to their size.
                  @[simp]
                  theorem CategoryTheory.Cokleisli.category_comp_of {C : Type u} [Category.{v, u} C] (U : Comonad C) {X✝ Y✝ Z✝ : Cokleisli U} (f : X✝.Hom Y✝) (g : Y✝.Hom Z✝) :
                  theorem CategoryTheory.Cokleisli.Hom.ext {C : Type u} {inst✝ : Category.{v, u} C} {U : Comonad C} {c c' : Cokleisli U} {x y : c.Hom c'} (of : x.of = y.of) :
                  x = y
                  theorem CategoryTheory.Cokleisli.Hom.ext_iff {C : Type u} {inst✝ : Category.{v, u} C} {U : Comonad C} {c c' : Cokleisli U} {x y : c.Hom c'} :
                  x = y x.of = y.of
                  theorem CategoryTheory.Cokleisli.hom_ext {C : Type u} [Category.{v, u} C] (U : Comonad C) {x y : Cokleisli U} {f g : x y} (h : f.of = g.of) :
                  f = g
                  theorem CategoryTheory.Cokleisli.hom_ext_iff {C : Type u} [Category.{v, u} C] {U : Comonad C} {x y : Cokleisli U} {f g : x y} :
                  f = g f.of = g.of

                  The right adjoint of the adjunction which induces the comonad (U, ε_ U, δ_ U).

                  Equations
                  • One or more equations did not get rendered due to their size.
                  Instances For
                    @[simp]

                    The left adjoint of the adjunction which induces the comonad (U, ε_ U, δ_ U).

                    Equations
                    • One or more equations did not get rendered due to their size.
                    Instances For

                      The co-Kleisli adjunction which gives rise to the comonad (U, ε_ U, δ_ U).

                      Equations
                      • One or more equations did not get rendered due to their size.
                      Instances For

                        The composition of the adjunction gives the original functor.

                        Equations
                        • One or more equations did not get rendered due to their size.
                        Instances For