Free semigroups, generators and relations, word problems Semigroups mathematics