sig
  type t
  val equal : Linear.Ring.t -> Linear.Ring.t -> bool
  val add : Linear.Ring.t -> Linear.Ring.t -> Linear.Ring.t
  val negate : Linear.Ring.t -> Linear.Ring.t
  val zero : Linear.Ring.t
  val mul : Linear.Ring.t -> Linear.Ring.t -> Linear.Ring.t
  val one : Linear.Ring.t
end