Expr_raw.SetSourcetype elt = tThe type of elements of the set
val empty : tThe empty set
val is_empty : t -> boolis_empty st is true if st contains no elements, false otherwise
add elt set adds element elt to the set. Preserves physical equality if elt was already present. O(log(n)) complexity.
val cardinal : t -> intcardinal set is the size of the set (number of elements), O(n) complexity.
remove elt set returns a set containing all elements of set except elt. Returns a value physically equal to set if elt is not present.
filter f set is the subset of set that only contains the elements that satisfy f.
for_all f set is true if f is true on all elements of set. Short-circuits on first false.
fold f set acc returns f elt_n (... (f elt_1 acc) ...), where elt_1, ..., elt_n are the elements of set.
split elt set returns s_lt, present, s_gt where s_lt contains all elements of set smaller than elt, s_gt all those greater than elt, and present is true if elt is in set.
union a b is the set union of a and b, i.e. the set containing all elements that are either in a or b.
inter a b is the set intersection of a and b, i.e. the set containing all elements that are in both a or b.
add_seq s st adds all elements of the sequence s to st in order.
get_symbols exprs extracts all symbolic variables from a list of expressions.