SetDomain.Joined
Set abstracted by a single (joined) element.
Element-wise S
operations only observe the single element.
include Lattice.S
include Lattice.PO
widen x y
assumes leq x y
. Solvers guarantee this by calling widen old (join old new)
.
val bot : unit -> t
val is_bot : t -> bool
val top : unit -> t
val is_top : t -> bool
type elt = E.t
val empty : unit -> t
val is_empty : t -> bool
See Set.S.remove
.
NB! On set abstractions this is a strong removal, i.e. all subsumed elements are also removed.
See Set.S.diff
.
NB! On set abstractions this is a strong removal, i.e. all subsumed elements are also removed.
See Set.S.iter
.
On set abstractions this iterates only over canonical elements, not all subsumed elements.
See Set.S.map
.
On set abstractions this maps only canonical elements, not all subsumed elements.
See Set.S.fold
.
On set abstractions this folds only over canonical elements, not all subsumed elements.
See Set.S.for_all
.
On set abstractions this checks only canonical elements, not all subsumed elements.
See Set.S.exists
.
On set abstractions this checks only canonical elements, not all subsumed elements.
See Set.S.filter
.
On set abstractions this filters only canonical elements, not all subsumed elements.
See Set.S.partition
.
On set abstractions this partitions only canonical elements, not all subsumed elements.
val cardinal : t -> int
See Set.S.cardinal
.
On set abstractions this counts only canonical elements, not all subsumed elements.
See Set.S.elements
.
On set abstractions this lists only canonical elements, not all subsumed elements.
See Set.S.min_elt
.
On set abstractions this chooses only a canonical element, not any subsumed element.
See Set.S.max_elt
.
On set abstractions this chooses only a canonical element, not any subsumed element.