We know that monoids are one of the most basic algebraic structures on which many others are built. Naturally, they’re one of the first concepts we want to categorify. That is, we want to consider a category with some extra structure making its objects behave like a monoid.
So let’s charge ahead and try to write down what this means. We need some gadget that takes two objects and spits out another. The natural thing to use here is a functor . We’re using the same symbol we did for tensor products — and for a good reason — but we don’t need it to be that operation.
Now we need this functor to satisfy a couple rules to make it like a monoid multiplication. It should be associative, so for all objects , , and in . There should be an “identity” object so that for all objects .
We know that the natural numbers form a monoid under multiplication with as the identity, and we know that the category of finite sets categorifies the natural numbers with Cartesian products standing in for multiplication. So let’s look at it to verify that everything works out. We use as our monoidal structure and see that … but it doesn’t really. On the left we have the set , and on the right we have the set , and these are not the same set. What happened?
The problem is that the results are not the same, but are only isomorphic. The monoid conditions are equations
So when we categorify the concept we need to replace these by natural isomorphisms
These say that while the results of the two functors on either side of the arrow might not be the same, they are isomorphic. Even better, the isomorphism should commute with arrows in , as described by the naturality squares. For instance, if we have an arrow in then we can apply it before or after : as arrows from to .
As a side note, the isomorphism is often called the “associator”, but I don’t know of a similarly catchy name for the other two isomorphisms. When we’ve “weakened” the definition of a monoidal category like this we sometimes call the result a “weak monoidal category”. Alternatively — and this is the convention I prefer — we call these the monoidal categories, and the above definition with equalities instead of just isomorphisms gives “strict monoidal categories”.
Unfortunately, we’re not quite done with revising our definition yet. We’ll be taking our tensor products and identity objects and stringing them together to make new functors, and similarly we’ll be using these natural isomorphisms to relate these functors, but we need to make sure that the relationship doesn’t depend on how we build it from the basic natural isomorphisms. An example should help make this clearer.
This is the pentagon diagram. The vertices of the pentagon are the five different ways of parenthesizing a product of four different objects. The edges are single steps, each using one associator. Around the left, we apply the associator to the first three factors and leave alone (use the identity arrow ), then we apply the associator to , , and , and finally we apply the associator to the last three factors and leave alone. Around the right, we apply the associator twice, first to , , and , and then to , , and . So we have two different natural isomorphisms from to . And we have to insist that they’re the same.
Here’s another example:
This triangle diagram is read the same as the pentagon above: we have two different natural transformations from to , and we insist that they be the same.
What’s happened is we’ve replaced equations at the level of sets with (natural) isomorphisms at the level of the category, but these isomorphisms are now subject to new equations. We’ve seen two examples of these new equations, and it turns out that all the others follow from these two. I’ll defer the justification of this “coherence theorem” until later.
For now, let’s go back to We can use the universal property of the product to give an arrow , and we can verify that these form the components of a natural isomorphism. Similarly, we can use the singleton as an identity object and determine isomorphisms and . They do indeed satisfy the pentagon and triangle identities above, making into a monoidal category.
In fact, you could establish the associator and other isomorphisms for by looking at the elements of the sets and defining particular functions, but if we do it all by the universal properties of products and terminal objects we get a great generalization: any category with finite products (in particular, pairwise products and a terminal object) can use them as a monoidal structure. Dually, any category with finite coproducts can use them as a monoidal structure.
For any ring , the category of all bimodules has a monoidal structure given by , and because of this monoidal categories are often called “tensor categories” and the monoidal structure a tensor product.