# Monoidal category

In mathematics, a monoidal category (or tensor category) is a category C equipped with a bifunctor

⊗ : C × CC

that is associative up to a natural isomorphism, and an object I that is both a left and right identity for ⊗, again up to a natural isomorphism. The associated natural isomorphisms are subject to certain coherence conditions, which ensure that all the relevant diagrams commute.

The ordinary tensor product makes vector spaces, abelian groups, R-modules, or R-algebras into monoidal categories. Monoidal categories can be seen as a generalization of these and other examples. Every (small) monoidal category may also be viewed as a "categorification" of an underlying monoid, namely the monoid whose elements are the isomorphism classes of the category's objects and whose binary operation is given by the category's tensor product.

In category theory, monoidal categories can be used to define the concept of a monoid object and an associated action on the objects of the category. They are also used in the definition of an enriched category.

Monoidal categories have numerous applications outside of category theory proper. They are used to define models for the multiplicative fragment of intuitionistic linear logic. They also form the mathematical foundation for the topological order in condensed matter. Braided monoidal categories have applications in quantum information, quantum field theory, and string theory.

## Formal definition

A monoidal category is a category ${\displaystyle \mathbf {C} }$ equipped with a monoidal structure. A monoidal structure consists of the following:

• a bifunctor ${\displaystyle \otimes \colon \mathbf {C} \times \mathbf {C} \to \mathbf {C} }$ called the tensor product or monoidal product,
• an object ${\displaystyle I}$ called the unit object or identity object,
• three natural isomorphisms subject to certain coherence conditions expressing the fact that the tensor operation
• is associative: there is a natural (in each of three arguments ${\displaystyle A}$, ${\displaystyle B}$, ${\displaystyle C}$) isomorphism ${\displaystyle \alpha }$, called associator, with components ${\displaystyle \alpha _{A,B,C}\colon (A\otimes B)\otimes C\cong A\otimes (B\otimes C)}$,
• has ${\displaystyle I}$ as left and right identity: there are two natural isomorphisms ${\displaystyle \lambda }$ and ${\displaystyle \rho }$, respectively called left and right unitor, with components ${\displaystyle \lambda _{A}\colon I\otimes A\cong A}$ and ${\displaystyle \rho _{A}\colon A\otimes I\cong A}$.

The coherence conditions for these natural transformations are:

• for all ${\displaystyle A}$, ${\displaystyle B}$, ${\displaystyle C}$ and ${\displaystyle D}$ in ${\displaystyle \mathbf {C} }$, the pentagon diagram
commutes;
• for all ${\displaystyle A}$ and ${\displaystyle B}$ in ${\displaystyle \mathbf {C} }$, the triangle diagram
commutes;

A strict monoidal category is one for which the natural isomorphisms α, λ and ρ are identities. Every monoidal category is monoidally equivalent to a strict monoidal category.

## Examples

### Monoidal preorders

Monoidal preorders, also known as "preordered monoids", are special cases of monoidal categories. This sort of structure comes up in the theory of string rewriting systems, but it is plentiful in pure mathematics as well. For example, the set ${\displaystyle \mathbb {N} }$ of natural numbers has both a monoid structure (using + and 0) and a preorder structure (using ≤) which together form a monoidal preorder, basically because ${\displaystyle m\leq n}$ and ${\displaystyle m'\leq n'}$ implies ${\displaystyle m+m'\leq n+n'}$. We now present the general case.

