42 #ifndef __GECODE_FLOAT_LINEAR_HH__ 43 #define __GECODE_FLOAT_LINEAR_HH__ 53 namespace Gecode {
namespace Float {
namespace Linear {
60 template<
class P,
class N, PropCond pc>
107 template<
class P,
class N>
108 class Eq :
public Lin<P,N,PC_FLOAT_BND> {
137 template<
class P,
class N>
138 class Lq :
public Lin<P,N,PC_FLOAT_BND> {
162 namespace Gecode {
namespace Float {
namespace Linear {
#define GECODE_FLOAT_EXPORT
Propagator for bounds consistent n-ary linear equality
void post(Home home, Term *t, int n, FloatRelType frt, FloatVal c)
Post propagator for linear constraint over floats.
virtual Actor * copy(Space &home, bool share)=0
Create copy.
Propagator for bounds consistent n-ary linear less or equal
virtual size_t dispose(Space &home)
Delete propagator and return its size.
Base-class for n-ary linear propagators.
Base-class for propagators.
ViewArray< N > y
Array of negative views.
Base-class for both propagators and branchers.
ViewArray< P > x
Array of positive views.
int p
Number of positive literals for node type.
int n
Number of negative literals for node type.
FloatRelType
Relation types for floats.
ModEventDelta med
A set of modification events (used during propagation)
Reification specification.
virtual PropCost cost(const Space &home, const ModEventDelta &med) const
Cost function (defined as low linear)
FloatVal c
Constant value.
Float view for float variables.
void estimate(Term *t, int n, FloatVal c, FloatNum &l, FloatNum &u)
Estimate lower and upper bounds.
void bounds_n(ModEventDelta med, ViewArray< View > &y, FloatVal &c, FloatNum &sl, FloatNum &su)
Compute bounds information for negative views.
Class for describing linear term .
Lin(Space &home, bool share, Lin< P, N, pc > &p)
Constructor for cloning p.
virtual ExecStatus propagate(Space &home, const ModEventDelta &med)=0
Propagation function.
Gecode toplevel namespace
int ModEventDelta
Modification event deltas.
Home class for posting propagators
double FloatNum
Floating point number base type.
void bounds_p(ModEventDelta med, ViewArray< View > &x, FloatVal &c, FloatNum &sl, FloatNum &su)
Compute bounds information for positive views.