We encountered the notion of strength when we introduced strong monads. Strength has turned out to be an important idea, for example in discussion of commutative monads which underpin a lot of monad theory.
As strength is so important, we are going to back up, and examine it in a bit more detail, eventually arriving at a concise definition of strong monad.
Our ulterior motive is to set up some background on strong natural transformations so we can learn more about commutative, affine, relevant and cartesian monads in future posts.
Strong functors
Recall, a strength for an endofunctor
on a monoidal category is a natural transformation
compatible with the monoidal left unitor and associator, in that
and
A strong functor is a pair
consisting of an endofunctor and a choice of strength.
Strong natural transformations
We now introduce the key notion of this post. A strong natural transformation
is an ordinary natural transformation
which commutes with strengths. That is:
We will overload the symbol for any strength to avoid a proliferation of symbols.
Categorical Structure
For a monoidal category there is a category
with:
- Objects: Strong endofunctors on
- Morphisms: Strong natural transformations, with composition and identities as for ordinary natural transformations.
Checking the required closure properties of strong natural transformations is a routine exercise.
Monoidal Structure
For a monoidal category , there is a strict monoidal structure on
with unit
The tensor product on objects is:
For morphisms
their tensor product is the usual composition of natural transformations
Verifying the monoidal structure is routine, if fiddly, exercise in applying the definitions.
Strong Monads
When we previously discussed strong monads, the definition was only sketched, with detailed deferred to other sources. We are now in a position to give a precise definition of what a strong monad is
A strong monad is a monoid in the category of strong endofunctors.
This is easy to remember, as it is a small variation on the internets favourite meme about monads:
A monad is a monoid in the category of endofunctors.
We just sprinkle the term strong over the slogan for monads, and we get the corresponding slogan for strong monads.
It is not hard to see that there is a strict monoidal forgetful functor to the ordinary category of endofunctors
so every strong monad is an ordinary monad, along with some additional strength data.
Unpacking the Definition
If we unpack the concise definition above, a strong monad is:
- A strong endofunctor
- A unit strong natural transformation
- A multiplication strong natural transformation
Such that the usual unit and multiplication axioms hold.
Applying the Definition
To show that this is not just an exercise in meme generation, we can apply the definition above to deduce what a distributive law of strong monad over strong monad
should be. We require a strong natural transformation:
satisfying formally identical equations to those of an ordinary distributive law. Unpacking this, must be an ordinary distributive law, also satisfying:
This yields the same definition given in Jacobs “Semantics of Weakening and Contraction” for example.
Summary
By identifying the correct mathematical structure, we have arrived at a concise definition of strong monad paralleling one of the familiar definitions for monads.
Inquisitive readers may wonder if any of the other definitions transfer over cleanly. For example, can we define a strong monad as a monad in a different 2-category? The answer is not yet (except in a rather degenerate way)! As with most things, there is a more general definition of strength, which amongst other things allows us to move away from the restriction to endofunctors that has been conspicuous in this post. Our current level of generality will be sufficient for some forthcoming posts. We may return to this topic on a later occasion. Details can be found on the NLab for example.
One thought on “A Strong Monad is Monoid in the Category of Strong Endofunctors”