The forgetful functor from R-modules preserves filtered colimits. #
Forgetful functors from algebraic categories usually don't preserve colimits. However, they tend to preserve filtered colimits.
In this file, we start with a ring R, a small filtered category J and a functor
F : J ⥤ ModuleCat R. We show that the colimit of F ⋙ forget₂ (ModuleCat R) AddCommGrpCat
(in AddCommGrpCat) carries the structure of an R-module, thereby showing that the forgetful
functor forget₂ (ModuleCat R) AddCommGrpCat preserves filtered colimits. In particular, this
implies that forget (ModuleCat R) preserves filtered colimits.
The colimit of F ⋙ forget₂ (ModuleCat R) AddCommGrpCat in the category AddCommGrpCat.
In the following, we will show that this has the structure of an R-module.
Equations
Instances For
The canonical projection into the colimit, as a quotient type.
Equations
- ModuleCat.FilteredColimits.M.mk F x = (F.comp (CategoryTheory.forget (ModuleCat R))).ιColimitType x.fst x.snd
Instances For
The "unlifted" version of scalar multiplication in the colimit.
Equations
Instances For
Scalar multiplication in the colimit. See also colimitSMulAux.
Equations
- ModuleCat.FilteredColimits.colimitHasSMul F = { smul := fun (r : R) (x : ↑(ModuleCat.FilteredColimits.M F)) => Quot.lift (ModuleCat.FilteredColimits.colimitSMulAux F r) ⋯ x }
Equations
- ModuleCat.FilteredColimits.colimitMulAction F = { toSMul := ModuleCat.FilteredColimits.colimitHasSMul F, mul_smul := ⋯, one_smul := ⋯ }
Equations
- ModuleCat.FilteredColimits.colimitSMulWithZero F = { toSMul := (ModuleCat.FilteredColimits.colimitMulAction F).toSMul, smul_zero := ⋯, zero_smul := ⋯ }
Equations
- ModuleCat.FilteredColimits.colimitModule F = { toMulAction := ModuleCat.FilteredColimits.colimitMulAction F, smul_zero := ⋯, smul_add := ⋯, add_smul := ⋯, zero_smul := ⋯ }
The bundled R-module giving the filtered colimit of a diagram.
Equations
Instances For
The linear map from a given R-module in the diagram to the colimit module.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The cocone over the proposed colimit module.
Equations
- ModuleCat.FilteredColimits.colimitCocone F = { pt := ModuleCat.FilteredColimits.colimit F, ι := { app := ModuleCat.FilteredColimits.coconeMorphism F, naturality := ⋯ } }
Instances For
Given a cocone t of F, the induced monoid linear map from the colimit to the cocone point.
We already know that this is a morphism between additive groups. The only thing left to see is that
it is a linear map, i.e. preserves scalar multiplication.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The proposed colimit cocone is a colimit in ModuleCat R.
Equations
- ModuleCat.FilteredColimits.colimitCoconeIsColimit F = { desc := ModuleCat.FilteredColimits.colimitDesc F, fac := ⋯, uniq := ⋯ }