sig type t val eq : Monoid.Abelian.t -> Monoid.Abelian.t -> bool val add : Monoid.Abelian.t -> Monoid.Abelian.t -> Monoid.Abelian.t val zero : Monoid.Abelian.t val to_string : Monoid.Abelian.t -> string end