functor (X : GRAPH) -> sig val fold : 'a -> (X.node -> 'a -> 'a) -> 'b -> ('a -> 'b -> 'b) -> X.graph -> 'b val list : X.graph -> X.node list list val unify : (X.node -> X.node -> unit) -> X.graph -> unit end