65 ::
post(home,xv,off)));
68 ::
post(home,xv,off)));
87 if ((
y.size() !=
n) || (
c.size() !=
n*
n))
92 for (
int i=0;
i<offset;
i++)
94 for (
int i=0;
i<
n;
i++) {
95 for (
int j=0; j<
n; j++)
96 cx[offset+j] =
c[
i*
n+j];
134 for (
int i=0;
i<
n;
i++)
144 ::
post(home,xv,no)));
147 ::
post(home,xv,no)));
152 for (
int i=0;
i<offset;
i++)
154 for (
int i=0;
i<
n;
i++)
155 ox[offset +
i] =
x[
i];
161 ::
post(home,xv,off)));
164 ::
post(home,xv,off)));
171 path(home,0,
x,s,e,ipl);
185 if ((
y.size() !=
n) || (
c.size() !=
n*
n))
188 path(home, offset,
x, s, e, ipl);
190 for (
int i=0;
i<offset;
i++)
193 for (
int i=0;
i<
n;
i++) {
194 for (
int j=0; j<
n; j++)
195 cx[offset+j] =
c[
i*
n+j];
214 path(home,
c, offset,
x, s, e,
y,
z, ipl);
int n
Number of negative literals for node type.
Node * x
Pointer to corresponding Boolean expression node.
Home class for posting propagators
Passing integer arguments.
Passing integer variables.
Exception: Arguments contain same variable multiply
Exception: Arguments are of different size
"Domain consistent" circuit propagator
"Value-consistent" circuit propagator
Integer view for integer variables.
Converter without offsets.
Converter with fixed offset.
Exception: Too few arguments available in argument array
void circuit(Home home, int offset, const IntVarArgs &x, IntPropLevel ipl)
Post propagator such that x forms a circuit.
void path(Home home, int offset, const IntVarArgs &x, IntVar s, IntVar e, IntPropLevel ipl)
Post propagator such that x forms a Hamiltonian path.
void element(Home home, IntSharedArray c, IntVar x0, IntVar x1, IntPropLevel)
Post domain consistent propagator for .
Post propagator for SetVar SetOpType SetVar SetRelType SetVar z
Post propagator for SetVar SetOpType SetVar y
void post(Home home, Term *t, int n, FloatRelType frt, FloatVal c)
Post propagator for linear constraint over floats.
#define GECODE_POST
Check for failure in a constraint post function.
#define GECODE_ES_FAIL(es)
Check whether execution status es is failed, and fail space home.
void linear(Home home, const FloatVarArgs &x, FloatRelType frt, FloatVal c)
Post propagator for .
IntPropLevel
Propagation levels for integer propagators.
@ IPL_DOM
Domain propagation Options: basic versus advanced propagation.
IntPropLevel vbd(IntPropLevel ipl)
Extract value, bounds, or domain propagation from propagation level.
bool same(VarArgArray< Var > x, VarArgArray< Var > y)
void nonnegative(int n, const char *l)
Check whether n is in range and nonnegative, otherwise throw out of limits with information l.
const int min
Smallest allowed integer value.
const int max
Largest allowed integer value.
Gecode::IntArgs i({1, 2, 3, 4})