nLab monoid


Category theory


Monoid theory



In algebra, by a monoid one means a collection (set) of elements equipped with a binary operation (a “multiplication operation”) which is associative and has a unit element.

Hence monoid structure on a set is a fairly rudimentary form of algebraic structure which underlies many familiar structures considered algebra, such as that of groups (which are monoids with all inverse elements) and rings (which are abelian groups compatibly equipped with a second monoid structure).

Therefore, in the algebraic literature monoids are, conversely, often called unital semi-groups. The root “mono-” in “monoid” refers to the single binary operation (cf. duoid and dioid).

The terminology of magmas is meant to invoke this rudimemtary but foundational nature of basic algebraic structures: Monoids are precisely the unital associative magmas.

The categorification of the notion of monoids is that of monads whose ubiquitous role in mathematics (together with their associated adjoint functors) is hard to overstate.


Elementary definition

The classical definition of monoids in Sets, as a unital associative magma:


A monoid is a set MM equipped with the structure if

  1. (binary operation) a map from the Cartesian product of the set with itself to itself

    (-)(-):M×MM (\text{-}) \cdot (\text{-}) \,\colon\, M \times M \to M
  2. (neutral element) an element

    1M1 \in M

such that the following equations are satisfied

  1. (associativity)

    x,y,zM(xy)z=x(yz), x, y, z \,\in\, M \;\;\;\;\; \vdash \;\;\;\;\; (x \cdot y) \cdot z \;=\; x \cdot (y \cdot z) \mathrlap{\,,}
  • (unitality)

    xM1x=x=x1. x \in M \;\;\;\;\; \vdash \;\;\;\;\; 1 \cdot x \;=\; x \;=\; x \cdot 1 \mathrlap{\,.}

In a monoidal category

See monoid in a monoidal category.

In terms of string diagrams

The data of a monoid may be written in string diagrams as:

String diagrams of the monoid data (for "Monoid")

Thanks to the distinctive shapes, one can usually omit the labels:

String diagrams of the monoid data, unlabeled (for "Monoid")

The axioms μ(ηM)=1 M=μ(Mη)\mu \cdot (\eta \otimes M) = 1_M = \mu \cdot (M \otimes \eta) and μ(Mμ)=μ(μM)\mu \cdot (M \otimes \mu) = \mu \cdot (\mu \otimes M) then appear as:

String diagrams of the monoid axioms (for "Monoid")

As a one-object category

Equivalently, and more efficiently, we may say that a (classical) monoid is the hom-set of a category with a single object, equipped with the structure of its unit element and composition.

More tersely, one may say that a monoid is a category with a single object, or more precisely (to get the proper morphisms and 22-morphisms) a pointed category with a single object. But taking this too literally may create conflicts in notation. To avoid this, for a given monoid MM, we write BM\mathbf{B}M for the corresponding category with single object \bullet and with MM as its hom-set: the delooping of MM, so that M=Hom BM(,)M = Hom_{\mathbf{B}M}(\bullet, \bullet). This realizes every monoid as a monoid of endomorphisms.

Similarly, a monoid in (C,,I)(C,\otimes,I) may be defined as the hom-object of a CC-enriched category with a single object, equipped with its composition and identity-assigning morphisms; and so on, as in the classical (i.e. Set\mathbf{Set}-enriched) case.

For more on this see also group.

As a strict monoidal category

An alternate way to view a monoid as a category is as a discrete strict monoidal category C\mathbf{C} where the elements of the monoid are the objects of C\mathbf{C}, the binary operation of the monoid provides the tensor product bifunctor, and the identity of the monoid is the unit object. Preordered monoids then yield (non-discrete) strict monoidal categories with the morphisms witnessing the preorder in the usual way.

𝒪\mathcal{O}-Monoids over an (,1)(\infty,1)-Operad

