Semigroup
A semigroup is an algebraic structure consisting of a set together with an associative binary operation. It is the minimal structure that captures the essence of associativity: every group is a semigroup, but a semigroup need not have an identity element or invertible elements. The natural numbers under addition, finite strings under concatenation, and the states of a finite-state machine under sequential composition are all semigroups.
Semigroups are more fundamental than groups in many applications because they require fewer axioms and therefore describe a broader class of systems. The study of semigroups — semigroup theory — has applications in automata theory, formal language theory, and the analysis of dynamical systems where the operation of time evolution is associative but not necessarily reversible. A semigroup with an identity element is called a monoid; a semigroup with cancellation is called a cancellative semigroup. The classification of finite semigroups is a deep and active area of research with connections to group theory and combinatorics.