A monoid is a non-empty set together with a binary operation on , denoted as "", such that the following two requirements are satisfied

Associativity For all , one has

Identity element There exists an identity element in such that, for every in , one has