functor (G : Sig.P->
  sig
    type edgelist = (G.V.t * G.V.t) list
    val mcsm :
      G.t -> (int * G.V.t) list * Mcs_m.MaximalCardinalitySearch.P.edgelist
    val triangulate : G.t -> G.t
  end