40 #ifndef __GECODE_INT_ARITHMETIC_HH__ 41 #define __GECODE_INT_ARITHMETIC_HH__ 54 namespace Gecode {
namespace Int {
namespace Arithmetic {
126 namespace Gecode {
namespace Int {
namespace Arithmetic {
252 namespace Gecode {
namespace Int {
namespace Arithmetic {
263 template<
class VA,
class VB,
bool tiebreak>
296 namespace Gecode {
namespace Int {
namespace Arithmetic {
307 bool even(
void)
const;
313 template<
class IntType>
316 int tpow(
int x)
const;
334 static bool even(
int m);
336 bool powgr(
long long int r,
int x)
const;
338 bool powle(
long long int r,
int x)
const;
343 bool even(
void)
const;
349 template<
class IntType>
352 int tpow(
int x)
const;
363 namespace Gecode {
namespace Int {
namespace Arithmetic {
370 template<
class VA,
class VB,
class Ops>
421 template<
class VA,
class VB,
class Ops>
487 namespace Gecode {
namespace Int {
namespace Arithmetic {
495 template<
class Ops,
bool minus>
547 template<
class Ops,
bool minus>
613 namespace Gecode {
namespace Int {
namespace Arithmetic {
621 template<
class View, PropCond pc>
649 template<
class VA,
class VB,
class VC>
704 template<
class VA,
class VB,
class VC>
771 namespace Gecode {
namespace Int {
namespace Arithmetic {
778 template<
class VA,
class VB,
class VC>
Bounds consistent positive division propagator.
Integer division/modulo propagator.
Domain consistent ternary maximum propagator.
Domain consistent n-th root propagator.
Positive bounds consistent n-th root propagator.
Domain consistent n-ary maximum propagator.
void pow(Home home, FloatVar x0, int n, FloatVar x1)
Post propagator for for $n 0$.
bool powle(int n, long long int r, int x)
bool equal(I &i, J &j)
Check whether range iterators i and j are equal.
Base-class for propagators.
Bounds consistent power propagator.
virtual size_t dispose(Space &home)
Delete propagator and return its size.
VB y
Position of maximum view (maximal argument)
Base-class for both propagators and branchers.
Bounds consistent absolute value propagator.
int p
Number of positive literals for node type.
int n
Number of negative literals for node type.
Domain consistent n-th root propagator.
Domain consistent absolute value propagator.
Domain consistent positive multiplication propagator.
RelTest
Result of testing relation.
Mixed ternary propagator.
ModEventDelta med
A set of modification events (used during propagation)
virtual ExecStatus propagate(Space &home, const ModEventDelta &med)
Perform propagation.
Bounds consistent positive power propagator.
Operations for square and square-root propagators.
Bounds consistent n-ary maximum propagator.
int n
The exponent and root index.
Argument maximum propagator.
Bounds consistent division propagator.
virtual Actor * copy(Space &home, bool share)
Copy propagator during cloning.
bool powgr(int n, long long int r, int x)
Domain consistent power propagator.
Domain consistent positive power propagator.
Integer view for integer variables.
Bounds consistent multiplication propagator.
Node * x
Pointer to corresponding Boolean expression node.
Operations for power and nroot propagators.
Bounds consistent ternary maximum propagator.
virtual PropCost cost(const Space &home, const ModEventDelta &med) const
Cost function.
IdxViewArray< VA > x
Map of index and views.
Gecode toplevel namespace
Bounds or domain consistent propagator for .
Domain consistent multiplication propagator.
IntType
Description of integer types.
#define GECODE_INT_EXPORT
void exp(Home home, FloatVar x0, FloatVar x1)
Post propagator for .
int ModEventDelta
Modification event deltas.
Home class for posting propagators
Bounds consistent n-th root propagator.
AbsBnd(Space &home, bool share, AbsBnd &p)
Constructor for cloning p.
Bounds consistent positive multiplication propagator.
static ExecStatus post(Home home, View x0, View x1)
Post bounds consistent propagator .