The equivalence between Monad C
and Mon_ (C ⥤ C)
. #
A monad "is just" a monoid in the category of endofunctors.
Definitions/Theorems #
toMon
associates a monoid object inC ⥤ C
to any monad onC
.monadToMon
is the functorial version oftoMon
.ofMon
associates a monad onC
to any monoid object inC ⥤ C
.monadMonEquiv
is the equivalence betweenMonad C
andMon_ (C ⥤ C)
.
@[simp]
@[simp]
@[simp]
Passing from Monad C
to Mon_ (C ⥤ C)
is functorial.
Equations
- One or more equations did not get rendered due to their size.
Instances For
@[simp]
theorem
CategoryTheory.Monad.monadToMon_map_hom
(C : Type u)
[Category.{v, u} C]
{X✝ Y✝ : Monad C}
(f : X✝ ⟶ Y✝)
:
@[simp]
@[simp]
@[simp]
Passing from Mon_ (C ⥤ C)
to Monad C
is functorial.
Equations
- One or more equations did not get rendered due to their size.
Instances For
@[simp]
theorem
CategoryTheory.Monad.monToMonad_obj
(C : Type u)
[Category.{v, u} C]
(M : Mon_ (Functor C C))
:
@[simp]
theorem
CategoryTheory.Monad.monToMonad_map_toNatTrans
(C : Type u)
[Category.{v, u} C]
{X Y : Mon_ (Functor C C)}
(f : X ⟶ Y)
:
Oh, monads are just monoids in the category of endofunctors (equivalence of categories).
Equations
- One or more equations did not get rendered due to their size.
Instances For
@[simp]
theorem
CategoryTheory.Monad.monadMonEquiv_unitIso_hom_app_toNatTrans_app
(C : Type u)
[Category.{v, u} C]
(x✝ : Monad C)
(x✝¹ : C)
:
((monadMonEquiv C).unitIso.hom.app x✝).app x✝¹ = CategoryStruct.id (((Functor.id (Monad C)).obj x✝).obj x✝¹)
@[simp]
theorem
CategoryTheory.Monad.monadMonEquiv_unitIso_inv_app_toNatTrans_app
(C : Type u)
[Category.{v, u} C]
(x✝ : Monad C)
(x✝¹ : C)
:
((monadMonEquiv C).unitIso.inv.app x✝).app x✝¹ = CategoryStruct.id ((((monadToMon C).comp (monToMonad C)).obj x✝).obj x✝¹)
@[simp]
theorem
CategoryTheory.Monad.monadMonEquiv_counitIso_inv_app_hom
(C : Type u)
[Category.{v, u} C]
(x✝ : Mon_ (Functor C C))
:
((monadMonEquiv C).counitIso.inv.app x✝).hom = CategoryStruct.id ((Functor.id (Mon_ (Functor C C))).obj x✝).X
@[simp]
theorem
CategoryTheory.Monad.monadMonEquiv_counitIso_hom_app_hom
(C : Type u)
[Category.{v, u} C]
(x✝ : Mon_ (Functor C C))
:
((monadMonEquiv C).counitIso.hom.app x✝).hom = CategoryStruct.id (((monToMonad C).comp (monadToMon C)).obj x✝).X
@[simp]
@[simp]