implementation of some primitive monoids