#include "compiler.hh"#include <cmath>

Go to the source code of this file.
Classes | |
| struct | Parma_Polyhedra_Library::Checked::Float_2exp |
Namespaces | |
| namespace | Parma_Polyhedra_Library |
The entire library is confined to this namespace. | |
| namespace | Parma_Polyhedra_Library::Checked |
Types and functions implementing checked numbers. | |
Functions | |
| float | Parma_Polyhedra_Library::Checked::fma (float x, float y, float z) |
| double | Parma_Polyhedra_Library::Checked::fma (double x, double y, double z) |
| long double | Parma_Polyhedra_Library::Checked::fma (long double x, long double y, long double z) |
| double | Parma_Polyhedra_Library::Checked::rint (double x) |
| long double | Parma_Polyhedra_Library::Checked::rint (long double x) |
| bool | Parma_Polyhedra_Library::Checked::fpu_direct_rounding (Rounding_Dir dir) |
| bool | Parma_Polyhedra_Library::Checked::fpu_inverse_rounding (Rounding_Dir dir) |
| void | Parma_Polyhedra_Library::Checked::limit_precision (const float &v) |
| void | Parma_Polyhedra_Library::Checked::limit_precision (const double &v) |
| void | Parma_Polyhedra_Library::Checked::limit_precision (const long double &) |
| template<typename Policy , typename T > | |
| Result | Parma_Polyhedra_Library::Checked::classify_float (const T v, bool nan, bool inf, bool sign) |
| template<typename Policy , typename T > | |
| bool | Parma_Polyhedra_Library::Checked::is_nan_float (const T v) |
| template<typename Policy , typename T > | |
| int | Parma_Polyhedra_Library::Checked::is_inf_float (const T v) |
| template<typename Policy , typename T > | |
| bool | Parma_Polyhedra_Library::Checked::is_minf_float (const T v) |
| template<typename Policy , typename T > | |
| bool | Parma_Polyhedra_Library::Checked::is_pinf_float (const T v) |
| template<typename Policy , typename T > | |
| bool | Parma_Polyhedra_Library::Checked::is_int_float (const T v) |
| template<typename Policy , typename T > | |
| Result | Parma_Polyhedra_Library::Checked::assign_special_float (T &v, Result_Class c, Rounding_Dir) |
| template<typename T > | |
| void | Parma_Polyhedra_Library::Checked::pred_float (T &v) |
| template<typename T > | |
| void | Parma_Polyhedra_Library::Checked::succ_float (T &v) |
| template<typename Policy , typename To > | |
| Result | Parma_Polyhedra_Library::Checked::round_lt_float (To &to, Rounding_Dir dir) |
| template<typename Policy , typename To > | |
| Result | Parma_Polyhedra_Library::Checked::round_gt_float (To &to, Rounding_Dir dir) |
| template<typename Policy > | |
| void | Parma_Polyhedra_Library::Checked::prepare_inexact (Rounding_Dir dir) |
| template<typename Policy > | |
| Result | Parma_Polyhedra_Library::Checked::result_relation (Rounding_Dir dir) |
| template<typename To_Policy , typename From_Policy , typename To , typename From > | |
| Result | Parma_Polyhedra_Library::Checked::assign_float_float_exact (To &to, const From from, Rounding_Dir) |
| template<typename To_Policy , typename From_Policy , typename To , typename From > | |
| Result | Parma_Polyhedra_Library::Checked::assign_float_float_inexact (To &to, const From from, Rounding_Dir dir) |
| template<typename To_Policy , typename From_Policy , typename To , typename From > | |
| Result | Parma_Polyhedra_Library::Checked::assign_float_float (To &to, const From from, Rounding_Dir dir) |
| template<typename To_Policy , typename From_Policy , typename Type > | |
| Result | Parma_Polyhedra_Library::Checked::floor_float (Type &to, const Type from, Rounding_Dir) |
| template<typename To_Policy , typename From_Policy , typename Type > | |
| Result | Parma_Polyhedra_Library::Checked::ceil_float (Type &to, const Type from, Rounding_Dir) |
| template<typename To_Policy , typename From_Policy , typename Type > | |
| Result | Parma_Polyhedra_Library::Checked::trunc_float (Type &to, const Type from, Rounding_Dir dir) |
| template<typename To_Policy , typename From_Policy , typename Type > | |
| Result | Parma_Polyhedra_Library::Checked::neg_float (Type &to, const Type from, Rounding_Dir) |
| template<typename To_Policy , typename From1_Policy , typename From2_Policy , typename Type > | |
| Result | Parma_Polyhedra_Library::Checked::add_float (Type &to, const Type x, const Type y, Rounding_Dir dir) |
| template<typename To_Policy , typename From1_Policy , typename From2_Policy , typename Type > | |
| Result | Parma_Polyhedra_Library::Checked::sub_float (Type &to, const Type x, const Type y, Rounding_Dir dir) |
| template<typename To_Policy , typename From1_Policy , typename From2_Policy , typename Type > | |
| Result | Parma_Polyhedra_Library::Checked::mul_float (Type &to, const Type x, const Type y, Rounding_Dir dir) |
| template<typename To_Policy , typename From1_Policy , typename From2_Policy , typename Type > | |
| Result | Parma_Polyhedra_Library::Checked::div_float (Type &to, const Type x, const Type y, Rounding_Dir dir) |
| template<typename To_Policy , typename From1_Policy , typename From2_Policy , typename Type > | |
| Result | Parma_Polyhedra_Library::Checked::idiv_float (Type &to, const Type x, const Type y, Rounding_Dir dir) |
| template<typename To_Policy , typename From1_Policy , typename From2_Policy , typename Type > | |
| Result | Parma_Polyhedra_Library::Checked::rem_float (Type &to, const Type x, const Type y, Rounding_Dir) |
| template<typename To_Policy , typename From_Policy , typename Type > | |
| Result | Parma_Polyhedra_Library::Checked::add_2exp_float (Type &to, const Type x, unsigned int exp, Rounding_Dir dir) |
| template<typename To_Policy , typename From_Policy , typename Type > | |
| Result | Parma_Polyhedra_Library::Checked::sub_2exp_float (Type &to, const Type x, unsigned int exp, Rounding_Dir dir) |
| template<typename To_Policy , typename From_Policy , typename Type > | |
| Result | Parma_Polyhedra_Library::Checked::mul_2exp_float (Type &to, const Type x, unsigned int exp, Rounding_Dir dir) |
| template<typename To_Policy , typename From_Policy , typename Type > | |
| Result | Parma_Polyhedra_Library::Checked::div_2exp_float (Type &to, const Type x, unsigned int exp, Rounding_Dir dir) |
| template<typename To_Policy , typename From_Policy , typename Type > | |
| Result | Parma_Polyhedra_Library::Checked::smod_2exp_float (Type &to, const Type x, unsigned int exp, Rounding_Dir dir) |
| template<typename To_Policy , typename From_Policy , typename Type > | |
| Result | Parma_Polyhedra_Library::Checked::umod_2exp_float (Type &to, const Type x, unsigned int exp, Rounding_Dir dir) |
| template<typename To_Policy , typename From_Policy , typename Type > | |
| Result | Parma_Polyhedra_Library::Checked::abs_float (Type &to, const Type from, Rounding_Dir) |
| template<typename To_Policy , typename From_Policy , typename Type > | |
| Result | Parma_Polyhedra_Library::Checked::sqrt_float (Type &to, const Type from, Rounding_Dir dir) |
| template<typename Policy , typename Type > | |
| Result_Relation | Parma_Polyhedra_Library::Checked::sgn_float (const Type x) |
| template<typename Policy1 , typename Policy2 , typename Type > | |
| Result_Relation | Parma_Polyhedra_Library::Checked::cmp_float (const Type x, const Type y) |
| template<typename To_Policy , typename From_Policy , typename To , typename From > | |
| Result | Parma_Polyhedra_Library::Checked::assign_float_int_inexact (To &to, const From from, Rounding_Dir dir) |
| template<typename To_Policy , typename From_Policy , typename To , typename From > | |
| Result | Parma_Polyhedra_Library::Checked::assign_float_int (To &to, const From from, Rounding_Dir dir) |
| template<typename Policy , typename T > | |
| Result | Parma_Polyhedra_Library::Checked::set_neg_overflow_float (T &to, Rounding_Dir dir) |
| template<typename Policy , typename T > | |
| Result | Parma_Polyhedra_Library::Checked::set_pos_overflow_float (T &to, Rounding_Dir dir) |
| template<typename To_Policy , typename From_Policy , typename T > | |
| Result | Parma_Polyhedra_Library::Checked::assign_float_mpz (T &to, const mpz_class &_from, Rounding_Dir dir) |
| template<typename To_Policy , typename From_Policy , typename T > | |
| Result | Parma_Polyhedra_Library::Checked::assign_float_mpq (T &to, const mpq_class &from, Rounding_Dir dir) |
| template<typename To_Policy , typename From1_Policy , typename From2_Policy , typename Type > | |
| Result | Parma_Polyhedra_Library::Checked::add_mul_float (Type &to, const Type x, const Type y, Rounding_Dir dir) |
| template<typename To_Policy , typename From1_Policy , typename From2_Policy , typename Type > | |
| Result | Parma_Polyhedra_Library::Checked::sub_mul_float (Type &to, const Type x, const Type y, Rounding_Dir dir) |
| template<typename Policy , typename Type > | |
| Result | Parma_Polyhedra_Library::Checked::output_float (std::ostream &os, const Type from, const Numeric_Format &, Rounding_Dir) |
1.6.3