This is the first of two talks based on Andrea Schalk’s very good introduction to monads, which can be retrieved HERE
In the following, if is a category, we indicate by the collection of objects of , and by the collection of morphisms in from to .
As we know, there are two basic ways of defining an adjunction:
Definition 1. Let and be categories; let and be functors. An adjunction from to , written , is a quadruple where (the unit of the adjunction) and (the counit) are natural transformations such that , for every and , and .
Definition 2. Let and be categories. We call adjunction quadruple a quadruple such that:
- is a functor,
- is a mapping, and
- associates to every object a morphism so that
- for every there exists a unique such that .
The two definitions above are equivalent in the following sense. If is an adjunction according to Definition 1, and , then is an adjunction quadruple according to Definition 2. On the other hand, if is an adjunction quadruple according to Definition 2, and is the inverse operation of —that is, if and only if —then necessarily , and by putting for and for we define an adjunction according to Definition 1.
If is an adjunction, then is an endofunctor.The first question that comes to our mind is:
when does an endofunctor derive from an adjunction?
Let us check some basic properties such an endofunctor must satisfy. First of all, defined by is a natural transformation and satisfies
Moreover, as is a natural transformation, by choosing we get , which after an application of yields
It will turn out that these two properties are precisely what we need.
Definition 3. A monad on a category is a triple where:
- is an endofunctor,
- and are natural transformations, and
- for every we have and ,
As a very basic example, the free monoid construction is a monad on , where , , , and .
As a less basic example, suppose is a poset: what is a monad on ? First of all, an endofunctor on a poset is a monotone function; next, if there is , then ; finally, if there is , then , which together with the previous inequality yields . On the other hand, any nondecreasing idempotent is the endofunctor component of a monad: the monad equations are actually ensured by being a poset, so that any two maps with same domain and same codomain are equal.
We then restate our original problem as follows:
given a monad , find an adjunction such that and
If the adjunction solves the problem above, we say that it generates the monad .
The first solution to this problem was given by the Swiss mathematician Heinrich Kleisli, and is based on an alternative way of defining monads, as it is the case with adjunctions. Let us suppose with . If , then , so that : and we know from the definition of monad that . We can thus define an operator that takes into in a way such that whatever is. The simplest example is itself, so that , and by uniqueness in the definition of adjunction quadruple. Moreover, if and , then
which implies by uniqueness.
This is the base of Kleisli’s solution to our problem, which we will discuss in a future talk.