sig
type t
val is_clique_cover : Graph.t -> IntSet.t list -> bool
val make : Graph.t -> ECC.t
val make1 : Graph.t -> Graph.t -> ECC.t
val reduce_rule1 : ECC.t -> bool * ECC.t
val reduce_rule2 : ECC.t -> bool * ECC.t
val reduce_rule3 : ECC.t -> bool * ECC.t
val reduce_rule4 : ECC.t -> bool * ECC.t
val g : ECC.t -> Graph.t
val k : ECC.t -> int
val k_used_up : ECC.t -> bool
val all_covered : ECC.t -> bool
val branching_edge : ECC.t -> int * int
val restore : ECC.t -> IntSet.t list -> IntSet.t list
val set_max_k : ECC.t -> int -> ECC.t
val cover : ECC.t -> IntSet.t -> ECC.t
val reduce : ECC.t -> ECC.t
val use_rule1 : bool Pervasives.ref
val use_rule2 : bool Pervasives.ref
val use_rule3 : bool Pervasives.ref
val use_rule4 : bool Pervasives.ref
val rule1_counter : Int64.t Pervasives.ref
val rule2_counter : Int64.t Pervasives.ref
val rule3_counter : Int64.t Pervasives.ref
val rule4_counter : Int64.t Pervasives.ref
end