# Functor Mcs_m.MaximalCardinalitySearch.P

    module P: functor (G : Sig.P) -> sig .. end

Parameters: |
`G` | : | `Sig.P`

    type edgelist = (G.V.t * G.V.t) list

    val mcsm : G.t -> (int * G.V.t) list * edgelist

`mcsm g` returns a tuple `(o, e)` where `o` is a perfect elimination order of `g'` where `g'` is the triangulation `e` applied to `g`.

    val triangulate : G.t -> G.t

`triangulate g` computes a triangulation of `g` using the MCS-M algorithm