
In
abstract algebra
In mathematics, more specifically algebra, abstract algebra or modern algebra is the study of algebraic structures, which are set (mathematics), sets with specific operation (mathematics), operations acting on their elements. Algebraic structur ...
, a monoid is a set equipped with an
associative
In mathematics, the associative property is a property of some binary operations that rearranging the parentheses in an expression will not change the result. In propositional logic, associativity is a valid rule of replacement for express ...
binary operation
In mathematics, a binary operation or dyadic operation is a rule for combining two elements (called operands) to produce another element. More formally, a binary operation is an operation of arity two.
More specifically, a binary operation ...
and an
identity element
In mathematics, an identity element or neutral element of a binary operation is an element that leaves unchanged every element when the operation is applied. For example, 0 is an identity element of the addition of real numbers. This concept is use ...
. For example, the nonnegative
integer
An integer is the number zero (0), a positive natural number (1, 2, 3, ...), or the negation of a positive natural number (−1, −2, −3, ...). The negations or additive inverses of the positive natural numbers are referred to as negative in ...
s with addition form a monoid, the identity element being .
Monoids are
semigroup
In mathematics, a semigroup is an algebraic structure consisting of a set together with an associative internal binary operation on it.
The binary operation of a semigroup is most often denoted multiplicatively (just notation, not necessarily th ...
s with identity. Such
algebraic structure
In mathematics, an algebraic structure or algebraic system consists of a nonempty set ''A'' (called the underlying set, carrier set or domain), a collection of operations on ''A'' (typically binary operations such as addition and multiplicatio ...
s occur in several branches of mathematics.
The functions from a set into itself form a monoid with respect to function composition. More generally, in
category theory
Category theory is a general theory of mathematical structures and their relations. It was introduced by Samuel Eilenberg and Saunders Mac Lane in the middle of the 20th century in their foundational work on algebraic topology. Category theory ...
, the morphisms of an
object
Object may refer to:
General meanings
* Object (philosophy), a thing, being, or concept
** Object (abstract), an object which does not exist at any particular time or place
** Physical object, an identifiable collection of matter
* Goal, an a ...
to itself form a monoid, and, conversely, a monoid may be viewed as a category with a single object.
In
computer science
Computer science is the study of computation, information, and automation. Computer science spans Theoretical computer science, theoretical disciplines (such as algorithms, theory of computation, and information theory) to Applied science, ...
and
computer programming
Computer programming or coding is the composition of sequences of instructions, called computer program, programs, that computers can follow to perform tasks. It involves designing and implementing algorithms, step-by-step specifications of proc ...
, the set of
strings built from a given set of
characters is a
free monoid
In abstract algebra, the free monoid on a set is the monoid whose elements are all the finite sequences (or strings) of zero or more elements from that set, with string concatenation as the monoid operation and with the unique sequence of zero ...
.
Transition monoid 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'' c ...
s and
syntactic monoid
In mathematics and computer science, the syntactic monoid M(L) of a formal language L is the minimal monoid that recognizes the language L. By the Myhill–Nerode theorem, the syntactic monoid is unique up to unique isomorphism.
Syntactic quot ...
s are used in describing
finite-state machine
A finite-state machine (FSM) or finite-state automaton (FSA, plural: ''automata''), finite automaton, or simply a state machine, is a mathematical model of computation. It is an abstract machine that can be in exactly one of a finite number o ...
s.
Trace monoid
In computer science, a trace is an equivalence class of strings, wherein certain letters in the string are allowed to commute, but others are not. Traces generalize the concept of strings by relaxing the requirement for all the letters to have a d ...
s and
history monoids provide a foundation for
process calculi and
concurrent computing
Concurrent computing is a form of computing in which several computations are executed '' concurrently''—during overlapping time periods—instead of ''sequentially—''with one completing before the next starts.
This is a property of a syst ...
.
In
theoretical computer science
Theoretical computer science is a subfield of computer science and mathematics that focuses on the Abstraction, abstract and mathematical foundations of computation.
It is difficult to circumscribe the theoretical areas precisely. The Associati ...
, the study of monoids is fundamental for
automata theory
Automata theory is the study of abstract machines and automata, as well as the computational problems that can be solved using them. It is a theory in theoretical computer science with close connections to cognitive science and mathematical l ...
(
Krohn–Rhodes theory
In mathematics and computer science, the Krohn–Rhodes theory (or algebraic automata theory) is an approach to the study of finite semigroups and automata that seeks to decompose them in terms of elementary components. These components correspon ...
), and
formal language theory
In logic, mathematics, computer science, and linguistics, a formal language is a set of string (computer science), strings whose symbols are taken from a set called "#Definition, alphabet".
The alphabet of a formal language consists of symbol ...
(
star height problem).
See
semigroup
In mathematics, a semigroup is an algebraic structure consisting of a set together with an associative internal binary operation on it.
The binary operation of a semigroup is most often denoted multiplicatively (just notation, not necessarily th ...
for the history of the subject, and some other general properties of monoids.
Definition
A
set
Set, The Set, SET or SETS may refer to:
Science, technology, and mathematics Mathematics
*Set (mathematics), a collection of elements
*Category of sets, the category whose objects and morphisms are sets and total functions, respectively
Electro ...
equipped with a
binary operation
In mathematics, a binary operation or dyadic operation is a rule for combining two elements (called operands) to produce another element. More formally, a binary operation is an operation of arity two.
More specifically, a binary operation ...
, which we will denote , is a monoid if it satisfies the following two axioms:
; Associativity: For all , and in , the equation holds.
; Identity element: There exists an element in such that for every element in , the equalities and hold.
In other words, a monoid is a
semigroup
In mathematics, a semigroup is an algebraic structure consisting of a set together with an associative internal binary operation on it.
The binary operation of a semigroup is most often denoted multiplicatively (just notation, not necessarily th ...
with an
identity element
In mathematics, an identity element or neutral element of a binary operation is an element that leaves unchanged every element when the operation is applied. For example, 0 is an identity element of the addition of real numbers. This concept is use ...
. It can also be thought of as a
magma
Magma () is the molten or semi-molten natural material from which all igneous rocks are formed. Magma (sometimes colloquially but incorrectly referred to as ''lava'') is found beneath the surface of the Earth, and evidence of magmatism has also ...
with associativity and identity. The identity element of a monoid is unique. For this reason the identity is regarded as a
constant, i. e. -ary (or nullary) operation. The monoid therefore is characterized by specification of the
triple .
Depending on the context, the symbol for the binary operation may be omitted, so that the operation is denoted by
juxtaposition
Juxtaposition is an act or instance of placing two opposing elements close together or side by side. This is often done in order to Comparison, compare/contrast the two, to show similarities or differences, etc.
Speech
Juxtaposition in literary ...
; for example, the monoid axioms may be written and . 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
Submonoids
A submonoid of a monoid is a
subset
In mathematics, a Set (mathematics), set ''A'' is a subset of a set ''B'' if all Element (mathematics), elements of ''A'' are also elements of ''B''; ''B'' is then a superset of ''A''. It is possible for ''A'' and ''B'' to be equal; if they a ...
of that is closed under the monoid operation and contains the identity element of . Symbolically, is a submonoid of if , and whenever . In this case, is a monoid under the binary operation inherited from .
On the other hand, if is a subset of a monoid that is
closed under the monoid operation, and is a monoid for this inherited operation, then is not always a submonoid, since the identity elements may differ. For example, the
singleton set
In mathematics, a singleton (also known as a unit set or one-point set) is a set with exactly one element. For example, the set \ is a singleton whose single element is 0.
Properties
Within the framework of Zermelo–Fraenkel set theory, the a ...
is closed under multiplication, and is not a submonoid of the (multiplicative) monoid of the
nonnegative integer
In mathematics, the natural numbers are the numbers 0, 1, 2, 3, and so on, possibly excluding 0. Some start counting with 0, defining the natural numbers as the non-negative integers , while others start with 1, defining them as the positiv ...
s.
Generators
A subset of is said to ''generate'' if the smallest submonoid of containing is . If there is a finite set that generates , then is said to be a finitely generated monoid.
Commutative monoid
A monoid whose operation is
commutative
In mathematics, a binary operation is commutative if changing the order of the operands does not change the result. It is a fundamental property of many binary operations, and many mathematical proofs depend on it. Perhaps most familiar as a pr ...
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''
preorder
In mathematics, especially in order theory, a preorder or quasiorder is a binary relation that is reflexive relation, reflexive and Transitive relation, transitive. The name is meant to suggest that preorders are ''almost'' partial orders, ...
ing , defined by if there exists such that . An ''order-unit'' of a commutative monoid is an element of such that for any element of , there exists in the set generated by such that . This is often used in case is the
positive cone of a
partially ordered abelian group
In mathematics, an abelian group, also called a commutative group, is a group in which the result of applying the group operation to two group elements does not depend on the order in which they are written. That is, the group operation is commu ...
, in which case we say that is an order-unit of .
Partially commutative monoid
A monoid for which the operation is commutative for some, but not all elements is a
trace monoid
In computer science, a trace is an equivalence class of strings, wherein certain letters in the string are allowed to commute, but others are not. Traces generalize the concept of strings by relaxing the requirement for all the letters to have a d ...
; trace monoids commonly occur in the theory of
concurrent computation.
Examples
* Out of the 16 possible
binary Boolean operators, four have a two-sided identity that is also commutative and associative. These four each make the set a commutative monoid. Under the standard definitions,
AND and
XNOR have the identity while
XOR and
OR have the identity . The monoids from AND and OR are also
idempotent
Idempotence (, ) is the property of certain operations in mathematics and computer science whereby they can be applied multiple times without changing the result beyond the initial application. The concept of idempotence arises in a number of pl ...
while those from XOR and XNOR are not.
* The set of
natural number
In mathematics, the natural numbers are the numbers 0, 1, 2, 3, and so on, possibly excluding 0. Some start counting with 0, defining the natural numbers as the non-negative integers , while others start with 1, defining them as the positive in ...
s is a commutative monoid under addition (identity element
) or multiplication (identity element
). A submonoid of under addition is called a
numerical monoid.
* The set of
positive integer
In mathematics, the natural numbers are the numbers 0, 1, 2, 3, and so on, possibly excluding 0. Some start counting with 0, defining the natural numbers as the non-negative integers , while others start with 1, defining them as the positiv ...
s is a commutative monoid under multiplication (identity element ).
* Given a set , the set of subsets of is a commutative monoid under intersection (identity element is itself).
* Given a set , the set of subsets of is a commutative monoid under union (identity element is the
empty set
In mathematics, the empty set or void set is the unique Set (mathematics), set having no Element (mathematics), elements; its size or cardinality (count of elements in a set) is 0, zero. Some axiomatic set theories ensure that the empty set exi ...
).
* Generalizing the previous example, every bounded
semilattice
In mathematics, a join-semilattice (or upper semilattice) is a partially ordered set that has a join (a least upper bound) for any nonempty finite subset. Dually, a meet-semilattice (or lower semilattice) is a partially ordered set which has ...
is an
idempotent
Idempotence (, ) is the property of certain operations in mathematics and computer science whereby they can be applied multiple times without changing the result beyond the initial application. The concept of idempotence arises in a number of pl ...
commutative monoid.
** In particular, any bounded
lattice can be endowed with both a
meet- and a
join- monoid structure. The identity elements are the lattice's top and its bottom, respectively. Being lattices,
Heyting algebra
In mathematics, a Heyting algebra (also known as pseudo-Boolean algebra) is a bounded lattice (with join and meet operations written ∨ and ∧ and with least element 0 and greatest element 1) equipped with a binary operation ''a'' → ''b'' call ...
s and
Boolean algebra
In mathematics and mathematical logic, Boolean algebra is a branch of algebra. It differs from elementary algebra in two ways. First, the values of the variable (mathematics), variables are the truth values ''true'' and ''false'', usually denot ...
s are endowed with these monoid structures.
* Every
singleton set
In mathematics, a singleton (also known as a unit set or one-point set) is a set with exactly one element. For example, the set \ is a singleton whose single element is 0.
Properties
Within the framework of Zermelo–Fraenkel set theory, the a ...
closed under a binary operation forms the trivial (one-element) monoid, which is also the
trivial group
In mathematics, a trivial group or zero group is a group that consists of a single element. All such groups are isomorphic, so one often speaks of the trivial group. The single element of the trivial group is the identity element and so it is usu ...
.
* Every
group is a monoid and every
abelian group
In mathematics, an abelian group, also called a commutative group, is a group in which the result of applying the group operation to two group elements does not depend on the order in which they are written. That is, the group operation is commu ...
a commutative monoid.
* Any
semigroup
In mathematics, a semigroup is an algebraic structure consisting of a set together with an associative internal binary operation on it.
The binary operation of a semigroup is most often denoted multiplicatively (just notation, not necessarily th ...
may be turned into a monoid simply by adjoining an element not in and defining for all . This conversion of any semigroup to the monoid is done by the
free functor between the category of semigroups and the category of monoids.
** Thus, an idempotent monoid (sometimes known as ''find-first'') may be formed by adjoining an identity element to the
left zero semigroup over a set . The opposite monoid (sometimes called ''find-last'') is formed from the
right zero semigroup over .
*** Adjoin an identity to the left-zero semigroup with two elements . Then the resulting idempotent monoid models the
lexicographical order
In mathematics, the lexicographic or lexicographical order (also known as lexical order, or dictionary order) is a generalization of the alphabetical order of the dictionaries to sequences of ordered symbols or, more generally, of elements of a ...
of a sequence given the orders of its elements, with ''e'' representing equality.
* The underlying set of any
ring, with addition or multiplication as the operation. (By definition, a ring has a multiplicative identity .)
** The
integer
An integer is the number zero (0), a positive natural number (1, 2, 3, ...), or the negation of a positive natural number (−1, −2, −3, ...). The negations or additive inverses of the positive natural numbers are referred to as negative in ...
s,
rational number
In mathematics, a rational number is a number that can be expressed as the quotient or fraction of two integers, a numerator and a non-zero denominator . For example, is a rational number, as is every integer (for example,
The set of all ...
s,
real number
In mathematics, a real number is a number that can be used to measure a continuous one- dimensional quantity such as a duration or temperature. Here, ''continuous'' means that pairs of values can have arbitrarily small differences. Every re ...
s or
complex number
In mathematics, a complex number is an element of a number system that extends the real numbers with a specific element denoted , called the imaginary unit and satisfying the equation i^= -1; every complex number can be expressed in the for ...
s, with addition or multiplication as operation.
** The set of all by
matrices
Matrix (: matrices or matrixes) or MATRIX may refer to:
Science and mathematics
* Matrix (mathematics), a rectangular array of numbers, symbols or expressions
* Matrix (logic), part of a formula in prenex normal form
* Matrix (biology), the ...
over a given ring, with
matrix addition
In mathematics, matrix addition is the operation of adding two matrices by adding the corresponding entries together.
For a vector, \vec\!, adding two matrices would have the geometric effect of applying each matrix transformation separately ...
or
matrix multiplication
In mathematics, specifically in linear algebra, matrix multiplication is a binary operation that produces a matrix (mathematics), matrix from two matrices. For matrix multiplication, the number of columns in the first matrix must be equal to the n ...
as the operation.
* The set of all finite
strings over some fixed alphabet forms a monoid with
string concatenation as the operation. The
empty string
In formal language theory, the empty string, or empty word, is the unique String (computer science), string of length zero.
Formal theory
Formally, a string is a finite, ordered sequence of character (symbol), characters such as letters, digits ...
serves as the identity element. This monoid is denoted and is called the ''
free monoid
In abstract algebra, the free monoid on a set is the monoid whose elements are all the finite sequences (or strings) of zero or more elements from that set, with string concatenation as the monoid operation and with the unique sequence of zero ...
'' over . It is not commutative if has at least two elements.
* Given any monoid , the ''opposite monoid'' has the same carrier set and identity element as , and its operation is defined by . Any commutative monoid is the opposite monoid of itself.
* Given two sets and endowed with monoid structure (or, in general, any finite number of monoids, ), their
Cartesian product
In mathematics, specifically set theory, the Cartesian product of two sets and , denoted , is the set of all ordered pairs where is an element of and is an element of . In terms of set-builder notation, that is
A\times B = \.
A table c ...
, with the binary operation and identity element defined on corresponding coordinates, called the
direct product, is also a monoid (respectively, ).
* Fix a monoid . The set of all functions from a given set to is also a monoid. The identity element is a
constant function
In mathematics, a constant function is a function whose (output) value is the same for every input value.
Basic properties
As a real-valued function of a real-valued argument, a constant function has the general form or just For example, ...
mapping any value to the identity of ; the associative operation is defined
pointwise In mathematics, the qualifier pointwise is used to indicate that a certain property is defined by considering each value f(x) of some Function (mathematics), function f. An important class of pointwise concepts are the ''pointwise operations'', that ...
.
* Fix a monoid with the operation and identity element , and consider its
power set
In mathematics, the power set (or powerset) of a set is the set of all subsets of , including the empty set and itself. In axiomatic set theory (as developed, for example, in the ZFC axioms), the existence of the power set of any set is po ...
consisting of all
subset
In mathematics, a Set (mathematics), set ''A'' is a subset of a set ''B'' if all Element (mathematics), elements of ''A'' are also elements of ''B''; ''B'' is then a superset of ''A''. It is possible for ''A'' and ''B'' to be equal; if they a ...
s of . A binary operation for such subsets can be defined by . This turns into a monoid with identity element . In the same way the power set of a group is a monoid under the
product of group subsets.
* Let be a set. The set of all functions forms a monoid under
function composition
In mathematics, the composition operator \circ takes two function (mathematics), functions, f and g, and returns a new function h(x) := (g \circ f) (x) = g(f(x)). Thus, the function is function application, applied after applying to . (g \c ...
. The identity is just the
identity function
Graph of the identity function on the real numbers
In mathematics, an identity function, also called an identity relation, identity map or identity transformation, is a function that always returns the value that was used as its argument, unc ...
. It is also called the ''
full transformation monoid'' of . If is finite with elements, the monoid of functions on is finite with elements.
* Generalizing the previous example, let be a
category
Category, plural categories, may refer to:
General uses
*Classification, the general act of allocating things to classes/categories Philosophy
* Category of being
* ''Categories'' (Aristotle)
* Category (Kant)
* Categories (Peirce)
* Category ( ...
and an object of . The set of all
endomorphism
In mathematics, an endomorphism is a morphism from a mathematical object to itself. An endomorphism that is also an isomorphism is an automorphism. For example, an endomorphism of a vector space is a linear map , and an endomorphism of a g ...
s of , denoted , forms a monoid under composition of
morphism
In mathematics, a morphism is a concept of category theory that generalizes structure-preserving maps such as homomorphism between algebraic structures, functions from a set to another set, and continuous functions between topological spaces. Al ...
s. For more on the relationship between category theory and monoids see below.
* The set of
homeomorphism
In mathematics and more specifically in topology, a homeomorphism ( from Greek roots meaning "similar shape", named by Henri Poincaré), also called topological isomorphism, or bicontinuous function, is a bijective and continuous function ...
classes of
compact surfaces with the
connected sum. Its unit element is the class of the ordinary 2-sphere. Furthermore, if denotes the class of the
torus
In geometry, a torus (: tori or toruses) is a surface of revolution generated by revolving a circle in three-dimensional space one full revolution about an axis that is coplanarity, coplanar with the circle. The main types of toruses inclu ...
, and denotes the class of the projective plane, then every element of the monoid has a unique expression in the form where is a positive integer and , or . We have .
* Let be a cyclic monoid of order , that is, . Then for some . Each such gives a distinct monoid of order , and every cyclic monoid is isomorphic to one of these.
Moreover, can be considered as a function on the points given by
or, equivalently
Multiplication of elements in is then given by function composition. When then the function is a permutation of , and gives the unique
cyclic group
In abstract algebra, a cyclic group or monogenous group is a Group (mathematics), group, denoted C_n (also frequently \Z_n or Z_n, not to be confused with the commutative ring of P-adic number, -adic numbers), that is Generating set of a group, ge ...
of order .
Properties
The monoid axioms imply that the identity element is unique: If and are identity elements of a monoid, then .
Products and powers
For each nonnegative integer , one can define the product
of any sequence of elements of a monoid recursively: let and let for .
As a special case, one can define nonnegative integer powers of an element of a monoid: and for . Then for all .
Invertible elements
An element is called
invertible
In mathematics, the concept of an inverse element generalises the concepts of opposite () and reciprocal () of numbers.
Given an operation denoted here , and an identity element denoted , if , one says that is a left inverse of , and that ...
if there exists an element such that and . The element is called the inverse of . Inverses, if they exist, are unique: if and are inverses of , then by associativity .
If is invertible, say with inverse , then one can define negative powers of by setting for each ; this makes the equation hold for all .
The set of all invertible elements in a monoid, together with the operation •, forms a
group.
Grothendieck group
Not every monoid sits inside a group. For instance, it is perfectly possible to have a monoid in which two elements and exist such that holds even though is not the identity element. Such a monoid cannot be embedded in a group, because in the group multiplying both sides with the inverse of would get that , which is not true.
A monoid has the
cancellation property (or is cancellative) if for all , and in , the equality implies , and the equality implies .
A commutative monoid with the cancellation property can always be embedded in a group via the ''Grothendieck group 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.
The right- and left-cancellative elements of a monoid each in turn form a submonoid (i.e. are closed under the operation and obviously include the identity). This means that the cancellative elements of any commutative monoid can be extended to a group.
The cancellative property in a monoid is not necessary to perform the Grothendieck construction – commutativity is sufficient. However, if a commutative monoid does not have the cancellation property, the homomorphism of the monoid into its Grothendieck group is not injective. More precisely, if , then and have the same image in the Grothendieck group, even if . In particular, if the monoid has an
absorbing element
In mathematics, an absorbing element (or annihilating element) is a special type of element of a set with respect to a binary operation on that set. The result of combining an absorbing element with any element of the set is the absorbing element ...
, then its Grothendieck group is the
trivial group
In mathematics, a trivial group or zero group is a group that consists of a single element. All such groups are isomorphic, so one often speaks of the trivial group. The single element of the trivial group is the identity element and so it is usu ...
.
Types of monoids
An inverse monoid is a monoid where for every in , there exists a unique in such that and . 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 implies that and : equivalently, that no element other than zero has an additive inverse.
Acts and operator monoids
Let be a monoid, with the binary operation denoted by and the identity element denoted by . Then a (left) -act (or left act over ) is a set together with an operation which is compatible with the monoid structure as follows:
* for all in : ;
* for all , in and in : .
This is the analogue in monoid theory of a (left)
group action
In mathematics, a group action of a group G on a set S is a group homomorphism from G to some group (under function composition) of functions from S to itself. It is said that G acts on S.
Many sets of transformations form a group under ...
. Right -acts are defined in a similar way. A monoid with an act is also known as an ''
operator monoid''. Important examples include
transition system
In theoretical computer science, a transition system is a concept used in the study of computation. It is used to describe the potential behavior of discrete systems. It consists of states and transitions between states, which may be labeled wi ...
s of
semiautomata. A
transformation semigroup In algebra, a transformation semigroup (or composition semigroup) is a collection of transformations ( functions from a set to itself) that is closed under function composition. If it includes the identity function, it is a monoid, called a tra ...
can be made into an operator monoid by adjoining the identity transformation.
Monoid homomorphisms

A
homomorphism
In algebra, a homomorphism is a morphism, structure-preserving map (mathematics), map between two algebraic structures of the same type (such as two group (mathematics), groups, two ring (mathematics), rings, or two vector spaces). The word ''homo ...
between two monoids and is a function such that
* for all , in
* ,
where and are the identities on and respectively. Monoid homomorphisms are sometimes simply called monoid morphisms.
Not every
semigroup homomorphism
In mathematics, a semigroup is an algebraic structure consisting of a set together with an associative internal binary operation on it.
The binary operation of a semigroup is most often denoted multiplicatively (just notation, not necessarily t ...
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 the homomorphism. For example, consider , the set of
residue class
In mathematics, modular arithmetic is a system of arithmetic operations for integers, other than the usual ones from elementary arithmetic, where numbers "wrap around" when reaching a certain value, called the modulus. The modern approach to mod ...
es modulo equipped with multiplication. In particular, is the identity element. Function given by is a semigroup homomorphism, since . 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
In mathematics, given two groups, (''G'',∗) and (''H'', ·), a group homomorphism from (''G'',∗) to (''H'', ·) is a function ''h'' : ''G'' → ''H'' such that for all ''u'' and ''v'' in ''G'' it holds that
: h(u*v) = h(u) \cdot h(v)
whe ...
, as it necessarily preserves the identity (because, in the target group of the homomorphism, the identity element is the only element such that ).
A
bijective
In mathematics, a bijection, bijective function, or one-to-one correspondence is a function between two sets such that each element of the second set (the codomain) is the image of exactly one element of the first set (the domain). Equival ...
monoid homomorphism is called a monoid
isomorphism
In mathematics, an isomorphism is a structure-preserving mapping or morphism between two structures of the same type that can be reversed by an inverse mapping. Two mathematical structures are isomorphic if an isomorphism exists between the ...
. 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
In mathematics, a presentation is one method of specifying a group. A presentation of a group ''G'' comprises a set ''S'' of generators—so that every element of the group can be written as a product of powers of some of these generators—and ...
. One does this by specifying a set of generators , and a set of relations on the
free monoid
In abstract algebra, the free monoid on a set is the monoid whose elements are all the finite sequences (or strings) of zero or more elements from that set, with string concatenation as the monoid operation and with the unique sequence of zero ...
. One does this by extending (finite)
binary relation
In mathematics, a binary relation associates some elements of one Set (mathematics), set called the ''domain'' with some elements of another set called the ''codomain''. Precisely, a binary relation over sets X and Y is a set of ordered pairs ...
s on to monoid congruences, and then constructing the quotient monoid, as above.
Given a binary relation , one defines its symmetric closure as . This can be extended to a symmetric relation by defining if and only if and for some strings with . Finally, one takes the reflexive and transitive closure of , which is then a monoid congruence.
In the typical situation, the relation is simply given as a set of equations, so that . Thus, for example,
:
is the equational presentation for the
bicyclic monoid
A bicyclic molecule () is a molecule that features two joined rings. Bicyclic structures occur widely, for example in many biologically important molecules like α-thujene and camphor. A bicyclic compound can be carbocyclic (all of the ring ...
, and
:
is the
plactic monoid of degree (it has infinite order). Elements of this plactic monoid may be written as
for integers , , , as the relations show that commutes with both and .
Relation to category theory
Monoids can be viewed as a special class of
categories. Indeed, the axioms required of a monoid operation are exactly those required of
morphism
In mathematics, a morphism is a concept of category theory that generalizes structure-preserving maps such as homomorphism between algebraic structures, functions from a set to another set, and continuous functions between topological spaces. Al ...
composition when restricted to the set of all morphisms whose source and target is a given object. That is,
: ''A monoid is, essentially, the same thing as a category with a single object.''
More precisely, given a monoid , one can construct a small category with only one object and whose morphisms are the elements of . The composition of morphisms is given by the monoid operation .
Likewise, monoid homomorphisms are just
functor
In mathematics, specifically category theory, a functor is a Map (mathematics), mapping between Category (mathematics), categories. Functors were first considered in algebraic topology, where algebraic objects (such as the fundamental group) ar ...
s between single object categories. 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
In mathematics, the category Grp (or Gp) has the class of all groups for objects and group homomorphisms for morphisms. As such, it is a concrete category. The study of this category is known as group theory.
Relation to other categories
The ...
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.
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
In computer science, an abstract data type (ADT) is a mathematical model for data types, defined by its behavior (semantics) from the point of view of a '' user'' of the data, specifically in terms of possible values, possible operations on data ...
can be endowed with a monoid structure. In a common pattern, a
sequence
In mathematics, a sequence is an enumerated collection of objects in which repetitions are allowed and order matters. Like a set, it contains members (also called ''elements'', or ''terms''). The number of elements (possibly infinite) is cal ...
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
In computer science, the prefix sum, cumulative sum, inclusive scan, or simply scan of a sequence of numbers is a second sequence of numbers , the summation, sums of Prefix (computer science), prefixes (running totals) of the input sequence:
:
:
: ...
or similar algorithm, in order to utilize multiple cores or processors efficiently.
Given a sequence of values of type with identity element and associative operation , the ''fold'' operation is defined as follows:
In addition, any
data structure
In computer science, a data structure is a data organization and storage format that is usually chosen for Efficiency, efficient Data access, access to data. More precisely, a data structure is a collection of data values, the relationships amo ...
can be 'folded' in a similar way, given a serialization of its elements. For instance, the result of "folding" a
binary tree
In computer science, a binary tree is a tree data structure in which each node has at most two children, referred to as the ''left child'' and the ''right child''. That is, it is a ''k''-ary tree with . A recursive definition using set theor ...
might differ depending on pre-order vs. post-order
tree traversal
In computer science, tree traversal (also known as tree search and walking the tree) is a form of graph traversal and refers to the process of visiting (e.g. retrieving, updating, or deleting) each node in a Tree (data structure), tree data stru ...
.
MapReduce
An application of monoids in computer science is the so-called
MapReduce
MapReduce is a programming model and an associated implementation for processing and generating big data sets with a parallel and distributed algorithm on a cluster.
A MapReduce program is composed of a ''map'' procedure, which performs filte ...
programming model (se
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 mathematics, a multiset (or bag, or mset) is a modification of the concept of a set that, unlike a set, allows for multiple instances for each of its elements. The number of instances given for each element is called the ''multiplicity'' of ...
, 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
In mathematics, a multiset (or bag, or mset) is a modification of the concept of a set that, unlike a set, allows for multiple instances for each of its elements. The number of instances given for each element is called the ''multiplicity'' of ...
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 operations 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
In mathematics, an index set is a set whose members label (or index) members of another set. For instance, if the elements of a set may be ''indexed'' or ''labeled'' by means of the elements of a set , then is an index set. The indexing consists ...
such that
and
.
An ordered commutative monoid is a commutative monoid together with a
partial ordering such that for every , and implies for all .
A continuous monoid is an ordered commutative monoid in which every
directed subset has a
least upper bound, and these least upper bounds are compatible with the monoid operation:
for every and directed subset of .
If is a continuous monoid, then for any index set and collection of elements , one can define
and together with this infinitary sum operation is a complete monoid.
See also
*
Cartesian monoid
*
Green's relations In mathematics, Green's relations are five equivalence relations that characterise the elements of a semigroup in terms of the principal ideals they generate. The relations are named for James Alexander Green, who introduced them in a paper of 1951. ...
*
Monad (functional programming)
In functional programming, monads are a way to structure computations as a sequence of steps, where each step not only produces a value but also some extra information about the computation, such as a potential failure, non-determinism, or side e ...
*
Semiring
In abstract algebra, a semiring is an algebraic structure. Semirings are a generalization of rings, dropping the requirement that each element must have an additive inverse. At the same time, semirings are a generalization of bounded distribu ...
and
Kleene algebra
*
Star height problem
*
Vedic square
*
Frobenioid In arithmetic geometry, a Frobenioid is a category with some extra structure that generalizes the theory of line bundles on models of finite extensions of global fields. Frobenioids were introduced by . The word "Frobenioid" is a portmanteau of ...
Notes
Citations
References
*
*
*
*
*
*
*
*
*
*
*
*
*
External links
*
*
* {{PlanetMath, urlname=Monoid , title=Monoid , id=389
Algebraic structures
Category theory
Semigroup theory