Contents

Context

Algebra

higher algebra

universal algebra

Theorems

Higher algebra

higher algebra

universal algebra

Theorems

Representation theory

representation theory

geometric representation theory

Contents

Idea

The action monad or writer monad is a construction generalizing many seemingly different concepts across mathematics and computer science. It may intuitively be understood in the following ways, where throughout we fix a group or monoid $M$.

If one, more generally, replaces sets and a monoid with a monoidal category and an internal monoid, a similar construction can be given. This generalizes, for example, the action that rings have on their modules, and that Lie groups have on manifolds.

Definition

In Sets

Let $M$ be a monoid with unit $e:1\to M$ and multiplication $\cdot:M\times M \to M$. The (left) $M$-action monad is a monad on Set where

• The endofunctor maps a set $X$ to the set $M\times X$;

• The unit is given by

for each object $X$;

• The multiplication is given by

for each object $X$.

The monad axioms follow from the monoid axioms for $M$.

There exists an analogous monad for right actions, whose endofunctor maps $X$ to $X\times M$.

In any monoidal category

More generally, let $(C,\otimes,1)$ be a monoidal category. Let $M$ be a monoid object in $C$ with unit $e:1\to M$ and multiplication $\cdot:M\otimes M \to M$. The (left) $M$-action monad is a monad on $C$ where

• The endofunctor maps an object $X$ of $C$ to the object $M\otimes X$;

• The unit is given by

for each object $X$;

• The multiplication is given by

for each object $X$.

Again, the monad axioms follow from the monoid axioms for $M$. (And again there is an analogous notion for right actions).

Algebras

The algebras over the action monad for a monoid (or group) $M$ can be seen as the $M$-spaces, i.e. sets or spaces equipped with an action of $M$ (hence the name).

Plugging in the definition, an algebra over this monad is then a set $A$ together with a map $e:M\times A\to A$, such that the following diagrams commute. The algebra diagrams

say equivalently that for all $a\in A$ and $m,n\in M$,

$1\cdot a= a, \qquad (m n)\cdot a = m\cdot (n\cdot a) .$

In other words, a $T_M$-algebra is exactly a set equipped with an $M$-action in the traditional group-theoretical sense.

This gives a way to talk about monoid and group actions internally to any monoidal category, giving the notion of a module object.

Properties

• For the case of group actions on sets, a $G$-set is free as an action if and only if it is free as an algebra (up to isomorphism).
• The action monad $X\mapsto M\times X$ on Set is canonically strong, with the strength given by the associator (see strong monad#examples). It is commutative if and only if $M$ is commutative as a monoid.
• More generally, in an arbitrary symmetric monoidal category, the action monad induced by tensoring with an internal monoid is commutative if and only the monoid object is commutative. (See for example Brandenburg, Example 6.3.12.)
• Any action monad canonically distributes over a strong monad $T$, with the distributive law $M \otimes T X \to T(M\otimes X)$ induced by the strength.

Examples

As logging-effect in computer science

As a monad in computer science, the action monad is known under the name of writer monad, since it encodes the computational effect of programs “writing logging messages” like into a stream.

The following explanation is taken from Perrone, Example 5.1.14.

Let $M$ be a monoid, and let’s write it additively. Denote by $T_M$ its right writer monad.

A Kleisli morphism of $T_M$ is a morphism $k \colon X \to Y \times M$. We can interpret it as a process which, when given an input $x\in X$, does not just produce an output $y\in Y$, but also an element of $M$.

For example, it could be energy released by a chemical reaction, or waste, or a cost of the transaction. In computer science, this is the behaviour of a function that computes a certain value, but that also writes into a log file (or to the standard output) that something has happened (the monoid operation being the concatenation of strings). For example, when you compile a TeX document, a log file is produced alongside your output file. Hence the name “writer monad”.

Let’s now look at the Kleisli composition. If we have processes $k \colon X \to Y\times M$ and $h \colon Y\to Z\times M$, then $k\circ_{kl} Y \colon X\to Z\times M$ is given by

What it does is the following:

1. It executes the process $k$ with an input $x\in X$, giving as output an element of $y\in Y$ as well as a cost (or extra output) $m\in M$.

2. It executes the process $k$ taking as input the $y\in Y$ produced by $k$, giving an element $z\in Z$ as well as an extra cost $n\in M$. (All of this while keeping track of the first cost $m$.)

3. The two costs $m$ and $n$ are summed (or the extra outputs are concatenated).

So, for example, the cost of executing two processes one after another is the sum of the costs. The same is true about the release of energy in a chemical reaction, and about waste.

Just as well, executing two programs one after another will produce a concatenation of text in a log file (or two log files).

Quantum measurement

For $B$ a finite set, and fixing any ground field $k$ (such as the complex numbers), consider the commutative monoid in $k$-vector spaces (i.e. the ordinary commutative algebra)

$\mathbb{1}^B \;=\; \oplus_B k \;\in\; CMon\big(Vect_k\big) \,=\, CAlg_k$

which may be thought of as generated from a $B$-indexed set of mutually orthogonal projection operators.

Then the induxed $\mathbb{1}^B$-writer monad on $k$-VectorSpaces (in the sense above) is isomorphic to the linear version of the $B$-reader monad. This is related to the notion of quantum measurement, and as such is discussed at: quantum reader monad.

References

Last revised on November 13, 2022 at 10:39:16. See the history of this page for a list of all contributions to it.