69 for (
int i=x.
size();
i--; ) {
74 for (
int i=x.
size();
i--; ) {
79 for (
int i=x.
size();
i--; ) {
84 for (
int i=x.
size();
i--; ) {
89 for (
int i=x.
size();
i--; ) {
94 for (
int i=x.
size();
i--; ) {
105 if (home.
failed())
return;
132 if (home.
failed())
return;
138 for (
int i=x.
size();
i--; )
148 for (
int i=x.
size();
i--; ) {
153 for (
int i=x.
size();
i--; ) {
158 for (
int i=x.
size();
i--; ) {
163 for (
int i=x.
size();
i--; ) {
168 for (
int i=x.
size();
i--; ) {
181 if (home.
failed())
return;
225 ::
post(home,x0,x1,
n)));
229 ::
post(home,x0,x1,
n)));
233 ::
post(home,x0,x1,
n)));
241 ::
post(home,x0,x1,
n)));
245 ::
post(home,x0,x1,
n)));
249 ::
post(home,x0,x1,
n)));
283 ::
post(home,x0,x1,
n)));
287 ::
post(home,x0,x1,
n)));
291 ::
post(home,x0,x1,
n)));
306 if (home.
failed())
return;
350 ::
post(home,x,n,nb)));
354 ::
post(home,x,n,nb)));
358 ::
post(home,x,n,nb)));
366 ::
post(home,x,n,nb)));
370 ::
post(home,x,n,nb)));
374 ::
post(home,x,n,nb)));
408 ::
post(home,x,n,nb)));
412 ::
post(home,x,n,nb)));
416 ::
post(home,x,n,nb)));
464 for (
int i=x.
size();
i--; )
468 for (
int i=x.
size()-1;
i--; )
474 for (
int i=x.
size(); i--; )
475 y[i] = x[x.
size()-1-
i];
487 if (home.
failed())
return;
518 for (
int i=x.
size();
i--; ) {
520 ::
post(home,x[
i],y[i])));
523 for (
int i=x.
size();
i--; ) {
525 ::
post(home,x[
i],y[i])));
bool failed(void) const
Check whether corresponding space is failed.
ModEvent nq(Space &home, int n)
Restrict domain values to be different from n.
ModEvent gr(Space &home, int n)
Restrict domain values to be greater than n.
IntConLevel
Consistency levels for integer propagators.
Inverse implication for reification.
ReifyMode mode(void) const
Return reification mode.
void post(Home home, Term *t, int n, FloatRelType frt, FloatVal c)
Post propagator for linear constraint over floats.
Binary domain consistent equality propagator.
BoolVar var(void) const
Return Boolean control variable.
int size(void) const
Return size of array (number of elements)
ModEvent eq(Space &home, int n)
Restrict domain values to be equal to n.
Reified less or equal with integer propagator.
Lexical disequality propagator.
n-ary domain consistent equality propagator
Reified less or equal propagator.
Nary disequality propagator.
Exception: Unknown relation passed as argument
ModEvent le(Space &home, int n)
Restrict domain values to be less than n.
Gecode::IntArgs i(4, 1, 2, 3, 4)
int n
Number of negative literals for node type.
IntRelType
Relation types for integers.
ModEvent lq(Space &home, int n)
Restrict domain values to be less or equal than n.
Reified binary domain consistent equality propagator.
Reification specification.
Binary bounds consistent equality propagator.
Less or equal propagator.
Reified binary bounds consistent equality propagator.
Passing integer variables.
n-ary less and less or equal propagator
Reified bounds consistent equality with integer propagator.
Integer view for integer variables.
Node * x
Pointer to corresponding Boolean expression node.
Lexical ordering propagator.
void rel(Home home, FloatVar x0, FloatRelType frt, FloatVal n)
Propagates .
The default consistency for a constraint.
ModEvent gq(Space &home, int n)
Restrict domain values to be greater or equal than n.
Binary disequality propagator.
#define GECODE_ME_FAIL(me)
Check whether modification event me is failed, and fail space home.
void fail(void)
Mark space as failed.
n-ary bounds consistent equality propagator
Bounds propagation or consistency.
Exception: Unknown reification mode passed as argument
Gecode toplevel namespace
Implication for reification.
Reified domain consistent equality with integer propagator.
void check(int n, const char *l)
Check whether n is in range, otherwise throw out of limits with information l.
Home class for posting propagators
#define GECODE_ES_FAIL(es)
Check whether execution status es is failed, and fail space home.
Domain propagation or consistency.
Equivalence for reification (default)