functor
  (G : sig
         type t
         module V : Sig.COMPARABLE
         val iter_succ : (V.t -> unit) -> Path.Check.t -> V.t -> unit
       end->
  sig
    type path_checker
    val create : Path.G.t -> Path.Check.path_checker
    val check_path : Path.Check.path_checker -> G.V.t -> G.V.t -> bool
  end