sig
  type t
  val create : primary:int -> bool array array -> Emc.Sat.t
  val create_sparse : primary:int -> int list array -> Emc.Sat.t
  val print : Format.formatter -> Emc.Sat.t -> unit
  val print_in_file : string -> Emc.Sat.t -> unit
end