43 using namespace Float;
47 for (
int i = x.
size();
i--; ) {
48 t[
i].
a=1.0; t[
i].
x=x[
i];
56 using namespace Float;
60 for (
int i = x.
size();
i--; ) {
61 t[
i].
a=1.0; t[
i].
x=x[
i];
70 using namespace Float;
76 for (
int i = x.
size();
i--; ) {
86 using namespace Float;
92 for (
int i = x.
size();
i--; ) {
101 using namespace Float;
105 for (
int i = x.
size();
i--; ) {
106 t[
i].
a=1.0; t[
i].
x=x[
i];
123 if (home.
failed())
return;
131 using namespace Float;
135 for (
int i = x.
size();
i--; ) {
136 t[
i].
a=1.0; t[
i].
x=x[
i];
146 using namespace Float;
152 for (
int i = x.
size();
i--; ) {
170 if (home.
failed())
return;
179 using namespace Float;
185 for (
int i = x.
size();
i--; ) {
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.
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 .
void linear(Home home, const FloatVarArgs &x, FloatRelType frt, FloatVal c)
Post propagator for .
Gecode::IntArgs i({1, 2, 3, 4})
FloatRelType
Relation types for floats.
bool failed(void) const
Check whether corresponding space is failed.
Reification specification.
Post propagator for SetVar SetOpType SetVar SetRelType r
void min(Home home, FloatVar x0, FloatVar x1, FloatVar x2)
Post propagator for .
Post propagator for SetVar SetOpType SetVar y
void estimate(Term *t, int n, FloatVal c, FloatNum &l, FloatNum &u)
Estimate lower and upper bounds.
Post propagator for SetVar x
#define GECODE_ME_FAIL(me)
Check whether modification event me is failed, and fail space home.
Class for describing linear term .
Gecode toplevel namespace
#define GECODE_POST
Check for failure in a constraint post function.
Home class for posting propagators
Exception: Arguments are of different size
double FloatNum
Floating point number base type.
struct Gecode::@593::NNF::@62::@64 a
For atomic nodes.