Definition: Monoid A monoid (M,∘) is a set M equipped with a binary operation ∘:M×M→M which has the following properties. Associativity: (a∘b)⋅c=a∘(b∘c) Existence of an identity element: ∃e∈M:a∘e=e∘a=a