Last updated
Algebraic structures between magmas and groups. For example, monoids are semigroups with identity. Algebraic structures - magma to group.svg
Algebraic structures between magmas and groups. For example, monoids are semigroups with identity.

In abstract algebra, a branch of mathematics, a monoid is a set equipped with an associative binary operation and an identity element.


Monoids are semigroups with identity. Such algebraic structures occur in several branches of mathematics.

For example, the functions from a set into itself form a monoid with respect to function composition. More generally, in category theory, the morphisms of an object to itself form a monoid, and, conversely, a monoid may be viewed as a category with a single object.

In computer science and computer programming, the set of strings built from a given set of characters is a free monoid. Transition monoids and syntactic monoids are used in describing finite-state machines. Trace monoids and history monoids provide a foundation for process calculi and concurrent computing.

In theoretical computer science, the study of monoids is fundamental for automata theory (Krohn–Rhodes theory), and formal language theory (star height problem).

See Semigroup for the history of the subject, and some other general properties of monoids.


A set S equipped with a binary operation S × SS, which we will denote •, is a monoid if it satisfies the following two axioms:

For all a, b and c in S, the equation (ab) • c = a • (bc) holds.
Identity element
There exists an element e in S such that for every element a in S, the equations ea = a and ae = a hold.

In other words, a monoid is a semigroup with an identity element. It can also be thought of as a magma with associativity and identity. The identity element of a monoid is unique. [1] For this reason the identity is regarded as a constant, i. e. 0-ary (or nullary) operation. The monoid therefore is characterized by specification of the triple (S, • , e).

Depending on the context, the symbol for the binary operation may be omitted, so that the operation is denoted by juxtaposition; for example, the monoid axioms may be written (ab)c = a(bc) and ea = ae = a. This notation does not imply that it is numbers being multiplied.

A monoid in which each element has an inverse is a group.

Monoid structures


A submonoid of a monoid (M, •) is a subset N of M that is closed under the monoid operation and contains the identity element e of M. [2] [3] Symbolically, N is a submonoid of M if NM, xyN whenever x, yN, and eN. In this case, N is a monoid under the binary operation inherited from M.

On the other hand, if N is subset of a monoid that is closed under the monoid operation, and is a monoid for this inherited operation, then N is not always a submonoid, since the identity elements may differ. For example, the singleton set {0} is closed under multiplication, and is not a submonoid of the (multiplicative) monoid of the nonnegative integers.


A subset S of M is said to generateM if the smallest submonoid of M containing S is M. If there is a finite set that generates M, then M is said to be a finitely generated monoid.

Commutative monoid

A monoid whose operation is commutative is called a commutative monoid (or, less commonly, an abelian monoid). Commutative monoids are often written additively. Any commutative monoid is endowed with its algebraic preordering , defined by xy if there exists z such that x + z = y. [4] An order-unit of a commutative monoid M is an element u of M such that for any element x of M, there exists v in the set generated by u such that xv. This is often used in case M is the positive cone of a partially ordered abelian group G, in which case we say that u is an order-unit of G.

Partially commutative monoid

A monoid for which the operation is commutative for some, but not all elements is a trace monoid; trace monoids commonly occur in the theory of concurrent computation.


or, equivalently
Multiplication of elements in is then given by function composition.
When then the function f is a permutation of and gives the unique cyclic group of order n.


The monoid axioms imply that the identity element e is unique: If e and f are identity elements of a monoid, then e = ef = f.

Products and powers

For each nonnegative integer n, one can define the product of any sequence of n elements of a monoid recursively: let p0 = e and let pm = pm−1am for 1 ≤ mn.

As a special case, one can define nonnegative integer powers of an element x of a monoid: x0 = 1 and xn = xn−1x for n ≥ 1. Then xm+n = xmxn for all m, n ≥ 0.

Invertible elements

An element x is called invertible if there exists an element y such that xy = e and yx = e. The element y is called the inverse of x. Inverses, if they exist, are unique: If y and z are inverses of x, then by associativity y = ey = (zx)y = z(xy) = ze = z. [8]

If x is invertible, say with inverse y, then one can define negative powers of x by setting xn = yn for each n ≥ 1; this makes the equation xm+n = xmxn hold for all m, nZ.

The set of all invertible elements in a monoid, together with the operation •, forms a group.

Grothendieck group construction

