Generated on Sat Feb 7 2015 02:01:34 for Gecode by doxygen 1.8.9.1
ter-dom.hpp File Reference

(Revision: 10364)

Go to the source code of this file.

Namespaces

 Gecode
 Gecode toplevel namespace
 
 Gecode::Int
 Finite domain integers.
 
 Gecode::Int::Distinct
 Distinct propagators
 

Macros

#define GECODE_INT_HALL_ONE(x0, x1, x2)
 Check whether x0 forms a Hall set of cardinality one. More...
 
#define GECODE_INT_HALL_TWO(x0, x1, x2)
 Check whether x0 and x1 form a Hall set of cardinality two. More...
 

Macro Definition Documentation

#define GECODE_INT_HALL_ONE (   x0,
  x1,
  x2 
)
Value:
if (x0.assigned()) { \
GECODE_ME_CHECK(x1.nq(home,x0.val())); \
GECODE_ME_CHECK(x2.nq(home,x0.val())); \
if (x1.assigned()) { \
GECODE_ME_CHECK(x2.nq(home,x1.val())); \
return home.ES_SUBSUMED(*this); \
} \
if (x2.assigned()) { \
GECODE_ME_CHECK(x1.nq(home,x2.val())); \
return home.ES_SUBSUMED(*this); \
} \
return ES_FIX; \
}
Propagation has computed fixpoint.
Definition: core.hpp:528
#define GECODE_ME_CHECK(me)
Check whether modification event me is failed, and forward failure.
Definition: macros.hpp:45

Check whether x0 forms a Hall set of cardinality one.

Definition at line 70 of file ter-dom.hpp.

#define GECODE_INT_HALL_TWO (   x0,
  x1,
  x2 
)
Value:
if ((x0.size() == 2) && (x1.size() == 2) && \
(x0.min() == x1.min()) && (x0.max() == x1.max())) { \
GECODE_ME_CHECK(x2.nq(home,x0.min())); \
GECODE_ME_CHECK(x2.nq(home,x0.max())); \
return ES_FIX; \
}
Propagation has computed fixpoint.
Definition: core.hpp:528
#define GECODE_ME_CHECK(me)
Check whether modification event me is failed, and forward failure.
Definition: macros.hpp:45

Check whether x0 and x1 form a Hall set of cardinality two.

Definition at line 87 of file ter-dom.hpp.