functor (G : G) -> sig val contract : (Contraction.G.E.t -> bool) -> Contraction.G.t -> Contraction.G.t end