Transformation semigroups, monoids, permutation groups in idris