47 using namespace Float;
51 for (
int i =
x.size();
i--; ) {
60 using namespace Float;
64 for (
int i =
x.size();
i--; ) {
74 using namespace Float;
75 if (
a.size() !=
x.size())
80 for (
int i =
x.size();
i--; ) {
90 using namespace Float;
91 if (
a.size() !=
x.size())
96 for (
int i =
x.size();
i--; ) {
105 using namespace Float;
109 for (
int i =
x.size();
i--; ) {
127 if (home.
failed())
return;
128 t[
x.size()].a=-1.0;
t[
x.size()].x=
y;
135 using namespace Float;
139 for (
int i =
x.size();
i--; ) {
142 t[
x.size()].a=-1;
t[
x.size()].x=
y;
150 using namespace Float;
151 if (
a.size() !=
x.size())
156 for (
int i =
x.size();
i--; ) {
174 if (home.
failed())
return;
175 t[
x.size()].a=-1.0;
t[
x.size()].x=
y;
183 using namespace Float;
184 if (
a.size() !=
x.size())
189 for (
int i =
x.size();
i--; ) {
192 t[
x.size()].a=-1.0;
t[
x.size()].x=
y;
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 .
struct Gecode::@579::NNF::@61::@63 a
For atomic nodes.
Gecode::IntArgs i(4, 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.