Not every monoid sits inside a group. For instance, it is perfectly possible to have a monoid in which two elements a and b exist such that ab = a holds even though b is not the identity element. Such a monoid cannot be embedded in a group, because in the group we could multiply both sides with the inverse of a and would get that b = e, which isn't true. A monoid (M, •) has the cancellation property (or is cancellative) if for all a, b and c in M, ab = ac always implies b = c and ba = ca always implies b = c. A commutative monoid with the cancellation property can always be embedded in a group via the Grothendieck construction. That is how the additive group of the integers (a group with operation +) is constructed from the additive monoid of natural numbers (a commutative monoid with operation + and cancellation property). However, a non-commutative cancellative monoid need not be embeddable in a group.

If a monoid has the cancellation property and is finite, then it is in fact a group. Proof: Fix an element x in the monoid. Since the monoid is finite, xn = xm for some m > n > 0. But then, by cancellation we have that xmn = e where e is the identity. Therefore, xxmn − 1 = e, so x has an inverse.

The right- and left-cancellative elements of a monoid each in turn form a submonoid (i.e. obviously include the identity and not so obviously are closed under the operation). This means that the cancellative elements of any commutative monoid can be extended to a group.

It turns out that requiring the cancellative property in a monoid is not required to perform the Grothendieck construction – commutativity is sufficient. However, if the original monoid has an absorbing element then its Grothendieck group is the trivial group. Hence the homomorphism is, in general, not injective.

Types of monoids

An inverse monoid is a monoid where for every a in M, there exists a unique a−1 in M such that a = aa−1a and a−1 = a−1aa−1. If an inverse monoid is cancellative, then it is a group.

In the opposite direction, a zerosumfree monoid is an additively written monoid in which a + b = 0 implies that a = 0 and b = 0: [9] equivalently, that no element other than zero has an additive inverse.

Acts and operator monoids

Let M be a monoid, with the binary operation denoted by • and the identity element denoted by e. Then a (left) M-act (or left act over M) is a set X together with an operation  : M × XX which is compatible with the monoid structure as follows:

This is the analogue in monoid theory of a (left) group action. Right M-acts are defined in a similar way. A monoid with an act is also known as an operator monoid . Important examples include transition systems of semiautomata. A transformation semigroup can be made into an operator monoid by adjoining the identity transformation.

Monoid homomorphisms

Example monoid homomorphism x - 2 from (N, +, 0) to (N, x, 1). It is injective, but not surjective. Exponentiation as monoid homomorphism svg.svg
Example monoid homomorphism x ↦ 2 from (N, +, 0) to (N, ×, 1). It is injective, but not surjective.

A homomorphism between two monoids (M, ∗) and (N, •) is a function f : MN such that

where eM and eN are the identities on M and N respectively. Monoid homomorphisms are sometimes simply called monoid morphisms.

Not every semigroup homomorphism between monoids is a monoid homomorphism, since it may not map the identity to the identity of the target monoid, even though the identity is the identity of the image of homomorphism. [10] For example, consider , the set of residue classes modulo equipped with multiplication. In particular, the class of is the identity. Function given by is a semigroup homomorphism as in . However, , so a monoid homomorphism is a semigroup homomorphism between monoids that maps the identity of the first monoid to the identity of the second monoid and the latter condition cannot be omitted.

In contrast, a semigroup homomorphism between groups is always a group homomorphism, as it necessarily preserves the identity (because, in a group, the identity is the only element such that xx = x).

A bijective monoid homomorphism is called a monoid isomorphism. Two monoids are said to be isomorphic if there is a monoid isomorphism between them.

Equational presentation

Monoids may be given a presentation, much in the same way that groups can be specified by means of a group presentation. One does this by specifying a set of generators Σ, and a set of relations on the free monoid Σ. One does this by extending (finite) binary relations on Σ to monoid congruences, and then constructing the quotient monoid, as above.

Given a binary relation R ⊂ Σ × Σ, one defines its symmetric closure as RR−1. This can be extended to a symmetric relation E ⊂ Σ × Σ by defining x ~Ey if and only if x = sut and y = svt for some strings u, v, s, t ∈ Σ with (u,v) ∈ RR−1. Finally, one takes the reflexive and transitive closure of E, which is then a monoid congruence.

In the typical situation, the relation R is simply given as a set of equations, so that . Thus, for example,

is the equational presentation for the bicyclic monoid, and

is the plactic monoid of degree 2 (it has infinite order). Elements of this plactic monoid may be written as for integers i, j, k, as the relations show that ba commutes with both a and b.

Relation to category theory

