Generated on Fri Oct 19 11:26:05 2018 for Gecode by doxygen 1.6.3

Gecode::Int::Arithmetic Namespace Reference

Numerical (arithmetic) propagators. More...

Classes

class  RangesMapPow
 Mapping ranges to powers. More...
class  RangesMapNroot
 Mapping integer to n-th root. More...
class  ValuesMapPow
 Mapping integer to power. More...
class  ValuesMapNroot
 Mapping integer (must be an n-th power) to n-th root. More...
class  ValuesMapNrootSigned
 Mapping integer (must be an n-th power) to n-th root (signed). 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  ArgMax
 Argument maximum propagator. More...
class  SqrOps
 Operations for square and square-root propagators. More...
class  PowOps
 Operations for power and nroot propagators. More...
class  PowPlusBnd
 Bounds consistent positive power propagator. More...
class  PowBnd
 Bounds consistent power propagator. More...
class  PowPlusDom
 Domain consistent positive power propagator. More...
class  PowDom
 Domain consistent power propagator. More...
class  NrootPlusBnd
 Positive bounds consistent n-th root propagator. More...
class  NrootBnd
 Bounds consistent n-th root propagator. More...
class  NrootPlusDom
 Domain consistent n-th root propagator. More...
class  NrootDom
 Domain consistent n-th root propagator. More...
class  MultZeroOne
 Bounds or domain consistent propagator for $x_0\times x_1=x_0$. 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 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)
long long int mll (long long int x, long long int y)
 Multiply x and .
long long int ll (int x)
 Cast x into a long long int.
long long int ill (int x)
 Increment x by one.
long long int dll (int x)
 Decrement x by one.
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 VA , class VB , class VC >
ExecStatus prop_mult_plus_bnd (Space &home, Propagator &p, VA x0, VB x1, VC x2)
template<class View >
ExecStatus prop_mult_dom (Space &home, Propagator &p, View x0, View x1, View x2)
template<class Ops , bool minus>
ExecStatus prop_nroot_plus_bnd (Space &home, IntView x0, IntView x1, const Ops &ops)
template<class Ops >
ExecStatus prop_nroot_bnd (Space &home, IntView x0, IntView x1, const Ops &ops)
template<class VA , class VB , class Ops >
ExecStatus prop_pow_plus_bnd (Space &home, VA x0, VB x1, const Ops &ops)
template<class Ops >
ExecStatus prop_pow_bnd (Space &home, IntView x0, IntView x1, const Ops &ops)

Detailed Description

Numerical (arithmetic) propagators.


Enumeration Type Documentation

Status of propagation for nary max.

Enumerator:
MPS_ASSIGNED 

All views are assigned.

MPS_REMOVED 

A view is removed.

MPS_NEW_BOUND 

Telling has found a new upper bound.

Definition at line 175 of file max.hpp.


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]

Definition at line 42 of file abs.hpp.

template<class View >
ExecStatus Gecode::Int::Arithmetic::prop_max_bnd ( Space &  home,
View  x0,
View  x1,
View  x2 
) [inline]

Definition at line 45 of file max.hpp.

template<class View >
ExecStatus Gecode::Int::Arithmetic::prop_nary_max_bnd ( Space &  home,
Propagator &  p,
ViewArray< View > &  x,
View  y,
PropCond  pc 
) [inline]

Definition at line 183 of file max.hpp.

long long int Gecode::Int::Arithmetic::mll ( long long int  x,
long long int  y 
) [inline]

Multiply x and .

Definition at line 48 of file mult.hpp.

long long int Gecode::Int::Arithmetic::ll ( int  x  )  [inline]

Cast x into a long long int.

Definition at line 53 of file mult.hpp.

long long int Gecode::Int::Arithmetic::ill ( int  x  )  [inline]

Increment x by one.

Definition at line 58 of file mult.hpp.

long long int Gecode::Int::Arithmetic::dll ( int  x  )  [inline]

Decrement x by one.

Definition at line 63 of file mult.hpp.

template<class View >
bool Gecode::Int::Arithmetic::pos ( const View &  x  )  [inline]

Test whether x is postive.

Definition at line 70 of file mult.hpp.

template<class View >
bool Gecode::Int::Arithmetic::neg ( const View &  x  )  [inline]

Test whether x is negative.

Definition at line 76 of file mult.hpp.

template<class View >
bool Gecode::Int::Arithmetic::any ( const View &  x  )  [inline]

Test whether x is neither positive nor negative.

Definition at line 82 of file mult.hpp.

template<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]

Definition at line 178 of file mult.hpp.

template<class View >
ExecStatus Gecode::Int::Arithmetic::prop_mult_dom ( Space &  home,
Propagator &  p,
View  x0,
View  x1,
View  x2 
) [inline]

Definition at line 272 of file mult.hpp.

template<class Ops , bool minus>
ExecStatus Gecode::Int::Arithmetic::prop_nroot_plus_bnd ( Space &  home,
IntView  x0,
IntView  x1,
const Ops &  ops 
) [inline]

Definition at line 48 of file nroot.hpp.

template<class Ops >
ExecStatus Gecode::Int::Arithmetic::prop_nroot_bnd ( Space &  home,
IntView  x0,
IntView  x1,
const Ops &  ops 
) [inline]

Definition at line 152 of file nroot.hpp.

template<class VA , class VB , class Ops >
ExecStatus Gecode::Int::Arithmetic::prop_pow_plus_bnd ( Space &  home,
VA  x0,
VB  x1,
const Ops &  ops 
) [inline]

Definition at line 47 of file pow.hpp.

template<class Ops >
ExecStatus Gecode::Int::Arithmetic::prop_pow_bnd ( Space &  home,
IntView  x0,
IntView  x1,
const Ops &  ops 
) [inline]

Definition at line 122 of file pow.hpp.