46 namespace Gecode {
namespace Int {
namespace Unshare {
63 for (
int i=1;
i<
n;
i++)
68 for (
int i=1;
i<
n;
i++)
72 (void) es; assert(es ==
ES_OK);
75 (void) es; assert(es ==
ES_OK);
81 (void) es; assert(es ==
ES_OK);
84 (void) es; assert(es ==
ES_OK);
93 for (
int i=1;
i<
n;
i++)
98 for (
int i=1;
i<
n;
i++)
101 (void) es; assert(es ==
ES_OK);
105 (void) es; assert(es ==
ES_OK);
123 Support::quicksort<Var*,VarPtrLess<Var> >(
y,
n,vpl);
126 for (
int i=0;
i<
n;) {
128 while ((
i<n) && y[j]->same(*y[
i]))
131 link(home,&y[j],i-j,ipl);
141 Int::Unshare::unshare<IntVar>(home,
x,
vbd(ipl));
146 Int::Unshare::unshare<BoolVar>(home,
x,
IPL_DEF);
IntPropLevel vbd(IntPropLevel ipl)
Extract value, bounds, or domain propagation from propagation level.
static ExecStatus post(Home home, ViewArray< BV > &x)
Post propagator .
int size(void) const
Return size of array (number of elements)
static ExecStatus post(Home home, ViewArray< View > &x)
Post bounds consistent propagator .
T * alloc(long unsigned int n)
Allocate block of n objects of type T from region.
void max(Home home, FloatVar x0, FloatVar x1, FloatVar x2)
Post propagator for .
static ExecStatus post(Home home, View0 x0, View1 x1)
Post domain consistent propagator .
void unshare(Home home, VarArgArray< Var > &x, IntPropLevel ipl)
Replace unassigned shared variables by fresh, yet equal variables.
static ExecStatus post(Home home, View0 x0, View1 x1)
Post bounds consistent propagator .
Gecode::IntArgs i(4, 1, 2, 3, 4)
int n
Number of negative literals for node type.
static ExecStatus post(Home home, BVA x0, BVB x1)
Post propagator .
Simple propagation levels.
bool failed(void) const
Check whether corresponding space is failed.
void link(Home home, IntVar **x, int n, IntPropLevel ipl)
Replace by fresh yet equal integer variables.
Passing integer variables.
Passing Boolean variables.
Boolean integer variables.
Post propagator for SetVar SetOpType SetVar SetRelType r
void min(Home home, FloatVar x0, FloatVar x1, FloatVar x2)
Post propagator for .
IntPropLevel
Propagation levels for integer propagators.
Post propagator for SetVar SetOpType SetVar y
Base class for variables.
struct Gecode::@585::NNF::@62::@64 a
For atomic nodes.
int min(void) const
Return minimum of domain.
Sort order for variables.
bool assigned(View x, int v)
Whether x is assigned to value v.
Domain propagation Options: basic versus advanced propagation.
Post propagator for SetVar x
Gecode toplevel namespace
Argument array for variables.
static ExecStatus post(Home home, ViewArray< View > &x)
Post domain consistent propagator .
Home class for posting propagators
bool operator()(const Var *a, const Var *b)