Module type Interface.GROUP

include LOOP
include QUASIGROUP
include MAGMA
type t
val append : t -> t -> t
val empty : t
include MONOID with type t := t
include SEMIGROUP
include MAGMA
type t
val append : t -> t -> t
val empty : t
val inverse : t -> t