Type of the values in the sets in the abstract domain
Type of the constraint in the abstract domain (Top, Bottom, or an actual value)
Type of the values in the sets in the abstract domain
Type of the constraint in the abstract domain (Top, Bottom, or an actual value)
A limit for the maximum number of elements to store in the must set and may set before over-approximation
The set of values that may be present in the set (can be Top).
The set of values that must be present in the set.
The current abstract value of the lattice.
StaticbottomOptionallimit: number | SetRangeLimitOptionalsetType: typeof SetStaticfromOptionallimit: number | SetRangeLimitOptionalsetType: typeof SetStaticjoinJoins an array of abstract values by joining the first abstract value with the other values in the array. The provided array of abstract values must not be empty or a default value must be provided!
StaticmeetMeets an array of abstract values by meeting the first abstract value with the other values in the array. The provided array of abstract values must not be empty or a default value must be provided!
StatictopOptionallimit: number | SetRangeLimitOptionalsetType: typeof SetStatictoConverts an element of an abstract domain into a string.
Gets the Bottom element (least element) of the complete lattice (should additionally be provided as static function).
Creates an abstract value of the lattice for a given value.
Checks whether the current abstract value equals to another abstract value.
ProtectedequalsCreates the intersection between this set abstract value and another set abstract value.
Checks whether the current abstract value is the Bottom element of the complete lattice.
Checks whether the current abstract value is the Top element of the complete lattice.
Checks whether the current abstract value is an actual value of the complete lattice (this may include the Top or Bottom element if they are also values and no separate symbols, for example).
Joins the current abstract value with another abstract value by creating the least upper bound (LUB) in the lattice.
Joins the current abstract value with multiple other abstract values.
ProtectedjoinProtectedjsonifyChecks whether the current abstract value is less than or equal to another abstract value with respect to the partial order of the lattice.
ProtectedleqThe lower bound of the set range representing all values that must be present (equals the must set).
The lower bound of the set range representing all values that must be present (equals the must set).
Meets the current abstract value with another abstract value by creating the greatest lower bound (GLB) in the lattice.
Meets the current abstract value with multiple other abstract values.
ProtectedmeetNarrows the current abstract value with another abstract value as a sound over-approximation of the meet (greatest lower bound) to refine the value after widening.
ProtectednarrowChecks whether the current abstract value satisfies a concrete value (i.e. includes a concrete value).
Ternary for the returned satisfiability result
ProtectedstringifySubtracts another set abstract value from this set abstract value creating the set difference.
Converts the lattice into a JSON serializable value.
Gets the Top element (greatest element) of the complete lattice (should additionally be provided as static function).
Converts the lattice into a human-readable string.
Creates the union between this set abstract value and another set abstract value.
The upper bound of the set range representing all values that can possibly be present (union of must set and may set).
The upper bound of the set range representing all values that can possibly be present (union of must set and may set).
The upper bound of the set range representing all values that can possibly be present (union of must set and may set).
Widens the current abstract value with another abstract value as a sound over-approximation of the join (least upper bound) for fixpoint iteration acceleration.
Extends the must set of the current abstract value down to the empty set.
Extends the may set of the current abstract value up to Top.
Protectedwiden
The set range abstract domain as range of possible value sets with a set of values that must be present and a set of values that may be present (similar to an interval-like structure with a lower bound and a difference to the upper bound). The Bottom element is defined as Bottom symbol and the Top element is defined as the range
[∅, Top]where the must set is the empty set and the may set is Top.