It's well-known that a preorder can be considered as a category C, such that for every two objects ${\displaystyle c,c'\in \mathrm {Ob} (\mathbf {C} )}$, there exists at most one morphism ${\displaystyle c\to c'}$ in C. If there happens to be a morphism from c to c' , we could write ${\displaystyle c\leq c'}$, but in the current section we find it more convenient to express this fact in arrow form ${\displaystyle c\to c'}$. Because there is at most one such morphism, we never have to give it a name, such as ${\displaystyle f\colon c\to c'}$. The reflexivity and transitivity properties of an order are respectively accounted for by the identity morphism and the composition formula in C. We write ${\displaystyle c\cong c'}$ iff ${\displaystyle c\leq c'}$ and ${\displaystyle c'\leq c}$, i.e. if they are isomorphic in C. Note that in a partial order, any two isomorphic objects are in fact equal.

Moving forward, suppose we want to add a monoidal structure to the preorder C. To do so means we must choose

• an object ${\displaystyle I\in \mathbf {C} }$, called the monoidal unit, and
• a functor ${\displaystyle \mathbf {C} \times \mathbf {C} \to \mathbf {C} }$, which we will denote simply by the dot "${\displaystyle \;\cdot \;}$", called the monoidal multiplication.

Thus for any two objects ${\displaystyle c_{1},c_{2}}$ we have an object ${\displaystyle c_{1}\cdot c_{2}}$. We must choose ${\displaystyle I}$ and ${\displaystyle \cdot }$ to be associative and unital, up to isomorphism. This means we must have:

${\displaystyle (c_{1}\cdot c_{2})\cdot c_{3}\cong c_{1}\cdot (c_{2}\cdot c_{3})}$ and ${\displaystyle I\cdot c\cong c\cong c\cdot I}$.

Furthermore, the fact that · is required to be a functor means—in the present case, where C is a preorder—nothing more than the following:

if ${\displaystyle c_{1}\to c_{1}'}$ and ${\displaystyle c_{2}\to c_{2}'}$ then ${\displaystyle (c_{1}\cdot c_{2})\to (c_{1}'\cdot c_{2}')}$.

The additional coherence conditions for monoidal categories are vacuous in this case because every diagram commutes in a preorder.

Note that if C is a partial order, the above description is simplified even more, because the associativity and unitality isomorphisms becomes equalities. Another simplification occurs if we assume that the set of objects is the free monoid on a generating set ${\displaystyle \Sigma }$. In this case we could write ${\displaystyle \mathrm {Ob} (\mathbf {C} )=\Sigma ^{*}}$, where * denotes the Kleene star and the monoidal unit I stands for the empty string. If we start with a set R of generating morphisms (facts about ≤), we recover the usual notion of semi-Thue system, where R is called the "rewriting rule".

To return to our example, let N be the category whose objects are the natural numbers 0, 1, 2, ..., with a single morphism ${\displaystyle i\to j}$ if ${\displaystyle i\leq j}$ in the usual ordering (and no morphisms from i to j otherwise), and a monoidal structure with the monoidal unit given by 0 and the monoidal multiplication given by the usual addition, ${\displaystyle i\cdot j:=i+j}$. Then N is a monoidal preorder; in fact it is the one freely generated by a single object 1, and a single morphism 0 ≤ 1, where again 0 is the monoidal unit.

## Properties and associated notions

It follows from the three defining coherence conditions that a large class of diagrams (i.e. diagrams whose morphisms are built using ${\displaystyle \alpha }$, ${\displaystyle \lambda }$, ${\displaystyle \rho }$, identities and tensor product) commute: this is Mac Lane's "coherence theorem". It is sometimes inaccurately stated that all such diagrams commute.

There is a general notion of monoid object in a monoidal category, which generalizes the ordinary notion of monoid from abstract algebra. Ordinary monoids are precisely the monoid objects in the cartesian monoidal category Set. Further, any strict monoidal category can be seen as a monoid object in the category of categories Cat (equipped with the monoidal structure induced by the cartesian product).

Monoidal functors are the functors between monoidal categories that preserve the tensor product and monoidal natural transformations are the natural transformations, between those functors, which are "compatible" with the tensor product.

Every monoidal category can be seen as the category B(∗, ∗) of a bicategory B with only one object, denoted ∗.

A category C enriched in a monoidal category M replaces the notion of a set of morphisms between pairs of objects in C with the notion of an M-object of morphisms between every two objects in C.

### Free strict monoidal category

For every category C, the free strict monoidal category Σ(C) can be constructed as follows:

• its objects are lists (finite sequences) A1, ..., An of objects of C;
• there are arrows between two objects A1, ..., Am and B1, ..., Bn only if m = n, and then the arrows are lists (finite sequences) of arrows f1: A1B1, ..., fn: AnBn of C;
• the tensor product of two objects A1, ..., An and B1, ..., Bm is the concatenation A1, ..., An, B1, ..., Bm of the two lists, and, similarly, the tensor product of two morphisms is given by the concatenation of lists. The identity object is the empty list.

This operation Σ mapping category C to Σ(C) can be extended to a strict 2-monad on Cat.