module Cat.Functor.Algebra.Limits where
Limits in categories of F-algebrasπ
This short note details the construction of limits in categories of F-algebras from limits in the underlying category.
module _ {o β oj βj} {C : Precategory o β} (F : Functor C C) {J : Precategory oj βj} (K : Functor J (FAlg F)) where open Cat.Reasoning C private module J = Cat.Reasoning J module F = Cat.Functor.Reasoning F module K = Cat.Functor.Reasoning K open Total-hom
Let be an endofunctor, and be a diagram of If has a limit of then is the limit of in
Forget-algebra-lift-limit : Limit (ΟαΆ (F-Algebras F) Fβ K) β Limit K Forget-algebra-lift-limit L = to-limit (to-is-limit L') where module L = Limit L open make-is-limit
As noted earlier, the underlying object of the limit is The algebra is constructed via the universal property of to give a map it suffices to give maps for every which we can construct by composing the projection with the algebra
apex : FAlg.Ob F apex .fst = L.apex apex .snd = L.universal (Ξ» j β K.β j .snd β F.β (L.Ο j)) comm where abstract comm : β {i j : J.Ob} (f : J.Hom i j) β K.β f .hom β K.β i .snd β F.β (L.Ο i) β‘ K.β j .snd β F.β (L.Ο j) comm {i} {j} f = K.β f .hom β K.β i .snd β F.β (L.Ο i) β‘β¨ pulll (K.β f .preserves) β©β‘ (K.β j .snd β F.β (K.β f .hom)) β F.β (L.Ο i) β‘β¨ F.pullr (L.commutes f) β©β‘ K.β j .snd β F.β (L.Ο j) β
A short series of calculations shows that the projections and universal map associated to are homomorphisms.
L' : make-is-limit K apex L' .Ο j .hom = L.Ο j L' .Ο j .preserves = L.factors _ _ L' .universal eps p .hom = L.universal (Ξ» j β eps j .hom) (Ξ» f β ap hom (p f)) L' .universal eps p .preserves = L.uniqueβ (Ξ» j β K.Fβ j .snd β F.β (eps j .hom)) (Ξ» f β pulll (K.β f .preserves) β F.pullr (ap hom (p f))) (Ξ» j β pulll (L.factors _ _) β eps j .preserves) (Ξ» j β pulll (L.factors _ _) β F.pullr (L.factors _ _))
Finally, equality of morphisms of is given by equality on the underlying morphisms, so all of the relevant diagrams in commute.
L' .commutes f = total-hom-path (F-Algebras F) (L.commutes f) prop! L' .factors eps p = total-hom-path (F-Algebras F) (L.factors _ _) prop! L' .unique eps p other q = total-hom-path (F-Algebras F) (L.unique _ _ _ Ξ» j β ap hom (q j)) prop!
This gives us the following useful corollary: if is then is also complete.
FAlg-is-complete : (F : Functor C C) β is-complete oΞΊ βΞΊ (FAlg F) FAlg-is-complete F K = Forget-algebra-lift-limit F K (complete (ΟαΆ (F-Algebras F) Fβ K))