functor (G : G) -> functor (W : sig type t = G.E.label val compare : t -> t -> int end) -> sig val spanningtree : Kruskal.G.t -> Kruskal.G.E.t list end