Gecode::Int::Arithmetic Namespace Reference
Detailed Description
Numerical (arithmetic) propagators.
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 . More... | |
| 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 Val, class VA, class VB, class VC, bool towardsMinInf> | |
| ExecStatus | prop_div_plus_bnd (Space *home, Propagator *p, VA x0, VB x1, VC x2) |
| 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<class Val> | |
| int | c_d_p (int x, Val y) |
Compute where x and y are non-negative. | |
| template<class Val> | |
| int | f_d_p (int x, Val y) |
Compute where x and y are non-negative. | |
| 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) |
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 Val, class VA, class VB, class VC, bool towardsMinInf>
| ExecStatus Gecode::Int::Arithmetic::prop_div_plus_bnd | ( | Space * | home, | |
| Propagator * | p, | |||
| VA | x0, | |||
| VB | x1, | |||
| VC | x2 | |||
| ) | [inline] |
Definition at line 48 of file divmod.icc.
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>
| int Gecode::Int::Arithmetic::m | ( | int | x, | |
| int | y | |||
| ) | [inline] |
template<class Val>
| 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] |

.