## Posts tagged ‘monad’

### Monads in mathematics 4 : the bar and cobar constructions

The use of monads and comonads in homological algebra is as old as the theory: Godement’s *standard construction* refers to the use of monads in cohomology theory, and is said to be the first study of a general method for constructing acyclic resolutions. Later the theory was explored in greater depth by Eilenberg, Moore, Barr, Beck. The term *bar resolution* is now most commonly used to describe the process. Monads derived from operads were also studied by Lawvere, Mitchell, Bénabou, under the name of *algebraic theories*, with aim towards topoi and logic.

Bar resolutions (see J. Baez website and the LNM Seminar on Triples and Categorical Homology Theory) are a way to canonically (i.e. functorially) describe an arbitrary algebra over a monad using only free algebras. It is a particular case of definition with *generators and relations* which is often the only way to describe infinite mathematical objects with finite expressions (computer algebra systems usually deal with finitely generated objects, and use generators and relations to describe their elements), but bar resolutions somehow are the universal way of doing this.

Most cohomology theories fit in the framework of bar constructions, though in various apparently unrelated ways. However, a visible common denominator of most constructions is the use of simplicial methods. This makes them of some use in homotopical algebra: bar resolutions are used to define canonical cofibrant resolutions of objects, which explains their uses in definition of derived functors.

(more…)

### Monads in mathematics 3 : monads from adjunctions

The adjunction property between two functors, and , says that there is a natural bijection between morphisms (in the first category) and (in the second category). Here *natural* means that these bijection is compatible with composition with morphisms , or and .

Adjunctions are naturally created by the use of monads or operads. For example, the functor mapping a set *X* to the free vector space with basis *X*, has a adjoint, , mapping a vector space to the set of its elements. The meaning of the adjunction is that a morphism is equivalent to the choice of images of basis vectors where *W* is considered as as set. Similar adjunctions exist for other free objects (free algebras, free groups, free modules).

(more…)

### Monads in mathematics 2 : algebras over monads and operads

A large class of monads is actually derived from operads: basic examples form monads in the category of sets and associate to a set *X* a set *TX* of abstract “terms” made of elements of *X*. For example, the monad of vector spaces I mentioned in the previous post is such a monad, and associates to a set the abstract linear combinations of its elements.

*Operads* are a generic structure giving a more precise definition of these terms. An operad is an abstract set of operations of various arities (an ugly word to precise the number or arguments taken by an operation: a ternary operation is said to have arity three), subject to relations between them or their compositions. For example, the operad of vector spaces consists of two basic operations: sum and product by scalars (which are actually infinitely many operations), which are tied by distributivity, commutativity and associativity among other relations. An example of operation in this operad is , which is a ternary operation.

(more…)

### Monads in mathematics 1 : examples

Category theory studies in an abstract way how structures and constructions of mathematics are related. A *category* is a collection of (mathematical) objects. Usually, interesting categories contain objects sharing the same properties (there is a category of sets, a category of groups, a category of rings, and so on). A category need also have a definition of arrows, which often correspond to the usual definition of functions, maps or morphisms. But it is possible to define categories having more complicated arrows. A (not so) stupid non-trivial category is the opposite category *C ^{op}* of a given category

*C*, which has arrows going the other way.

A monad *M* on a category *C* is a *functor*: it associates to any object *X* in *C* another object *MX* of *C* in a so-called functorial way, which means that any arrow should give rise to an arrow . But in order to call *M * a monad, we require several other properties: there should be natural transformations (so that and are the same, which can be expressed by a *commutative square*), and such that is the identity (notice that there are two ways to obtain an arrow ). MacLane in *Categories for the Working Mathematician* gives a good account of the theory along with a bit of history and references.

Most examples of monads arising in mathematics are derived from two concepts: operads, which combine monads with much richer structure (but correspond to really tangible examples), and adjunctions (a framework in which monads can actually fit). I should write about these later, and concentrate on examples. Monads are also used in computer science, because they model a construction scheme which is widely spread. The programming language *Haskell* formulates many concepts in the language of monads. Marco Maggesi wrote a small introduction to monads (in Italian), which covers monads appearing in Haskell. (more…)

Recent Comments