Limits and colimits in the category of algebras #
This file shows that the forgetful functor forget T : Algebra T ⥤ C for a monad T : C ⥤ C
creates limits and creates any colimits which T preserves.
This is used to show that Algebra T has any limits which C has, and any colimits which C has
and T preserves.
This is generalised to the case of a monadic functor D ⥤ C.
TODO #
Dualise for the category of coalgebras and comonadic left adjoints.
(Impl) The natural transformation used to define the new cone
Equations
- CategoryTheory.Monad.ForgetCreatesLimits.γ D = CategoryTheory.NatTrans.mk fun (j : J) => (D.toPrefunctor.obj j).a
Instances For
(Impl) This new cone is used to construct the algebra structure
Equations
- One or more equations did not get rendered due to their size.
Instances For
The algebra structure which will be the apex of the new limit cone for D.
Equations
Instances For
(Impl) Construct the lifted cone in Algebra T which will be limiting.
Equations
- One or more equations did not get rendered due to their size.
Instances For
(Impl) Prove that the lifted cone is limiting.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The forgetful functor from the Eilenberg-Moore category creates limits.
Equations
- CategoryTheory.Monad.forgetCreatesLimits = CategoryTheory.CreatesLimitsOfSize.mk
D ⋙ forget T has a limit, then D has a limit.
(Impl)
The natural transformation given by the algebra structure maps, used to construct a cocone c with
apex colimit (D ⋙ forget T).
Equations
- CategoryTheory.Monad.ForgetCreatesColimits.γ = CategoryTheory.NatTrans.mk fun (j : J) => (D.toPrefunctor.obj j).a
Instances For
(Impl)
A cocone for the diagram (D ⋙ forget T) ⋙ T found by composing the natural transformation γ
with the colimiting cocone for D ⋙ forget T.
Equations
- CategoryTheory.Monad.ForgetCreatesColimits.newCocone c = { pt := c.pt, ι := CategoryTheory.CategoryStruct.comp CategoryTheory.Monad.ForgetCreatesColimits.γ c.ι }
Instances For
(Impl)
Define the map λ : TL ⟶ L, which will serve as the structure of the coalgebra on L, and
we will show is the colimiting object. We use the cocone constructed by c and the fact that
T preserves colimits to produce this morphism.
Equations
Instances For
(Impl) The key property defining the map λ : TL ⟶ L.
(Impl)
Construct the colimiting algebra from the map λ : TL ⟶ L given by lambda. We are required to
show it satisfies the two algebra laws, which follow from the algebra laws for the image of D and
our commuting lemma.
Equations
Instances For
(Impl) Construct the lifted cocone in Algebra T which will be colimiting.
Equations
- One or more equations did not get rendered due to their size.
Instances For
(Impl) Prove that the lifted cocone is colimiting.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The forgetful functor from the Eilenberg-Moore category for a monad creates any colimit which the monad itself preserves.
Equations
- One or more equations did not get rendered due to their size.
Equations
- CategoryTheory.Monad.forgetCreatesColimitsOfShape = CategoryTheory.CreatesColimitsOfShape.mk
Equations
- CategoryTheory.Monad.forgetCreatesColimits = CategoryTheory.CreatesColimitsOfSize.mk
For D : J ⥤ Algebra T, D ⋙ forget T has a colimit, then D has a colimit provided colimits
of shape J are preserved by T.
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
Any monadic functor creates limits.
Equations
Instances For
The forgetful functor from the Eilenberg-Moore category for a monad creates any colimit which the monad itself preserves.
Equations
- One or more equations did not get rendered due to their size.
Instances For
A monadic functor creates any colimits of shapes it preserves.
Equations
- CategoryTheory.monadicCreatesColimitsOfShapeOfPreservesColimitsOfShape R = CategoryTheory.CreatesColimitsOfShape.mk
Instances For
A monadic functor creates colimits if it preserves colimits.
Equations
- CategoryTheory.monadicCreatesColimitsOfPreservesColimits R = CategoryTheory.CreatesColimitsOfSize.mk
Instances For
If C has limits of shape J then any reflective subcategory has limits of shape J.
If C has limits then any reflective subcategory has limits.
If C has colimits of shape J then any reflective subcategory has colimits of shape J.
If C has colimits then any reflective subcategory has colimits.
The reflector always preserves terminal objects. Note this in general doesn't apply to any other limit.
Equations
- CategoryTheory.leftAdjointPreservesTerminalOfReflective R = CategoryTheory.Limits.PreservesLimitsOfShape.mk