sig type edge type t val weight : Path.WEIGHT.edge -> Path.WEIGHT.t val compare : Path.WEIGHT.t -> Path.WEIGHT.t -> int val add : Path.WEIGHT.t -> Path.WEIGHT.t -> Path.WEIGHT.t val zero : Path.WEIGHT.t end