42namespace 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++)
122 for (
int i=0; i<
n;) {
124 while ((i<
n) && (
y[j]->varimp() ==
y[i]->varimp()))
126 if (!
y[j]->assigned())
127 link(home,&
y[j],i-j,ipl);
struct Gecode::@603::NNF::@65::@66 b
For binary nodes (and, or, eqv)
int n
Number of negative literals for node type.
struct Gecode::@603::NNF::@65::@67 a
For atomic nodes.
Passing Boolean variables.
Boolean integer variables.
Home class for posting propagators
bool failed(void) const
Check whether corresponding space is failed.
Passing integer variables.
static ExecStatus post(Home home, BVA x0, BVB x1)
Post propagator .
static ExecStatus post(Home home, ViewArray< BV > &x)
Post propagator .
static ExecStatus post(Home home, View0 x0, View1 x1)
Post bounds consistent propagator .
static ExecStatus post(Home home, View0 x0, View1 x1)
Post domain consistent propagator .
static ExecStatus post(Home home, ViewArray< View > &x)
Post bounds consistent propagator .
static ExecStatus post(Home home, ViewArray< View > &x)
Post domain consistent propagator .
Sort order for variables.
bool operator()(const Var *a, const Var *b)
Argument array for variables.
Base class for variables.
IntPropLevel
Propagation levels for integer propagators.
@ IPL_DOM
Domain propagation Options: basic versus advanced propagation.
@ IPL_DEF
Simple propagation levels.
void unshare(Home home, VarArgArray< Var > &x, IntPropLevel ipl)
Replace unassigned shared variables by fresh, yet equal variables.
void link(Home home, IntVar **x, int n, IntPropLevel ipl)
Replace by fresh yet equal integer variables.
void quicksort(Type *l, Type *r, Less &less)
Standard quick sort.
Gecode toplevel namespace
Post propagator for SetVar SetOpType SetVar SetRelType r
void min(Home home, FloatVar x0, FloatVar x1, FloatVar x2)
Post propagator for .
IntPropLevel vbd(IntPropLevel ipl)
Extract value, bounds, or domain propagation from propagation level.
Post propagator for SetVar SetOpType SetVar y
@ ES_OK
Execution is okay.
void unshare(Home home, IntVarArgs &x, IntPropLevel ipl=IPL_DEF)
Replace multiple variable occurences in x by fresh variables.
void max(Home home, FloatVar x0, FloatVar x1, FloatVar x2)
Post propagator for .
Post propagator for SetVar x