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

Algebraic structures between magmas and groups. For example, monoids are semigroups with identity.

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.

Share this article:

This article uses material from the Wikipedia article Monoid, and is written by contributors. Text is available under a CC BY-SA 4.0 International License; additional terms may apply. Images, videos and audio are available under their respective licenses.