Module Coloring

module Coloring: sig .. end
k-coloring of undirected graphs.

A k-coloring of a graph g is a mapping c from nodes to {1,...,k} such that c(u) <> c(v) for any edge u-v in g.



Graph coloring for graphs without marks


module type G = sig .. end
Minimal graph signature for Coloring.Make.
module Make: 
functor (G : G) -> sig .. end
Provide a function for k-coloring a graph.

Graph coloring for graph with integer marks


module type GM = sig .. end
Minimal graph signature for Coloring.GM.Mark.
module Mark: 
functor (G : GM) -> sig .. end
Provide a function for k-coloring a graph with integer marks.