sig type label type t val weight : Prim.WEIGHT.label -> Prim.WEIGHT.t val compare : Prim.WEIGHT.t -> Prim.WEIGHT.t -> int val add : Prim.WEIGHT.t -> Prim.WEIGHT.t -> Prim.WEIGHT.t val zero : Prim.WEIGHT.t end