Module Int_set = Core_kernel.Int_set


type t
val empty : t
val to_string : t -> string
val add_range : t -> int -> int -> t

add_range t i j add all the numbers between i and j (inclusive) to the set. Note that it doesn't matter which order i and j are specified in, the effect is the same.

val add : t -> int -> t

add t i add i to the set

val mem : t -> int -> bool

mem t i test whether i is a member of the set

val ranges : t -> (int * int) list

ranges t return a list of all ranges that make up the set

val max : t -> int option

max t the biggest number in the set (if it exists)

val min : t -> int option

min t the smallest number in the set (if it exists)