42 namespace Gecode {
namespace Float {
namespace Arithmetic {
48 template<
class VA,
class VB>
53 template<
class VA,
class VB>
68 template<
class VA,
class VB>
73 template<
class VA,
class VB>
79 template<
class VA,
class VB>
141 assert(
x1.min() >= 0);
151 if (
x0.min() > -r.sqrt_up(
x1.min()))
153 else if (
x0.max() < r.sqrt_down(
x1.min()))
167 template<
class A,
class B>
172 template<
class A,
class B>
188 template<
class A,
class B>
193 template<
class A,
class B>
199 template<
class A,
class B>
#define GECODE_REWRITE(prop, post)
Rewrite propagator by executing post function.
ExecStatus ES_SUBSUMED(Propagator &p)
FloatVal hull(const FloatVal &x, const FloatVal &y)
Sqrt(Space &home, Sqrt &p)
Constructor for cloning p.
Propagation has computed fixpoint.
virtual Actor * copy(Space &home)
Create copy during cloning.
Base-class for both propagators and branchers.
static ExecStatus post(Home home, View x0, View x1)
Post propagator for .
static ExecStatus post(Home home, VA x0, VB x1)
Post propagator .
int p
Number of positive literals for node type.
bool same(const ConstView< ViewA > &, const ConstView< ViewB > &)
Test whether two views are the same.
Bounds consistent positive square propagator.
virtual Actor * copy(Space &home)
Create copy during cloning.
Propagator for bounds consistent square operator
virtual ExecStatus propagate(Space &home, const ModEventDelta &med)
Perform propagation.
Execution has resulted in failure.
void sqr(Home home, FloatVar x0, FloatVar x1)
Post propagator for .
Propagator for bounds consistent square root operator
void sqrt(Home home, FloatVar x0, FloatVar x1)
Post propagator for .
Post propagator for SetVar SetOpType SetVar SetRelType SetVar z
#define GECODE_ME_CHECK(me)
Check whether modification event me is failed, and forward failure.
Floating point rounding policy.
Post propagator for SetVar SetOpType SetVar SetRelType r
virtual Actor * copy(Space &home)
Copy propagator during cloning.
virtual ExecStatus propagate(Space &home, const ModEventDelta &med)
Perform propagation.
static ExecStatus post(Home home, A x0, B x1)
Post propagator for .
Sqr(Space &home, Sqr &p)
Constructor for cloning p.
virtual ExecStatus propagate(Space &home, const ModEventDelta &med)
Perform propagation.
Propagation has not computed fixpoint.
const Gecode::PropCond PC_FLOAT_BND
Propagate when minimum or maximum of a view changes.
Gecode toplevel namespace
int ModEventDelta
Modification event deltas.
Home class for posting propagators
SqrPlus(Home home, VA x0, VB x1)
Constructor for posting.