Gecode::Int::Arithmetic Namespace Reference
Numerical (arithmetic) propagators. More...
Classes | |
class | ValuesMapSqr |
Mapping integer to square. More... | |
class | ValuesMapSqrt |
Mapping integer to square root. More... | |
class | RangesMapSqr |
Mapping ranges to squares. More... | |
class | RangesMapSqrt |
Mapping integer to square root. More... | |
class | AbsBnd |
Bounds consistent absolute value propagator. More... | |
class | AbsDom |
Domain consistent absolute value propagator. More... | |
class | MaxBnd |
Bounds consistent ternary maximum propagator. More... | |
class | NaryMaxBnd |
Bounds consistent n-ary maximum propagator. More... | |
class | MaxDom |
Domain consistent ternary maximum propagator. More... | |
class | NaryMaxDom |
Domain consistent n-ary maximum propagator. More... | |
class | SqrPlusBnd |
Bounds consistent positive square propagator. More... | |
class | SqrBnd |
Bounds consistent square propagator. More... | |
class | SqrPlusDom |
Domain consistent positive square propagator. More... | |
class | SqrDom |
Domain consistent square propagator. More... | |
class | SqrtBnd |
Bounds consistent square root propagator. More... | |
class | SqrtDom |
Domain consistent square root propagator. More... | |
class | MultZeroOne |
Bounds or domain consistent propagator for ![]() | |
class | MultPlusBnd |
Bounds consistent positive multiplication propagator. More... | |
class | MultBnd |
Bounds consistent multiplication propagator. More... | |
class | MultPlusDom |
Domain consistent positive multiplication propagator. More... | |
class | MultDom |
Domain consistent multiplication propagator. More... | |
class | DivPlusBnd |
Bounds consistent positive division propagator. More... | |
class | DivBnd |
Bounds consistent division propagator. More... | |
class | DivMod |
Integer division/modulo propagator. More... | |
Enumerations | |
enum | MaxPropStatus { MPS_ASSIGNED = 1<<0, MPS_REMOVED = 1<<1, MPS_NEW_BOUND = 1<<2 } |
Status of propagation for nary max. More... | |
Functions | |
template<class View , template< class View0, class View1 > class Eq> | |
ExecStatus | prop_abs_bnd (Space &home, Propagator &p, View x0, View x1) |
template<class View > | |
ExecStatus | prop_max_bnd (Space &home, View x0, View x1, View x2) |
template<class View > | |
ExecStatus | prop_nary_max_bnd (Space &home, Propagator &p, ViewArray< View > &x, View y, PropCond pc) |
template<class Val > | |
Val | m (int x, int y) |
Multiply x and y as type Val. | |
template<class Val > | |
Val | m (int x, double y) |
Multiply x and y as type Val. | |
template<> | |
double | m (int x, int y) |
Multiply x and y as type Val. | |
template<> | |
double | m (int x, double y) |
Multiply x and y as type Val. | |
template<class Val > | |
int | c_d_p (int x, Val y) |
Compute ![]() | |
template<class Val > | |
int | f_d_p (int x, Val y) |
Compute ![]() | |
template<> | |
int | c_d_p< int > (int x, int y) |
template<> | |
int | c_d_p< double > (int x, double y) |
template<> | |
int | f_d_p< int > (int x, int y) |
template<> | |
int | f_d_p< double > (int x, double y) |
int | f_d (int x, int y) |
Compute ![]() | |
int | c_d (int x, int y) |
Compute ![]() | |
template<class View > | |
bool | pos (const View &x) |
Test whether x is postive. | |
template<class View > | |
bool | neg (const View &x) |
Test whether x is negative. | |
template<class View > | |
bool | any (const View &x) |
Test whether x is neither positive nor negative. | |
template<class Val , class VA , class VB , class VC > | |
ExecStatus | prop_mult_plus_bnd (Space &home, Propagator &p, VA x0, VB x1, VC x2) |
template<class Val , class View > | |
ExecStatus | prop_mult_dom (Space &home, Propagator &p, View x0, View x1, View x2) |
template<class VA , class VB > | |
ExecStatus | prop_sqr_plus_bnd (Space &home, VA x0, VB x1) |
template<class View > | |
ExecStatus | prop_sqrt_bnd (Space &home, View x0, View x1) |
Detailed Description
Numerical (arithmetic) propagators.
Enumeration Type Documentation
Function Documentation
template<class View , template< class View0, class View1 > class Eq>
ExecStatus Gecode::Int::Arithmetic::prop_abs_bnd | ( | Space & | home, | |
Propagator & | p, | |||
View | x0, | |||
View | x1 | |||
) | [inline] |
template<class View >
ExecStatus Gecode::Int::Arithmetic::prop_max_bnd | ( | Space & | home, | |
View | x0, | |||
View | x1, | |||
View | x2 | |||
) | [inline] |
template<class View >
ExecStatus Gecode::Int::Arithmetic::prop_nary_max_bnd | ( | Space & | home, | |
Propagator & | p, | |||
ViewArray< View > & | x, | |||
View | y, | |||
PropCond | pc | |||
) | [inline] |
template<class Val >
Val Gecode::Int::Arithmetic::m | ( | int | x, | |
int | y | |||
) | [inline] |
template<class Val >
Val Gecode::Int::Arithmetic::m | ( | int | x, | |
double | y | |||
) | [inline] |
template<>
int Gecode::Int::Arithmetic::m | ( | int | x, | |
int | y | |||
) | [inline] |
template<>
double Gecode::Int::Arithmetic::m | ( | int | x, | |
double | y | |||
) | [inline] |
template<class Val >
int Gecode::Int::Arithmetic::c_d_p | ( | int | x, | |
Val | y | |||
) | [inline] |
Compute where x and y are non-negative.
template<class Val >
int Gecode::Int::Arithmetic::f_d_p | ( | int | x, | |
Val | y | |||
) | [inline] |
Compute where x and y are non-negative.
template<>
int Gecode::Int::Arithmetic::c_d_p< int > | ( | int | x, | |
int | y | |||
) | [inline] |
template<>
int Gecode::Int::Arithmetic::c_d_p< double > | ( | int | x, | |
double | y | |||
) | [inline] |
template<>
int Gecode::Int::Arithmetic::f_d_p< int > | ( | int | x, | |
int | y | |||
) | [inline] |
template<>
int Gecode::Int::Arithmetic::f_d_p< double > | ( | int | x, | |
double | y | |||
) | [inline] |
int Gecode::Int::Arithmetic::f_d | ( | int | x, | |
int | y | |||
) | [inline] |
int Gecode::Int::Arithmetic::c_d | ( | int | x, | |
int | y | |||
) | [inline] |
template<class View >
bool Gecode::Int::Arithmetic::pos | ( | const View & | x | ) | [inline] |
template<class View >
bool Gecode::Int::Arithmetic::neg | ( | const View & | x | ) | [inline] |
template<class View >
bool Gecode::Int::Arithmetic::any | ( | const View & | x | ) | [inline] |
template<class Val , class VA , class VB , class VC >
ExecStatus Gecode::Int::Arithmetic::prop_mult_plus_bnd | ( | Space & | home, | |
Propagator & | p, | |||
VA | x0, | |||
VB | x1, | |||
VC | x2 | |||
) | [inline] |
template<class Val , class View >
ExecStatus Gecode::Int::Arithmetic::prop_mult_dom | ( | Space & | home, | |
Propagator & | p, | |||
View | x0, | |||
View | x1, | |||
View | x2 | |||
) | [inline] |
template<class VA , class VB >
ExecStatus Gecode::Int::Arithmetic::prop_sqr_plus_bnd | ( | Space & | home, | |
VA | x0, | |||
VB | x1 | |||
) | [inline] |
template<class View >
ExecStatus Gecode::Int::Arithmetic::prop_sqrt_bnd | ( | Space & | home, | |
View | x0, | |||
View | x1 | |||
) | [inline] |