Monoid

Source: Wikipedia, the free encyclopedia.
Algebraic structures between magmas and groups. For example, monoids are semigroups with identity.

In

associative binary operation and an identity element. For example, the nonnegative integers
with addition form a monoid, the identity element being 0.

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

The functions from a set into itself form a monoid with respect to function composition. More generally, in

object
to itself form a monoid, and, conversely, a monoid may be viewed as a category with a single object.

In

process calculi and concurrent computing
.

In

).

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

Definition

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

Associativity
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 equalities 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.[a] 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

Submonoids

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.[1][b] Symbolically, N is a submonoid of M if eNM, and xyN whenever x, yN. 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

nonnegative integers
.

Generators

A subset S of M is said to generate M 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

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

concurrent computation
.

Examples

or, equivalently

Multiplication of elements in f is then given by function composition.

When k = 0 then the function f is a permutation of {0, 1, 2, ..., n−1}, and gives the unique cyclic group of order n.

Properties

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 (a1, ..., an) 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.[6]

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

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 multiplying both sides with the inverse of a would get that b = e, which is not true.

A monoid (M, •) has the cancellation property (or is cancellative) if for all a, b and c in M, the equality ab = ac implies b = c, and the equality ba = ca implies b = c.

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.[c]

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 ab = ac, then b and c have the same image in the Grothendieck group, even if bc. In particular, if the monoid has an absorbing element, then its Grothendieck group is the trivial group.

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:[7] 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:

  • for all x in X: ex = x;
  • for all a, b in M and x in X: a ⋅ (bx) = (ab) ⋅ x.

This is the analogue in monoid theory of a (left)

semiautomata. A transformation semigroup
can be made into an operator monoid by adjoining the identity transformation.

Monoid homomorphisms

Example monoid homomorphism x ↦ 2x 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

  • f(xy) = f(x) • f(y) for all x, y in M
  • f(eM) = eN,

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

Not every

residue classes
modulo n equipped with multiplication. In particular, [1]n is the identity element. Function f : [Z]3 → [Z]6 given by [k]3 ↦ [3k]6 is a semigroup homomorphism, since [3k ⋅ 3l]6 = [9kl]6 = [3kl]6. However, f([1]3) = [3]6 ≠ [1]6, 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 the target group of the homomorphism, the identity element is the only element x 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 ~E y 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 R = {u1 = v1, ..., un = vn}. 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 Divisibilityβ
Commutativity
Partial magma Unneeded Unneeded Unneeded Unneeded Unneeded
Semigroupoid Unneeded Required Unneeded Unneeded Unneeded
Small category Unneeded Required Required Unneeded Unneeded
Groupoid Unneeded Required Required Required Unneeded
Magma Required Unneeded Unneeded Unneeded Unneeded
Quasigroup Required Unneeded Unneeded Required Unneeded
Unital magma
Required Unneeded Required Unneeded Unneeded
Loop
Required Unneeded Required Required Unneeded
Semigroup Required Required Unneeded Unneeded Unneeded
Associative quasigroup Required Required Unneeded Required Unneeded
Monoid Required Required Required Unneeded Unneeded
Commutative monoid
Required Required Required Unneeded Required
Group Required Required Required Required Unneeded
Abelian group Required Required Required Required Required
The closure axiom, used by many sources and defined differently, is equivalent.
Here, divisibility refers specifically to the quasigroup axioms.

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.[8] 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

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.[8]

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

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.

MapReduce

An application of monoids in computer science is the 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 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 I such that[9][10][11][12]

and

.

An ordered commutative monoid is a commutative monoid M together with a

partial ordering
such that a ≥ 0 for every aM, and ab implies a + cb + c for all a, b, cM.

A continuous monoid is an ordered commutative monoid (M, ≤) in which every

least upper bound
, and these least upper bounds are compatible with the monoid operation:

for every aM and directed subset S of M.

If (M, ≤) is a continuous monoid, then for any index set I and collection of elements (ai)iI, one can define

and M together with this infinitary sum operation is a complete monoid.[12]

See also

Notes

  1. ^ If both e1 and e2 satisfy the above equations, then e1 = e1e2 = e2.
  2. ^ 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.
  3. ^ 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.
  4. ^ f(x) ∗ f(eM) = f(xeM) = f(x) for each x in M, when f is a semigroup homomorphism and eM is the identity of its domain monoid M.

Citations

References

External links

This page is based on the copyrighted Wikipedia article: Monoid. Articles is available under the CC BY-SA 3.0 license; additional terms may apply.Privacy Policy