Group-like structures
Totality α Associativity Identity Invertibility Commutativity
Semigroupoid UnneededRequiredUnneededUnneededUnneeded
Small Category UnneededRequiredRequiredUnneededUnneeded
Groupoid UnneededRequiredRequiredRequiredUnneeded
Magma RequiredUnneededUnneededUnneededUnneeded
Quasigroup RequiredUnneededUnneededRequiredUnneeded
Unital Magma RequiredUnneededRequiredUnneededUnneeded
Loop RequiredUnneededRequiredRequiredUnneeded
Semigroup RequiredRequiredUnneededUnneededUnneeded
Inverse Semigroup RequiredRequiredUnneededRequiredUnneeded
Monoid RequiredRequiredRequiredUnneededUnneeded
Commutative monoid RequiredRequiredRequiredUnneededRequired
Group RequiredRequiredRequiredRequiredUnneeded
Abelian group RequiredRequiredRequiredRequiredRequired
Closure, which is used in many sources, is an equivalent axiom to totality, though defined differently.

Monoids can be viewed as a special class of categories. Indeed, the axioms required of a monoid operation are exactly those required of morphism composition when restricted to the set of all morphisms whose source and target is a given object. [11] That is,

A monoid is, essentially, the same thing as a category with a single object.

More precisely, given a monoid (M, •), one can construct a small category with only one object and whose morphisms are the elements of M. The composition of morphisms is given by the monoid operation •.

Likewise, monoid homomorphisms are just functors between single object categories. [11] So this construction gives an equivalence between the category of (small) monoids Mon and a full subcategory of the category of (small) categories Cat. Similarly, the category of groups is equivalent to another full subcategory of Cat.

In this sense, category theory can be thought of as an extension of the concept of a monoid. Many definitions and theorems about monoids can be generalised to small categories with more than one object. For example, a quotient of a category with one object is just a quotient monoid.

Monoids, just like other algebraic structures, also form their own category, Mon, whose objects are monoids and whose morphisms are monoid homomorphisms. [11]

There is also a notion of monoid object which is an abstract definition of what is a monoid in a category. A monoid object in Set is just a monoid.

Monoids in computer science

In computer science, many abstract data types can be endowed with a monoid structure. In a common pattern, a sequence of elements of a monoid is "folded" or "accumulated" to produce a final value. For instance, many iterative algorithms need to update some kind of "running total" at each iteration; this pattern may be elegantly expressed by a monoid operation. Alternatively, the associativity of monoid operations ensures that the operation can be parallelized by employing a prefix sum or similar algorithm, in order to utilize multiple cores or processors efficiently.

Given a sequence of values of type M with identity element and associative operation , the fold operation is defined as follows:

In addition, any data structure can be 'folded' in a similar way, given a serialization of its elements. For instance, the result of "folding" a binary tree might differ depending on pre-order vs. post-order tree traversal.


An application of monoids in computer science is so-called MapReduce programming model (see Encoding Map-Reduce As A Monoid With Left Folding). MapReduce, in computing, consists of two or three operations. Given a dataset, "Map" consists of mapping arbitrary data to elements of a specific monoid. "Reduce" consists of folding those elements, so that in the end we produce just one element.

For example, if we have a multiset, in a program it is represented as a map from elements to their numbers. Elements are called keys in this case. The number of distinct keys may be too big, and in this case the multiset is being sharded. To finalize reduction properly, the "Shuffling" stage regroups the data among the nodes. If we do not need this step, the whole Map/Reduce consists of mapping and reducing; both operation are parallelizable, the former due to its element-wise nature, the latter due to associativity of the monoid.

Complete monoids

A complete monoid is a commutative monoid equipped with an infinitary sum operation for any index set I such that: [12] [13] [14] [15]


A continuous monoid is an ordered commutative monoid in which every directed set has a least upper bound compatible with the monoid operation:

These two concepts are closely related: a continuous monoid is a complete monoid in which the infinitary sum may be defined as

where the supremum on the right runs over all finite subsets E of I and each sum on the right is a finite sum in the monoid. [15]

