In this mainly expository note, we state a criterion for when a left Kan extension of a lax monoidal functor along a strong monoidal functor can itself be equipped with a lax monoidal structure, in a way that results in a left Kan extension in MonCat. This belongs to the general theory of algebraic Kan extensions, as developed by Melli es-Tabareau, Koudenburg and Weber, and is very close to an instance of a theorem of Koudenburg. We find this special case particularly important due to its connections with the theory of graded monads.
Paterson @cite_2 has investigated general constructions of lax monoidal functors for functional programming. His Proposition 4 provides a construction of a lax monoidal structure on a left Kan extension , under certain assumptions including that @math is cartesian monoidal and that the Kan extension is pointwise.
@cite_2
2125146300
Applicative functors define an interface to computation that is more general, and correspondingly weaker, than that of monads. First used in parser libraries, they are now seeing a wide range of applications. This paper sets out to explore the space of non-monadic applicative functors useful in programming. We work with a generalization, lax monoidal functors, and consider several methods of constructing useful functors of this type, just as transformers are used to construct computational monads. For example, coends, familiar to functional programmers as existential types, yield a range of useful applicative functors, including left Kan extensions. Other constructions are final fixed points, a limited sum construction, and a generalization of the semi-direct product of monoids. Implementations in Haskell are included where possible.