carl
24.04
Computer ARithmetic Library
|
#include <Ran.h>
Data Structures | |
struct | content |
Public Member Functions | |
void | refine () const |
std::optional< Sign > | refine_using (const Number &pivot) const |
IntRepRealAlgebraicNumber () | |
IntRepRealAlgebraicNumber (const Number &n) | |
IntRepRealAlgebraicNumber (const UnivariatePolynomial< Number > &p, const Interval< Number > &i) | |
IntRepRealAlgebraicNumber (const IntRepRealAlgebraicNumber &ran)=default | |
IntRepRealAlgebraicNumber (IntRepRealAlgebraicNumber &&ran)=default | |
IntRepRealAlgebraicNumber & | operator= (const IntRepRealAlgebraicNumber &n)=default |
IntRepRealAlgebraicNumber & | operator= (IntRepRealAlgebraicNumber &&n)=default |
bool | is_numeric () const |
const auto & | polynomial () const |
const auto & | interval () const |
const auto & | value () const |
auto & | polynomial_int () const |
auto & | interval_int () const |
Static Public Member Functions | |
static IntRepRealAlgebraicNumber< Number > | create_safe (const UnivariatePolynomial< Number > &p, const Interval< Number > &i) |
Private Member Functions | |
bool | is_consistent () const |
void | set_polynomial (const UnivariatePolynomial< Number > &p, Sign lower_sign) const |
Sign | refine_internal (const Number &pivot) const |
Returns the sign of "interval_int() - pivot": Returns ZERO if pivot is equal to RAN. More... | |
void | refine_to_integrality () const |
Refines until the number is either numeric or the interval does not contain any integer. More... | |
Static Private Member Functions | |
static UnivariatePolynomial< Number > | replace_variable (const UnivariatePolynomial< Number > &p) |
Private Attributes | |
std::shared_ptr< content > | m_content |
Static Private Attributes | |
static const Variable | auxVariable = fresh_real_variable("__r") |
Friends | |
template<typename Num > | |
bool | compare (const IntRepRealAlgebraicNumber< Num > &, const IntRepRealAlgebraicNumber< Num > &, const Relation) |
template<typename Num > | |
bool | compare (const IntRepRealAlgebraicNumber< Num > &, const Num &, const Relation) |
template<typename Num , typename Poly > | |
boost::tribool | evaluate (const BasicConstraint< Poly > &, const Assignment< IntRepRealAlgebraicNumber< Num >> &, bool, bool) |
template<typename Num > | |
std::optional< IntRepRealAlgebraicNumber< Num > > | evaluate (MultivariatePolynomial< Num >, const Assignment< IntRepRealAlgebraicNumber< Num >> &, bool) |
template<typename Num > | |
Num | branching_point (const IntRepRealAlgebraicNumber< Num > &n) |
template<typename Num > | |
Num | sample_above (const IntRepRealAlgebraicNumber< Num > &n) |
template<typename Num > | |
Num | sample_below (const IntRepRealAlgebraicNumber< Num > &n) |
template<typename Num > | |
Num | sample_between (const IntRepRealAlgebraicNumber< Num > &lower, const IntRepRealAlgebraicNumber< Num > &upper) |
template<typename Num > | |
Num | sample_between (const IntRepRealAlgebraicNumber< Num > &lower, const Num &upper) |
template<typename Num > | |
Num | sample_between (const Num &lower, const IntRepRealAlgebraicNumber< Num > &upper) |
template<typename Num > | |
Num | floor (const IntRepRealAlgebraicNumber< Num > &n) |
template<typename Num > | |
Num | ceil (const IntRepRealAlgebraicNumber< Num > &n) |
template<typename Num > | |
Sign | sgn (const IntRepRealAlgebraicNumber< Num > &n, const UnivariatePolynomial< Num > &p) |
|
inline |
|
inline |
|
inline |
|
default |
|
default |
|
inlinestatic |
|
inline |
|
inline |
|
inlineprivate |
|
inline |
|
default |
|
default |
|
inline |
|
inline |
|
inline |
|
inlineprivate |
Returns the sign of "interval_int() - pivot": Returns ZERO if pivot is equal to RAN.
Returns POSITIVE if pivot is less than RAN resp. the new lower bound. Returns NEGATIVE if pivot is greater than RAN resp. the new upper bound.
Definition at line 132 of file Ran.h.
|
inlineprivate |
|
inline |
|
inlinestaticprivate |
|
inlineprivate |
|
inline |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
staticprivate |
|
mutableprivate |