In mathematics, a semigroup is a nonempty set together with an associative binary operation. A special class of semigroups is a class of semigroups satisfying additional properties or conditions. Thus the class of commutative semigroups consists of all those semigroups in which the binary operation satisfies the commutativity property that ab = ba for all elements a and b in the semigroup. The class of finite semigroups consists of those semigroups for which the underlying set has finite cardinality. Members of the class of Brandt semigroups are required to satisfy not just one condition but a set of additional properties. A large variety of special classes of semigroups have been defined though not all of them have been studied equally intensively.
In the algebraic theory of semigroups, in constructing special classes, attention is focused only on those properties, restrictions and conditions which can be expressed in terms of the binary operations in the semigroups and occasionally on the cardinality and similar properties of subsets of the underlying set. The underlying sets are not assumed to carry any other mathematical structures like order or topology.
As in any algebraic theory, one of the main problems of the theory of semigroups is the classification of all semigroups and a complete description of their structure. In the case of semigroups, since the binary operation is required to satisfy only the associativity property the problem of classification is considered extremely difficult. Descriptions of structures have been obtained for certain special classes of semigroups. For example, the structure of the sets of idempotents of regular semigroups is completely known. Structure descriptions are presented in terms of better known types of semigroups. The best known type of semigroup is the group.