Parameters.SIMPLE_GENERIC_GROUP
A (possibly non-commutative) group structure, used to represent relations.
@assumes that any module G
implementing this should verify the axioms of a group:
G.compose x G.identity = G.compose G.identity x = x
G.compose x (G.compose y z) = G.compose (G.compose x y) z
G.compose x (G.inverse x) = G.compose (G.inverse x) x = G.identity
(where =
is G.equal
)Note: This isn't the "simple group" mathematical concept, this is a simple type representing a "group".