An abstract class to be implemented by an external analyzer such as ECLAIR in order to provide to the PPL the necessary information for performing the analysis of floating point computations.
More...
#include <ppl.hh>
|
virtual bool | get_interval (dimension_type dim, FP_Interval_Type &result) const =0 |
| Asks the external analyzer for an interval that correctly approximates the floating point entity referenced by dim . Result is stored into result . More...
|
|
virtual bool | get_fp_constant_value (const Floating_Point_Constant< Target > &expr, FP_Interval_Type &result) const =0 |
| Asks the external analyzer for an interval that correctly approximates the value of floating point constant expr . Result is stored into result . More...
|
|
virtual bool | get_integer_expr_value (const Concrete_Expression< Target > &expr, FP_Interval_Type &result) const =0 |
| Asks the external analyzer for an interval that correctly approximates the value of expr , which must be of integer type. Result is stored into result . More...
|
|
virtual bool | get_associated_dimensions (const Approximable_Reference< Target > &expr, std::set< dimension_type > &result) const =0 |
| Asks the external analyzer for the possible space dimensions that are associated to the approximable reference expr . Result is stored into result . More...
|
|
template<typename Target, typename FP_Interval_Type>
class Parma_Polyhedra_Library::FP_Oracle< Target, FP_Interval_Type >
An abstract class to be implemented by an external analyzer such as ECLAIR in order to provide to the PPL the necessary information for performing the analysis of floating point computations.
- Template type parameters
- The class template parameter
Target
specifies the implementation of Concrete_Expression to be used.
- The class template parameter
FP_Interval_Type
represents the type of the intervals used in the abstract domain. The interval bounds should have a floating point type.
template<typename Target , typename FP_Interval_Type >
Asks the external analyzer for an interval that correctly approximates the floating point entity referenced by dim
. Result is stored into result
.
- Returns
true
if the analyzer was able to find a correct approximation, false
otherwise.
template<typename Target , typename FP_Interval_Type >
Asks the external analyzer for an interval that correctly approximates the value of floating point constant expr
. Result is stored into result
.
- Returns
true
if the analyzer was able to find a correct approximation, false
otherwise.
template<typename Target , typename FP_Interval_Type >
Asks the external analyzer for an interval that correctly approximates the value of expr
, which must be of integer type. Result is stored into result
.
- Returns
true
if the analyzer was able to find a correct approximation, false
otherwise.
template<typename Target , typename FP_Interval_Type >
Asks the external analyzer for the possible space dimensions that are associated to the approximable reference expr
. Result is stored into result
.
- Returns
true
if the analyzer was able to return the (possibly empty!) set, false
otherwise.
The resulting set MUST NOT contain not_a_dimension()
.
The documentation for this class was generated from the following file: