sig
type graph
val empty : Inter_graph.graph
val add_reg : Inter_graph.graph -> Register.reg -> Inter_graph.graph
val remove_reg : Inter_graph.graph -> Register.reg -> Inter_graph.graph
val add_interference :
Register.reg -> Register.reg -> Inter_graph.graph -> Inter_graph.graph
val add_preference :
Register.reg -> Register.reg -> Inter_graph.graph -> Inter_graph.graph
val remove_preferences :
Inter_graph.graph -> Register.reg -> Inter_graph.graph
val join_nodes :
Inter_graph.graph ->
Register.reg -> Register.reg -> Inter_graph.graph * Register.reg
val is_empty : Inter_graph.graph -> bool
val degree : Inter_graph.graph -> Register.reg -> int
val neighbour : Inter_graph.graph -> Register.reg -> Register.reg -> bool
val prefer_out : Inter_graph.graph -> Register.reg -> bool
val find_register :
(Register.reg -> bool) -> Inter_graph.graph -> Register.reg option
val find_preference :
(Register.reg -> Register.reg -> bool) ->
Inter_graph.graph -> (Register.reg * Register.reg) option
val neighbours : Inter_graph.graph -> Register.reg -> Register.reg list
val choose : Inter_graph.graph -> Register.reg
val print_graph : Inter_graph.graph -> unit
val print_graph_coloring : Inter_graph.graph -> Coloring.coloring -> unit
end