PlanetMath (more info)
 Math for the people, by the people.
Encyclopedia | Requests | Forums | Docs | Wiki | Random | RSS  
Login
create new user
name:
pass:
forget your password?
Main Menu
Owner confidence rating: Very high Entry average rating: No information on entry rating
monad (Definition)

A monad over a category $ \mathcal{C}$ is a triple $ (T,\eta,\mu)$, where $ T$ is an endofunctor of $ \mathcal{C}$, $ \eta$ is a natural transformation from the identity functor on $ \mathcal{C}$, and $ \mu$ is a natural transformations from $ T\circ T$ to $ T$, such that the following two properties hold:

  • $ \mu\circ(\mu\circ T)\equiv\mu\circ(T\circ\mu)$
  • $ \mu\circ(T\circ\eta)\equiv\mathrm{id}_\mathcal{C}\equiv\mu\circ(\eta\circ T)$

These laws are illustrated in the following diagrams.

$\displaystyle \begin{xy} *!C\xybox{ \xymatrix{ T^3(\mathcal{C}) \ar[rr]^{T\mu_{... ...\ T^2(\mathcal{C}) \ar[rr]_{\mu_{\mathcal{C}}} && T(\mathcal{C}) } } \end{xy}$
$\displaystyle \begin{xy} *!C\xybox{ \xymatrix{ T(\mathrm{id}_{\mathcal{C}}(A)) ... ...}} \ar[ddll]_{\mathrm{id}^{\mathcal{C}}} \ \ && T(\mathcal{C}) } } \end{xy}$
$ \mu\circ(\mu\circ T)\equiv\mu\circ(T\circ\mu)$ $ \mu\circ(T\circ\eta)\equiv\mathrm{id}_\mathcal{C}\equiv\mu\circ(\eta\circ T)$

As an application, monads have been successfully applied in the field of functional programming. A pure functional program can have no side effects, but some computations are frequently much simpler with such behavior. Thus a mathematical model of computation such as a monad is needed. In this case, monads serve to represent state transformations, mutable variables, and interactions between a program and its environment. For further information in this regard, see http://www.nomaware.com/monads/html/.



"monad" is owned by mathcam. [ full author list (2) | owner history (1) ]
(view preamble)

View style:

See Also: natural transformation, functor, category, functorial morphisms

Other names:  associative law of a monad, left and right identity laws of a monad

Attachments:
comonad (Definition) by mps
Log in to rate this entry.
(view current ratings)

Cross-references: information, variables, transformations, state, represent, side, functional, field, application, properties, identity functor, natural transformation, endofunctor, category
There are 8 references to this entry.

This is version 8 of monad, born on 2002-02-24, modified 2005-01-25.
Object id is 2614, canonical name is Monad.
Accessed 5696 times total.

Classification:
AMS MSC68Q70 (Computer science :: Theory of computing :: Algebraic theory of languages and automata)
 18C15 (Category theory; homological algebra :: Categories and theories :: Triples , algebras for a triple, homology and derived functors for triples)

Pending Errata and Addenda
None.
[ View all 6 ]
Discussion
Style: Expand: Order:
forum policy
comonad access by Lando47 on 2006-12-13 18:15:16
Anyone wit access to monad should also have access to rwa comonad. Let me know if thats not the case.
[ reply | up ]

Interact
post | correct | update request | add derivation | add example | add (any)