sig
  type t
  val compare : Scalar.M.t -> Scalar.M.t -> int
  val zero : Scalar.M.t
  val one : Scalar.M.t
  val of_float : float -> Scalar.M.t
  val to_float : Scalar.M.t -> float
  val of_q : Q.t -> Scalar.M.t
  val to_q : Scalar.M.t -> Q.t
  val add : Scalar.M.t -> Scalar.M.t -> Scalar.M.t
  val sub : Scalar.M.t -> Scalar.M.t -> Scalar.M.t
  val mult : Scalar.M.t -> Scalar.M.t -> Scalar.M.t
  val div : Scalar.M.t -> Scalar.M.t -> Scalar.M.t
  val pp : Stdlib.Format.formatter -> Scalar.M.t -> unit
end