Go to the documentation of this file.
42 namespace Gecode {
namespace Int {
namespace Unshare {
50 return a->varimp() <
b->varimp();
59 for (
int i=1;
i<
n;
i++)
64 for (
int i=1;
i<
n;
i++)
68 (void) es; assert(es ==
ES_OK);
71 (void) es; assert(es ==
ES_OK);
77 (void) es; assert(es ==
ES_OK);
80 (void) es; assert(es ==
ES_OK);
89 for (
int i=1;
i<
n;
i++)
94 for (
int i=1;
i<
n;
i++)
97 (void) es; assert(es ==
ES_OK);
101 (void) es; assert(es ==
ES_OK);
115 for (
int i=0;
i<
n;
i++)
119 Support::quicksort<Var*,VarPtrLess<Var> >(
y,
n,vpl);
122 for (
int i=0;
i<
n;) {
137 Int::Unshare::unshare<IntVar>(home,
x,
vbd(ipl));
142 Int::Unshare::unshare<BoolVar>(home,
x,
IPL_DEF);
Post propagator for SetVar x
void unshare(Home home, IntVarArgs &x, IntPropLevel ipl)
Replace multiple variable occurences in x by fresh variables.
Post propagator for SetVar SetOpType SetVar y
static ExecStatus post(Home home, ViewArray< View > &x)
Post bounds consistent propagator .
Sort order for variables.
static ExecStatus post(Home home, ViewArray< BV > &x)
Post propagator .
void link(Home home, IntVar **x, int n, IntPropLevel ipl)
Replace by fresh yet equal integer variables.
void max(Home home, FloatVar x0, FloatVar x1, FloatVar x2)
Post propagator for .
Passing integer variables.
bool assigned(View x, int v)
Whether x is assigned to value v.
static ExecStatus post(Home home, BVA x0, BVB x1)
Post propagator .
static ExecStatus post(Home home, View0 x0, View1 x1)
Post domain consistent propagator .
IntPropLevel
Propagation levels for integer propagators.
Base class for variables.
Gecode toplevel namespace
static ExecStatus post(Home home, View0 x0, View1 x1)
Post bounds consistent propagator .
IntPropLevel vbd(IntPropLevel ipl)
Extract value, bounds, or domain propagation from propagation level.
VarImp * varimp(void) const
Return variable implementation of variable.
Passing Boolean variables.
Home class for posting propagators
Post propagator for SetVar SetOpType SetVar SetRelType r
Boolean integer variables.
@ IPL_DOM
Domain propagation Options: basic versus advanced propagation.
static ExecStatus post(Home home, ViewArray< View > &x)
Post domain consistent propagator .
struct Gecode::@602::NNF::@65::@67 a
For atomic nodes.
bool failed(void) const
Check whether corresponding space is failed.
@ IPL_DEF
Simple propagation levels.
void unshare(Home home, VarArgArray< Var > &x, IntPropLevel ipl)
Replace unassigned shared variables by fresh, yet equal variables.
void min(Home home, FloatVar x0, FloatVar x1, FloatVar x2)
Post propagator for .
int n
Number of negative literals for node type.
Argument array for variables.
Gecode::IntArgs i({1, 2, 3, 4})
bool operator()(const Var *a, const Var *b)
@ ES_OK
Execution is okay.