sig
  type t
  val eq : t -> t -> bool
  val add : t -> t -> t
  val zero : t
  val to_string : t -> string
  val neg : t -> t
end