# Module Minsep

    module Minsep: sig .. end

Minimal separators of a graph

Based on the article: Generating all the minimal separators of a graph. by A. Berry, J.-P. Bordat and O.Cogis http://www.isima.fr/berry/generating.html

A set `S` of vertices is a minimal separator if it exists 2 distinct connected components `C` and `D` in `G \ S` such that each vertex of `S` has a successor in `C` and `D`.

    module type G = sig .. end

Minimal signature for computing the minimal separators

    module type MINSEP = sig .. end

    module P: functor (G : siginclude Minsep.G
    val remove_vertex : t -> V.t -> tend) -> MINSEP  with module G = G

Implementation for a persistent graph

    module I: functor (G : siginclude Minsep.G
    module Mark: Sig.MARK  with type graph = t and type vertex = V.tend) -> MINSEP  with module G = G

Implementation for an imperative graph.