The Monad (category theory) reference article from the English Wikipedia on 24-Apr-2004
(provided by Fixed Reference: snapshots of Wikipedia from wikipedia.org)

Monad (category theory)

People like you are child sponsors
In category theory, a monad or triple is a type of functor, together with two associated natural transformations. Monads are important in the theory of pairs of adjoint functors. They are formally similar to monoids (hence the name) and generalize closure operators on posets to arbitrary categories.

Table of contents
1 Introduction
2 Formal definition
3 Examples
4 See also
5 References

Introduction

If F and G are an adjoint pair of functors, with F left adjoint to G, then the composition GoF will be a monad. Note that therefore a monad is a functor from a category to itself; and that if F and G were actually inverses as functors the corresponding monad would be the identity functor. In general adjunctions are not equivalences - they relate categories of different natures. The monad theory matters as part of the effort to capture what it is that adjunctions 'preserve'. The other half of the theory, of what can be learned likewise from consideration of FoG, is discussed under comonad.

The monad axioms can be seen at work in a simple example: let G be the forgetful functor from the category Group of groups to the category Set of sets. Then as F we can take the free group functor. This means that the monad T = GoF takes a set X and returns the underlying set of the free group Free(X). In this situation, we are given two natural morphisms: X -> T(X) by including any set X in Free(X) in the natural way. Further, T(T(X)) -> T(X) can be made out of a natural concatenation of 'strings of strings'. This amounts to two natural transformations I -> T, and ToT -> T. They will satisfy some axioms about identity and associativity that result from the adjunction properties.

Those axioms are formally similar to the monoid axioms. (In fact, a monad can be seen as a "monoid object" in the functor category of all functors from a given category to itself.) They are taken as the definition of a general monad (not assumed a priori to be connected to an adjunction) on a category.

If we specialize to the category arising from a partially ordered set (P, ≤) (with a single morphism from x to y iff xy), then the formalism becomes much simpler: adjoint pairs are Galois connections and monads are closure operators.

Every monad arises from some adjunction, in fact typically from many adjunctions. Two constructions, the Kleisli category and the category of Eilenberg-Mac Lane algebras, are extremal solutions of the problem of constructing an adjunction that gives rise to a given monad.

The example about free groups given above can be generalized to any type of algebra in the sense of universal algebra. Thus, every such type of algebra gives rise to a monad on the category of sets. Importantly, the algebra type can be recovered from the monad (as the category of Eilenberg-Mac Lane algebras), so monads can also be seen as generalizing universal algebra.

While monads are quite common, making them explicit is less so (the language belongs to the school of Mac Lane, and has rarely been used in the school of Grothendieck, which prefers to write out monads and comonads longhand). In categorical logic, an analogy has been drawn between the monad-comonad theory, and modal logic.

Formal definition

If C is a category, a monad on C consists of a functor T : CC together with two natural transformations: ε : 1CT (where 1C denotes the identity functor on C) and μ : T2T (where T2 is the functor T o T from C to C). These are required to fulfill the following axioms:

The first axiom is akin to the associativity in monoids, the second axiom to the existence of an identity element.

Examples

The most important examples to think about when hearing the term "monad" are the free group example mentioned above, and closure operators. Here's another example on the category Set: for a set A let T(A) be the power set of S and for a function f : AB let T(f) be the function between the power sets induced by taking direct images under f. For every set A, we have a map εA : AT(A), which assigns to every element a of A the singleton {a}. A function ηA : T(T(A)) → T(A) can be given as follows: if L is a set whose elements are subsets of A, then taking the union of these subsets gives a subset ηA(L) of A. These data describe a monad.

See also

References