See also


  1. If both e1 and e2 satisfy the above equations, then e1 = e1e2 = e2.
  2. Jacobson 2009.
  3. Some authors omit the requirement that a submonoid must contain the identity element from its definition, requiring only that it have an identity element, which can be distinct from that of M.
  4. Gondran, Michel; Minoux, Michel (2008). Graphs, Dioids and Semirings: New Models and Algorithms. Operations Research/Computer Science Interfaces Series. 41. Dordrecht: Springer-Verlag. p. 13. ISBN   978-0-387-75450-5. Zbl   1201.16038.
  5. Rhodes, John; Steinberg, Benjamin (2009), The q-theory of Finite Semigroups: A New Approach, Springer Monographs in Mathematics, 71, Springer, p. 22, ISBN   9780387097817 .
  6. Jacobson 2009, p. 29, examples 1, 2, 4 & 5.
  7. Jacobson 2009, p. 35.
  8. Jacobson, I.5. p. 22
  9. Wehrung, Friedrich (1996). "Tensor products of structures with interpolation". Pacific Journal of Mathematics. 176 (1): 267–285. Zbl   0865.06010.
  10. f(x)*f(eM) = f(x*eM) = f(x) for each x in M, when f is a semigroup homomorphism and eM is the identity of its domain monoid M.
  11. 1 2 3 Awodey, Steve (2006). Category Theory. Oxford Logic Guides. 49. Oxford University Press. p. 10. ISBN   0-19-856861-4. Zbl   1100.18001.
  12. Droste, M., & Kuich, W. (2009). Semirings and Formal Power Series. Handbook of Weighted Automata, 3–28. doi : 10.1007/978-3-642-01492-5_1, pp. 7–10
  13. Hebisch, Udo (1992). "Eine algebraische Theorie unendlicher Summen mit Anwendungen auf Halbgruppen und Halbringe". Bayreuther Mathematische Schriften (in German). 40: 21–152. Zbl   0747.08005.
  14. Kuich, Werner (1990). "ω-continuous semirings, algebraic systems and pushdown automata". In Paterson, Michael S. (ed.). Automata, Languages and Programming: 17th International Colloquium, Warwick University, England, July 16-20, 1990, Proceedings. Lecture Notes in Computer Science. 443. Springer-Verlag. pp.  103–110. ISBN   3-540-52826-1.
  15. 1 2 Kuich, Werner (2011). "Algebraic systems and pushdown automata". In Kuich, Werner (ed.). Algebraic foundations in computer science. Essays dedicated to Symeon Bozapalidis on the occasion of his retirement. Lecture Notes in Computer Science. 7020. Berlin: Springer-Verlag. pp. 228–256. ISBN   978-3-642-24896-2. Zbl   1251.68135.

Related Research Articles

Associative algebra Algebraic structure with (a + b)(c + d) = ac + ad + bc + bd and (a)(bc) = (ab)(c)

In mathematics, an associative algebra is an algebraic structure with compatible operations of addition, multiplication, and a scalar multiplication by elements in some field. The addition and multiplication operations together give A the structure of a ring; the addition and scalar multiplication operations together give A the structure of a vector space over K. In this article we will also use the term K-algebra to mean an associative algebra over the field K. A standard first example of a K-algebra is a ring of square matrices over a field K, with the usual matrix multiplication.

In algebra, a homomorphism is a structure-preserving map between two algebraic structures of the same type. The word homomorphism comes from the Ancient Greek language: ὁμός meaning "same" and μορφή meaning "form" or "shape". However, the word was apparently introduced to mathematics due to a (mis)translation of German ähnlich meaning "similar" to ὁμός meaning "same". The term "homomorphism" appeared as early as 1892, when it was attributed to the German mathematician Felix Klein (1849–1925).


In mathematics, a semigroup is an algebraic structure consisting of a set together with an associative binary operation.

In mathematics, in particular abstract algebra, a graded ring is a ring such that the underlying additive group is a direct sum of abelian groups such that . The index set is usually the set of nonnegative integers or the set of integers, but can be any monoid. The direct sum decomposition is usually referred to as gradation or grading.

In mathematics, an algebraic structure consists of a nonempty set A, a collection of operations on A of finite arity, and a finite set of identities, known as axioms, that these operations must satisfy.

Ring theory is the branch of mathematics in which rings are studied: that is, structures supporting both an addition and a multiplication operation. This is a glossary of some terms of the subject.

In mathematics, a Hopf algebra, named after Heinz Hopf, is a structure that is simultaneously a algebra and a coalgebra, with these structures' compatibility making it a bialgebra, and that moreover is equipped with an antiautomorphism satisfying a certain property. The representation theory of a Hopf algebra is particularly nice, since the existence of compatible comultiplication, counit, and antipode allows for the construction of tensor products of representations, trivial representations, and dual representations.

Semiring algebraic ring that need not have additive negative elements

In abstract algebra, a semiring is an algebraic structure similar to a ring, but without the requirement that each element must have an additive inverse.

