`sig
type t
exception Negative_index of string
val empty : unit -> BitSet.t
val create : int -> BitSet.t
val copy : BitSet.t -> BitSet.t
val clone : BitSet.t -> BitSet.t
val set : BitSet.t -> int -> unit
val unset : BitSet.t -> int -> unit
val put : BitSet.t -> bool -> int -> unit
val toggle : BitSet.t -> int -> unit
val is_set : BitSet.t -> int -> bool
val compare : BitSet.t -> BitSet.t -> int
val equals : BitSet.t -> BitSet.t -> bool
val count : BitSet.t -> int
val enum : BitSet.t -> int Enum.t
val intersect : BitSet.t -> BitSet.t -> unit
val unite : BitSet.t -> BitSet.t -> unit
val differentiate : BitSet.t -> BitSet.t -> unit
val differentiate_sym : BitSet.t -> BitSet.t -> unit
val inter : BitSet.t -> BitSet.t -> BitSet.t
val union : BitSet.t -> BitSet.t -> BitSet.t
val diff : BitSet.t -> BitSet.t -> BitSet.t
val sym_diff : BitSet.t -> BitSet.t -> BitSet.t
end`