monoidal functor


Monoidal categories



A monoidal functor is a functor between monoidal categories that preserves the monoidal structure: a homomorphism of monoidal categories.


A functor F:CDF : C \to D between strict monoidal categories (C,)(C,\otimes) and (D,)(D,\otimes) is called lax monoidal if it is equipped with a morphism

ϵ:I DF(I C) \epsilon : I_D \stackrel{}{\to} F(I_C)

and a natural transformation

μ x,y:F(x) DF(y)F(x Cy) \mu_{x,y} : F(x) \otimes_D F(y) \to F(x \otimes_C y)

satisfying the following conditions

  • associativity For all x,y,zCx,y,z \in C we have a commuting diagram

    F(x)F(y)F(z) Idμ y,z F(x)F(yz) μ x,yId μ x,yz F(xy)F(z) μ xy,z F(xyz) \array{ F(x) \otimes F(y) \otimes F(z) &\stackrel{Id \otimes \mu_{y,z}}{\to}& F(x) \otimes F(y \otimes z) \\ {}^{\mathllap{\mu_{x,y} \otimes Id}}\downarrow && \downarrow^{\mathrlap{\mu_{x,y \otimes z}}} \\ F(x \otimes y) \otimes F(z) &\stackrel{\mu_{x \otimes y, z}}{\to}& F(x \otimes y \otimes z) }
  • unitality For all xCx \in C we have

    I DF(x) λ F(x) 1 F(x) ϵId F(λ x 1) F(I C)F(x) μ I,x F(I Cx) \array{ I_D \otimes F(x) &\stackrel{\lambda^{-1}_{F(x)}}{\leftarrow}& F(x) \\ {}^{\mathllap{\epsilon \otimes Id}}\downarrow && \downarrow^{\mathrlap{F(\lambda^{-1}_x)}} \\ F(I_C) \otimes F(x) &\stackrel{\mu_{I,x}}{\to}& F(I_C \otimes x) }


    F(x)I D ρ F(x) 1 F(x) Idϵ F(ρ x 1) F(x)F(I C) μ x,I F(xI C) \array{ F(x) \otimes I_D &\stackrel{\rho^{-1}_{F(x)}}{\leftarrow}& F(x) \\ {}^{\mathllap{Id \otimes \epsilon }}\downarrow && \downarrow^{\mathrlap{F(\rho^{-1}_x)}} \\ F(x) \otimes F(I_C) &\stackrel{\mu_{x,I}}{\to}& F(x \otimes I_C) }

Where λ\lambda and ρ\rho are respectively the left and right unitors. We do not explicitly mention the category in which they live, as it is clear from where the subscripted object lives.

Lax monoidal functors are the lax morphism for an appropriate 2-monad.

If ϵ\epsilon and μ x,y\mu_{x,y} are isomorphisms then FF is called a strong monoidal functor. If they are even identities it is called a strict monoidal functor.

In contrast to this, a strong monoidal functor may also be called a weak monoidal functor. Sometimes the plain term “monoidal functor” is used to mean a strong monoidal functor, in which case the general situation is called a lax monoidal functor.

An oplax monoidal functor (with various alternative names including comonoidal), is a monoidal functor from the opposite categories C opC^{op} to D opD^{op}.

A monoidal transformation between monoidal functors is a natural transformation that respects the extra structure in an obvious way.

If the monoidal categories are not strict one obtains correspondingly more coherence diagrams. One way to summarize these is to note that a monoidal category CC is equivalently its pointed delooping 2-category/bicategory BC\mathbf{B}C (with a single object and CC as its hom-object), then a monoidal functor CDC \to D is equivalently a 2-functor/pseudofunctor BCBD\mathbf{B}C \to \mathbf{B}D. Using this one can infer the coherence diagrams as special cases from those discussed at pseudofunctor.



Lax monoidal functors send monoids to monoids.

If F:(C,)(D,)F : (C,\otimes) \to (D,\otimes) is a lax monoidal functor and

(AC,μ A:AAA,i A:IA) (A \in C,\;\; \mu_A : A \otimes A \to A, \; i_A : I \to A)

is a monoid in CC, then the object F(A)F(A) is naturally equipped with the structure of a monoid in DD by setting

i F(A):I DF(I C)F(i A)F(A) i_{F(A)} : I_D \stackrel{}{\to} F(I_C) \stackrel{F(i_A)}{\to} F(A)


μ F(A):F(A)F(A) F(A),F(A)F(AA)F(μ A)F(A). \mu_{F(A)} : F(A) \otimes F(A) \stackrel{\nabla_{F(A), F(A)}}{\to} F(A \otimes A) \stackrel{F(\mu_A)}{\to} F(A) \,.

This construction defines a functor

Mon(f):Mon(C)Mon(D) Mon(f) : Mon(C) \to Mon(D)

between the categories of monoids.

Similarly, an oplax monoidal functor sends comonoids to comonoids.


For (C,)(C,\otimes) a monoidal category write BC\mathbf{B}C for the correspinding delooping 2-category.

Lax monoidal functor f:CDf : C \to D correspond to lax 2-functor

BF:BCBD. \mathbf{B}F : \mathbf{B}C \to \mathbf{B}D \,.

If FF is strong monoidal then this is an ordinary 2-functor. If it is strict monoidal, then this is a strict 2-functor.

String diagrams

Just like monoidal categories, monoidal functors have a string diagram calculus; see these slides for some examples.

Revised on March 22, 2016 16:34:22 by Urs Schreiber (