A lattice is an abstract structure studied in the mathematical subdisciplines of order theory and abstract algebra. It consists of a partially ordered set in which every two elements have a unique supremum and a unique infimum. An example is given by the natural numbers, partially ordered by divisibility, for which the unique supremum is the least common multiple and the unique infimum is the greatest common divisor.

In abstract algebra, the free monoid on a set is the monoid whose elements are all the finite sequences of zero or more elements from that set, with string concatenation as the monoid operation and with the unique sequence of zero elements, often called the empty string and denoted by ε or λ, as the identity element. The free monoid on a set A is usually denoted A. The free semigroup on A is the subsemigroup of A containing all elements except the empty string. It is usually denoted A+.

In mathematics, a join-semilattice is a partially ordered set that has a join for any nonempty finite subset. Dually, a meet-semilattice is a partially ordered set which has a meet for any nonempty finite subset. Every join-semilattice is a meet-semilattice in the inverse order and vice versa.

In universal algebra, a variety of algebras or equational class is the class of all algebraic structures of a given signature satisfying a given set of identities. For example, the groups form a variety of algebras, as do the abelian groups, the rings, the monoids etc. According to Birkhoff's theorem, a class of algebraic structures of the same signature is a variety if and only if it is closed under the taking of homomorphic images, subalgebras and (direct) products. In the context of category theory, a variety of algebras, together with its homomorphisms, forms a category; these are usually called finitary algebraic categories.

In algebra and theoretical computer science, an action or act of a semigroup on a set is a rule which associates to each element of the semigroup a transformation of the set in such a way that the product of two elements of the semigroup is associated with the composite of the two corresponding transformations. The terminology conveys the idea that the elements of the semigroup are acting as transformations of the set. From an algebraic perspective, a semigroup action is a generalization of the notion of a group action in group theory. From the computer science point of view, semigroup actions are closely related to automata: the set models the state of the automaton and the action models transformations of that state in response to inputs.

In mathematics, the Grothendieck group construction constructs an abelian group from a commutative monoid M in the most universal way, in the sense that any abelian group containing a homomorphic image of M will also contain a homomorphic image of the Grothendieck group of M. The Grothendieck group construction takes its name from a specific case in category theory, introduced by Alexander Grothendieck in his proof of the Grothendieck–Riemann–Roch theorem, which resulted in the development of K-theory. This specific case is the monoid of isomorphism classes of objects of an abelian category, with the direct sum as its operation.


In mathematics, specifically in category theory, F-algebras generalize the notion of algebraic structure. Rewriting the algebraic laws in terms of morphisms eliminates all references to quantified elements from the axioms, and these algebraic laws may then be glued together in terms of a single functor F, the signature.

In mathematics, an operad is concerned with prototypical algebras that model properties such as commutativity or anticommutativity as well as various amounts of associativity. Operads generalize the various associativity properties already observed in algebras and coalgebras such as Lie algebras or Poisson algebras by modeling computational trees within the algebra. Algebras are to operads as group representations are to groups. An operad can be seen as a set of operations, each one having a fixed finite number of inputs (arguments) and one output, which can be composed one with others. They form a category-theoretic analog of universal algebra.

In mathematics, and more specifically in abstract algebra, a rng is an algebraic structure satisfying the same properties as a ring, but without assuming the existence of a multiplicative identity. The term "rng" is meant to suggest that it is a "ring" without "i", that is, without the requirement for an "identity element".

In mathematics, a refinement monoid is a commutative monoid M such that for any elements a0, a1, b0, b1 of M such that a0+a1=b0+b1, there are elements c00, c01, c10, c11 of M such that a0=c00+c01, a1=c10+c11, b0=c00+c10, and b1=c01+c11.

In mathematics and theoretical computer science, a semiautomaton is a deterministic finite automaton having inputs but no output. It consists of a set Q of states, a set Σ called the input alphabet, and a function T: Q × Σ → Q called the transition function.

In mathematics, the field with one element is a suggestive name for an object that should behave similarly to a finite field with a single element, if such a field could exist. This object is denoted F1, or, in a French–English pun, Fun. The name "field with one element" and the notation F1 are only suggestive, as there is no field with one element in classical abstract algebra. Instead, F1 refers to the idea that there should be a way to replace sets and operations, the traditional building blocks for abstract algebra, with other, more flexible objects. Many theories of F1 have been proposed, but it is not clear which, if any, of them give F1 all the desired properties. While there is still no field with a single element in these theories, there is a field-like object whose characteristic is one.