41 #ifdef GECODE_HAS_MPFR
50 using namespace Float;
58 using namespace Float;
65 using namespace Float;
76 using namespace Float;
83 using namespace Float;
88 for (
int i=x.
size();
i--; )
97 using namespace Float;
104 using namespace Float;
105 if (home.
failed())
return;
111 using namespace Float;
112 if (home.
failed())
return;
118 using namespace Float;
121 if (home.
failed())
return;
127 using namespace Float;
130 if (home.
failed())
return;
136 using namespace Float;
137 if (home.
failed())
return;
142 #ifdef GECODE_HAS_MPFR
145 using namespace Float;
146 if (home.
failed())
return;
152 using namespace Float;
153 if (home.
failed())
return;
155 ::
post(home,x1,x0)));
160 using namespace Float;
161 if (home.
failed())
return;
163 ::
post(home,base,x1,x0)));
168 using namespace Float;
169 if (home.
failed())
return;
171 ::
post(home,base,x0,x1)));
176 using namespace Float;
177 if (home.
failed())
return;
183 using namespace Float;
184 if (home.
failed())
return;
190 using namespace Float;
191 if (home.
failed())
return;
197 using namespace Float;
198 if (home.
failed())
return;
204 using namespace Float;
205 if (home.
failed())
return;
211 using namespace Float;
212 if (home.
failed())
return;
219 using namespace Float;
221 if (home.
failed())
return;
227 using namespace Float;
229 if (home.
failed())
return;
bool failed(void) const
Check whether corresponding space is failed.
void mult(Home home, FloatVar x0, FloatVar x1, FloatVar x2)
Post propagator for .
Exception: Value out of limits
void post(Home home, Term *t, int n, FloatRelType frt, FloatVal c)
Post propagator for linear constraint over floats.
void log(Home home, FloatVar x0, FloatVar x1)
Post propagator for .
void channel(Home home, FloatVar x0, IntVar x1)
Post propagator for channeling a float and an integer variable .
int size(void) const
Return size of array (number of elements)
void max(Home home, FloatVar x0, FloatVar x1, FloatVar x2)
Post propagator for .
void abs(Home home, FloatVar x0, FloatVar x1)
Post propagator for .
void nroot(Home home, FloatVar x0, int n, FloatVar x1)
Post propagator for for $n 0$.
void pow(Home home, FloatVar x0, int n, FloatVar x1)
Post propagator for for $n 0$.
Exception: Too few arguments available in argument array
Gecode::IntArgs i(4, 1, 2, 3, 4)
int n
Number of negative literals for node type.
void sqr(Home home, FloatVar x0, FloatVar x1)
Post propagator for .
void sqrt(Home home, FloatVar x0, FloatVar x1)
Post propagator for .
void asin(Home home, FloatVar x0, FloatVar x1)
Post propagator for .
void min(Home home, FloatVar x0, FloatVar x1, FloatVar x2)
Post propagator for .
void cos(Home home, FloatVar x0, FloatVar x1)
Post propagator for .
void div(Home home, FloatVar x0, FloatVar x1, FloatVar x2)
Post propagator for .
Node * x
Pointer to corresponding Boolean expression node.
void tan(Home home, FloatVar x0, FloatVar x1)
Post propagator for .
Gecode toplevel namespace
void sin(Home home, FloatVar x0, FloatVar x1)
Post propagator for .
void acos(Home home, FloatVar x0, FloatVar x1)
Post propagator for .
void exp(Home home, FloatVar x0, FloatVar x1)
Post propagator for .
Home class for posting propagators
#define GECODE_ES_FAIL(es)
Check whether execution status es is failed, and fail space home.
double FloatNum
Floating point number base type.
void atan(Home home, FloatVar x0, FloatVar x1)
Post propagator for .