58 ::
post(home,xv,y,m)));
65 ::
post(home,xv,y,z,0)));
72 ::
post(home,xv,y,m)));
78 ::
post(home,xv,y,m)));
99 ::
post(home,xv,y,z,0)));
102 ::
post(home,xv,y,z,0)));
110 ::
post(home,xv,y,z,0)));
117 ::
post(home,xv,y,m)));
126 ::
post(home,xv,y,z,0)));
129 ::
post(home,xv,y,z,0)));
151 if (home.
failed())
return;
163 ::
post(home,xv,y,z,0)));
185 if (
x.size() != y.
size())
188 if (home.
failed())
return;
191 for (
int i=
x.size();
i--; )
198 ::
post(home,xy,zero,m)));
205 ::
post(home,xy,zero,z,0)));
212 ::
post(home,xy,zero,m)));
218 ::
post(home,xy,zero,m)));
230 if (home.
failed())
return;
236 ::
post(home,xv,yv,z,0)));
243 ::
post(home,xv,yv,nz,0)));
248 ::
post(home,xv,yv,z,-1)));
252 ::
post(home,xv,yv,z,0)));
256 ::
post(home,xv,yv,z,1)));
260 ::
post(home,xv,yv,z,0)));
271 if (home.
failed())
return;
277 ::
post(home,xv,y,z,0)));
280 ::
post(home,xv,y,z,0)));
287 ::
post(home,xv,y,nz,0)));
292 ::
post(home,xv,y,z,-1)));
296 ::
post(home,xv,y,z,0)));
301 ::
post(home,xv,y,z,1)));
304 ::
post(home,xv,y,z,0)));
309 ::
post(home,xv,y,z,0)));
312 ::
post(home,xv,y,z,0)));
332 if (home.
failed())
return;
337 ::
post(home,xv,y,z,0)));
344 ::
post(home,xv,y,nz,0)));
349 ::
post(home,xv,y,z,-1)));
353 ::
post(home,xv,y,z,0)));
357 ::
post(home,xv,y,z,1)));
361 ::
post(home,xv,y,z,0)));
372 if (
x.size() != y.
size())
374 if (home.
failed())
return;
377 for (
int i=
x.size();
i--; )
384 ::
post(home,xy,
u,z,0)));
391 ::
post(home,xy,
u,nz,0)));
396 ::
post(home,xy,
u,z,-1)));
400 ::
post(home,xy,
u,z,0)));
404 ::
post(home,xy,
u,z,1)));
408 ::
post(home,xy,
u,z,0)));
IntConLevel
Consistency levels for integer propagators.
int size(void) const
Return size of array (number of elements)
void post(Home home, Term *t, int n, FloatRelType frt, FloatVal c)
Post propagator for linear constraint over floats.
Propagator for counting views (equal to number of equal views)
int min(int i) const
Return minimum of range at position i.
Propagator for counting views (less or equal integer to number of equal views)
Propagator for counting views (greater or equal to number of equal views)
Exception: Unknown relation passed as argument
Gecode::IntArgs i(4, 1, 2, 3, 4)
int n
Number of negative literals for node type.
Propagator for counting views (equal integer to number of equal views)
IntRelType
Relation types for integers.
int max(int i) const
Return maximum of range at position i.
unsigned int size(void) const
Return size (cardinality) of set.
bool failed(void) const
Check whether corresponding space is failed.
Propagator for counting views (less or equal to number of equal views)
Passing integer variables.
Passing integer arguments.
Propagator for counting views (greater or equal integer to number of equal views)
Integer view for integer variables.
Node * x
Pointer to corresponding Boolean expression node.
union Gecode::@511::NNF::@54 u
Union depending on nodetype t.
void count(Home home, const IntVarArgs &x, int n, IntRelType irt, int m, IntConLevel)
Post propagator for .
The default consistency for a constraint.
Binary disequality propagator.
#define GECODE_ME_FAIL(me)
Check whether modification event me is failed, and fail space home.
Gecode toplevel namespace
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
Exception: Arguments are of different size
#define GECODE_ES_FAIL(es)
Check whether execution status es is failed, and fail space home.
Domain propagation or consistency.