24 #ifndef PPL_Floating_Point_Expression_defs_hh
25 #define PPL_Floating_Point_Expression_defs_hh 1
54 template <
typename FP_Interval_Type,
typename FP_Format>
77 typedef std::map<dimension_type, FP_Linear_Form>
84 typedef typename FP_Interval_Type::info_type
info_type;
114 virtual bool linearize(
const FP_Interval_Abstract_Store& int_store,
116 FP_Linear_Form& result)
const = 0;
136 static bool overflows(
const FP_Linear_Form& lf);
164 FP_Linear_Form& result);
184 const FP_Interval_Abstract_Store& store,
185 FP_Interval_Type& result);
203 template <
typename FP_Interval_Type,
typename FP_Format>
212 #endif // !defined(PPL_Floating_Point_Expression_defs_hh)
FP_Interval_Type::boundary_type boundary_type
The floating point format used by the analyzer.
virtual ~Floating_Point_Expression()
Destructor.
virtual bool linearize(const FP_Interval_Abstract_Store &int_store, const FP_Linear_Form_Abstract_Store &lf_store, FP_Linear_Form &result) const =0
Linearizes a floating point expression.
const FP_Interval_Type & compute_absolute_error(const Floating_Point_Format analyzed_format)
static FP_Interval_Type compute_absolute_error()
Computes the absolute error.
static void relative_error(const FP_Linear_Form &lf, FP_Linear_Form &result)
Computes the relative error of a given linear form.
A not necessarily closed, iso-oriented hyperrectangle.
static void intervalize(const FP_Linear_Form &lf, const FP_Interval_Abstract_Store &store, FP_Interval_Type &result)
Makes result become an interval that overapproximates all the possible values of lf in the interval a...
Linear_Form< FP_Interval_Type > FP_Linear_Form
Alias for a linear form with template argument FP_Interval_Type.
static bool overflows(const FP_Linear_Form &lf)
Verifies if a given linear form overflows.
The entire library is confined to this namespace.
FP_Interval_Type::info_type info_type
The interval policy used by FP_Interval_Type.
Box< FP_Interval_Type > FP_Interval_Abstract_Store
Alias for a map that associates a variable index to an interval.
std::map< dimension_type, FP_Linear_Form > FP_Linear_Form_Abstract_Store
Alias for a map that associates a variable index to a linear form.
static FP_Interval_Type absolute_error
Absolute error.