Generated on Thu Apr 11 13:59:33 2019 for Gecode by doxygen 1.6.3

Float propagators
[Other available functionality]

Classes

class  Gecode::Float::Arithmetic::Sqr< View >
 Propagator for bounds consistent square operator More...
class  Gecode::Float::Arithmetic::Sqrt< A, B >
 Propagator for bounds consistent square root operator More...
class  Gecode::Float::Arithmetic::Abs< A, B >
 Propagator for bounds consistent absolute operator More...
class  Gecode::Float::Arithmetic::Pow< A, B >
 Propagator for bounds consistent pow operator More...
class  Gecode::Float::Arithmetic::NthRoot< A, B >
 Propagator for bounds consistent nth root operator More...
class  Gecode::Float::Arithmetic::MultZeroOne< View >
 Bounds or domain consistent propagator for $x_0\times x_1=x_0$. More...
class  Gecode::Float::Arithmetic::Mult< View >
 Bounds consistent multiplication propagator. More...
class  Gecode::Float::Arithmetic::Div< A, B, C >
 Propagator for bounds division operator More...
class  Gecode::Float::Arithmetic::Min< A, B, C >
 Propagator for bounds consistent min operator More...
class  Gecode::Float::Arithmetic::Max< A, B, C >
 Propagator for bounds consistent max operator More...
class  Gecode::Float::Arithmetic::NaryMax< View >
 Bounds consistent n-ary maximum propagator. More...
class  Gecode::Float::Bool::Ite< View >
 If-then-else propagator. More...
class  Gecode::Float::Channel::Channel< A, B >
 Propagator for bounds consistent integer part operator More...
class  Gecode::Float::Linear::Eq< P, N >
 Propagator for bounds consistent n-ary linear equality More...
class  Gecode::Float::Linear::Lq< P, N >
 Propagator for bounds consistent n-ary linear less or equal More...
class  Gecode::Float::Rel::Eq< View0, View1 >
 Binary bounds consistent equality propagator. More...
class  Gecode::Float::Rel::NaryEq< View >
 n-ary bounds consistent equality propagator More...
class  Gecode::Float::Rel::ReEq< View, CtrlView, rm >
 Reified binary bounds consistent equality propagator. More...
class  Gecode::Float::Rel::ReEqFloat< View, CtrlView, rm >
 Reified bounds consistent equality with float propagator. More...
class  Gecode::Float::Rel::Nq< View0, View1 >
 Binary bounds consistent disequality propagator. More...
class  Gecode::Float::Rel::NqFloat< View >
 Binary bounds consistent disequality propagator with float value. More...
class  Gecode::Float::Rel::Lq< View >
 Less or equal propagator. More...
class  Gecode::Float::Rel::Le< View >
 Less propagator. More...
class  Gecode::Float::Rel::ReLqFloat< View, CtrlView, rm >
 Reified less or equal with float propagator. More...
class  Gecode::Float::Rel::ReLeFloat< View, CtrlView, rm >
 Reified less with float propagator. More...
class  Gecode::Float::Rel::ReLq< View, CtrlView, rm >
 Reified less or equal propagator. More...
class  Gecode::Float::Transcendental::Exp< A, B >
 Propagator for bounds consistent exp operator More...
class  Gecode::Float::Transcendental::Pow< A, B >
 Propagator for bounds consistent pow operator More...
class  Gecode::Float::Trigonometric::Sin< A, B >
 Propagator for bounds consistent sinus operator More...
class  Gecode::Float::Trigonometric::Cos< A, B >
 Propagator for bounds consistent cosinus operator More...
class  Gecode::Float::Trigonometric::ASin< A, B >
 Propagator for bounds consistent arc sinus operator More...
class  Gecode::Float::Trigonometric::ACos< A, B >
 Propagator for bounds consistent arc cosinus operator More...
class  Gecode::Float::Trigonometric::Tan< A, B >
 Propagator for bounds consistent tangent operator More...
class  Gecode::Float::Trigonometric::ATan< A, B >
 Propagator for bounds consistent arc tangent operator More...

Functions

void Gecode::Float::Linear::post (Home home, Term *t, int n, FloatRelType frt, FloatVal c)
 Post propagator for linear constraint over floats.
void Gecode::Float::Linear::post (Home home, Term *t, int n, FloatRelType frt, FloatVal c, Reify r)
 Post propagator for reified linear constraint over floats.

Detailed Description

This module contains a description of all predefined float propagators. They can be reused, for example, for rewriting newly defined float propagators into already available propagators.


Function Documentation

void Gecode::Float::Linear::post ( Home  home,
Term *  t,
int  n,
FloatRelType  frt,
FloatVal  c 
)

Post propagator for linear constraint over floats.

Parameters:
home current space
t array of linear terms over floats
n size of array
frt type of relation
c result of linear constraint

All variants for linear constraints share the following properties:

  • Variables occuring multiply in the term array are replaced by a single occurence: for example, $ax+bx$ becomes $(a+b)x$.

Requires

void Gecode::Float::Linear::post ( Home  home,
Term *  t,
int  n,
FloatRelType  frt,
FloatVal  c,
Reify  r 
)

Post propagator for reified linear constraint over floats.

Parameters:
home current space
t array of linear terms over Booleans
n size of array
frt type of relation
c result of linear constraint
r reification specification

All variants for linear constraints share the following properties:

  • Variables occuring multiply in the term array are replaced by a single occurence: for example, $ax+bx$ becomes $(a+b)x$.

Requires