The notion of associative monoids discussed above are controled by the associative operad. More generally in higher algebra, for 𝒪\mathcal{O} any operad or (infinity,1)-operad, one can consider 𝒪\mathcal{O}-monoids. (Lurie, def.

These are closely related to (infinity,1)-algebras over an (infinity,1)-operad with respect to 𝒪\mathcal{O} (Lurie, prop.


Finite products (and sums)

Let MM be a monoid, and let M *M^* be the free monoid on MM with canonical function h:MM *h:M \to M^* taking the elements of MM to the generators in M *M^*. The finite product operation on MM is a monoid homomorphism

i=0 len()1()(i):M *M\prod_{i = 0}^{\mathrm{len}(-) - 1}(-)(i):M^* \to M

from M *M^* to MM, where:

i=0 len(ϵ)1ϵ(i)=1\prod_{i = 0}^{\mathrm{len}(\epsilon) - 1} \epsilon(i) = 1
i=0 len(h(a))1(h(a))(i)=a\prod_{i = 0}^{\mathrm{len}(h(a)) - 1} (h(a))(i) = a
( i=0 len(a)1a(i))( i=0 len(b)1b(i))= i=0 len(ab)1(ab)(i)\left(\prod_{i = 0}^{\mathrm{len}(a) - 1} a(i)\right) \cdot \left(\prod_{i = 0}^{\mathrm{len}(b) - 1} b(i)\right) = \prod_{i = 0}^{\mathrm{len}(a b) - 1} (a b)(i)

If MM is written additively (+,0)(+, 0) instead of multiplicatively (,1)(\cdot, 1), the operation is called finite sum, and is defined as

i=0 len()1()(i):M *M\sum_{i = 0}^{\mathrm{len}(-) - 1}(-)(i):M^* \to M

from M *M^* to MM, where:

i=0 len(ϵ)1ϵ(i)=0\sum_{i = 0}^{\mathrm{len}(\epsilon) - 1} \epsilon(i) = 0
i=0 len(h(a))1(h(a))(i)=a\sum_{i = 0}^{\mathrm{len}(h(a)) - 1} (h(a))(i) = a
( i=0 len(a)1a(i))+( i=0 len(b)1b(i))= i=0 len(ab)1(ab)(i)\left(\sum_{i = 0}^{\mathrm{len}(a) - 1} a(i)\right) + \left(\sum_{i = 0}^{\mathrm{len}(b) - 1} b(i)\right) = \sum_{i = 0}^{\mathrm{len}(a b) - 1} (a b)(i)


  • A monoid in which every element has an inverse is a group. For that reason monoids are often known (especially outside category theory) as semi-groups. (But this term is often extended to monoids without identities, that is to sets equipped with any associative operation.)
  • The set of endomorphisms of a given object in a category has a canonical monoid structure given by composition.

Remarks on notation

It can be important to distinguish between a kk-tuply monoidal structure and the corresponding kk-tuply degenerate category, even though there is a map identifying them. The issue appears here for instance when discussing the universal GG-bundle in its groupoid incarnation. This is

GEGBG G \to \mathbf{E}G \to \mathbf{B}G

(where EG=G//G\mathbf{E}G = G//G is the action groupoid of GG acting on itself). On the left we crucially have GG as a monoidal 0-category, on the right as a once-degenerate 1-category. Without this notation we cannot even write down the universal GG-bundle!

Or take the important difference between group representations and group 2-algebras, the former being functors BGVect\mathbf{B}G \to Vect, the latter functors GVectG \to Vect. Both these are very important.

Or take an abelian group AA and a codomain like 2Vect2Vect. Then there are 3 different things we can sensibly consider, namely 2-functors

A2Vect A \to 2Vect
BA2Vect \mathbf{B}A \to 2Vect


B 2A2Vect. \mathbf{B}^2A \to 2Vect \,.

All of these concepts are different, and useful. The first one is an object in the group 3-algebra of AA. The second is a pseudo-representation of the group AA. The third is a representations of the 2-group BA\mathbf{B}A. We have notation to distinguish this, and we should use it.

Finally, writing BG\mathbf{B}G for the 1-object nn-groupoid version of an nn-monoid GG makes notation behave nicely with respect to nerves, because then realization bars |||\cdot| simply commute with the BBs in the game: |BG|=B|G||\mathbf{B}G| = B|G|.

This behavior under nerves shows also that, generally, writing BG\mathbf{B}G gives the right intuition for what an expression means. For instance, what’s the “geometric” reason that a group representation is an arrow ρ:BGVect\rho : \mathbf{B}G \to Vect? It’s because this is, literally, equivalently thought of as the corresponding classifying map of the vector bundle on BG\mathbf{B}G which is ρ\rho-associated to the universal GG-bundle:

the ρ\rho-associated vector bundle to the universal GG-bundle is, in its groupoid incarnations,

V V//G BG, \array{ V \\ \downarrow \\ V//G \\ \downarrow \\ \mathbf{B}G } \,,

where VV is the vector space that ρ\rho is representing on, and this is classified by the representation ρ:BGVect\rho : \mathbf{B}G \to Vect in that this is the pullback of the universal VectVect-bundle

V//G Vect * BG ρ Vect, \array{ V//G &\to& Vect_* \\ \downarrow && \downarrow \\ \mathbf{B}G &\stackrel{\rho}{\to}& Vect } \,,

In summary, it is important to make people understand that groups can be identified with one-object groupoids. But next it is important to make clear that not everything that can be identified should be, for instance concerning the crucial difference between the category in which GG lives and the 2-category in which BG\mathbf{B}G lives.

algebraic structureoidification
pointed magma with an endofunctionsetoid/Bishop set
unital magmaunital magmoid
anti-involutive monoiddagger category
associative quasigroupassociative quasigroupoid
flexible magmaflexible magmoid
alternative magmaalternative magmoid
absorption monoidabsorption category
cancellative monoidcancellative category
rigCMon-enriched category
nonunital ringAb-enriched semicategory
nonassociative ringAb-enriched unital magmoid
nonassociative algebralinear magmoid
nonassociative unital algebraunital linear magmoid
nonunital algebralinear semicategory
associative unital algebralinear category
C-star algebraC-star category
differential algebradifferential algebroid
flexible algebraflexible linear magmoid
alternative algebraalternative linear magmoid
Lie algebraLie algebroid
monoidal poset2-poset
strict monoidal groupoid?strict (2,1)-category
strict 2-groupstrict 2-groupoid
strict monoidal categorystrict 2-category
monoidal groupoid(2,1)-category
monoidal category2-category/bicategory


Beware that the term “monoid” was first used by

  • Arthur Cayley, Second and Third Memoirs on Skew Surfaces, Otherwise Scrolls, Phil. Trans. (1863 and 1869)

for certain surfaces, quite unrelated to the modern meaning of the term.

Instead, what are now called monoids (unital associative magmas) were called groupoids (now clashing with the modern use of groupoid) by

The modern terminology “monoid” for unital associative magmas is (according to Hollings 2009, p. 529) due to

For more on the history of the notion:

Exposition of basics of monoidal categories and categorical algebra:

Properties of monoids expressed through properties of their toposes of presheaves:

  • Jens Hemelaer, Morgan Rogers, Monoid Properties as Invariants of Toposes of Monoid Actions, arXiv:2004.10513.

Formalization of monoid objects as mathematical structures in proof assistants:

in a context of plain Agda:

in a context of cubical Agda:

Last revised on March 11, 2024 at 06:04:22. See the history of this page for a list of all contributions to it.