Signature.Numericval empty : treturns an empty element
returns the variables annoted by their type and their definition domain
val volume : t -> floatcomputes the volume of an abstract element
Joins two abstract elements. The boolean flag indicates if the join was exact. It is always sound to return false
Joins a list of n abstract elements. May be faster than joining pairwise. The boolean flag indicates if the join was exact. It is always sound to return false
substracts the second abstract element from the first (difference operator) if an exact operator can not be defined (None), the solver doesn't use the pruning features. precondition: the two abstract elements must be defined onto the same set of variables.
splits an abstract element along the specified variable
val internalize : ?elem:t -> Constraint.comparison -> internal_constrmay use a current abstract element to simplify the constaint
val externalize : internal_constr -> Constraint.comparisonval sat : Instance.t -> internal_constr -> boolsatisfaction test on the internal constraint representation
val filter : t -> internal_constr -> t Consistency.tfilters an abstract element with respect to an arithmetic constraint, may raise bot found.
val filter_diff : t -> internal_constr -> (t * Tools.VarSet.t) Consistency.tsame as filter but also return a set of variables that had their domains effectively reduced
val is_representable : internal_constr -> Kleene.tchecks if a constraint is suited for this abstract domain
computes the range of value of a given expression within an abstract element
val to_constraint : t -> Constraint.ttransforms an abstract element into constraints
val spawn : t -> Csp.instanceRandom concretization function. useful to do tests, and to reuse the results. values are generated uniformly when possible
val is_abstraction : t -> Csp.instance -> boolcheck if an abstract element is an abstraction of an instance
val print : Stdlib.Format.formatter -> t -> unitprinting
val render : t -> Picasso.Drawable.ttransforms an abstract element into a Picasso.Drawable.t for drawing