sig
type t = Types.Atom.t array
val equal : Types.ArrayAtom.t -> Types.ArrayAtom.t -> bool
val hash : Types.ArrayAtom.t -> int
val subset : Types.ArrayAtom.t -> Types.ArrayAtom.t -> bool
val trivial_is_implied : Types.ArrayAtom.t -> Types.ArrayAtom.t -> bool
val of_satom : Types.SAtom.t -> Types.ArrayAtom.t
val to_satom : Types.ArrayAtom.t -> Types.SAtom.t
val union : Types.ArrayAtom.t -> Types.ArrayAtom.t -> Types.ArrayAtom.t
val apply_subst : Variable.subst -> Types.ArrayAtom.t -> Types.ArrayAtom.t
val nb_diff : Types.ArrayAtom.t -> Types.ArrayAtom.t -> int
val compare_nb_diff :
Types.ArrayAtom.t -> Types.ArrayAtom.t -> Types.ArrayAtom.t -> int
val compare_nb_common :
Types.ArrayAtom.t -> Types.ArrayAtom.t -> Types.ArrayAtom.t -> int
val diff : Types.ArrayAtom.t -> Types.ArrayAtom.t -> Types.ArrayAtom.t
val alpha :
Types.ArrayAtom.t ->
Variable.t list -> Variable.t list * Types.ArrayAtom.t
val print : Format.formatter -> Types.ArrayAtom.t -> unit
end