Generated on for Gecode by doxygen 1.17.0

Functions

void Gecode::linear (Home home, const FloatVarArgs &x, FloatRelType frt, FloatVal c)
 Post propagator for \(\sum_{i=0}^{|x|-1}x_i\sim_{frt} c\).
void Gecode::linear (Home home, const FloatVarArgs &x, FloatRelType frt, FloatVar y)
 Post propagator for \(\sum_{i=0}^{|x|-1}x_i\sim_{frt} y\).
void Gecode::linear (Home home, const FloatVarArgs &x, FloatRelType frt, FloatVal c, Reify r)
 Post propagator for \(\left(\sum_{i=0}^{|x|-1}x_i\sim_{frt} c\right)\equiv r\).
void Gecode::linear (Home home, const FloatVarArgs &x, FloatRelType frt, FloatVar y, Reify r)
 Post propagator for \(\left(\sum_{i=0}^{|x|-1}x_i\sim_{frt} y\right)\equiv r\).
void Gecode::linear (Home home, const FloatValArgs &a, const FloatVarArgs &x, FloatRelType frt, FloatVal c)
 Post propagator for \(\sum_{i=0}^{|x|-1}a_i\cdot x_i\sim_{frt} c\).
void Gecode::linear (Home home, const FloatValArgs &a, const FloatVarArgs &x, FloatRelType frt, FloatVar y)
 Post propagator for \(\sum_{i=0}^{|x|-1}a_i\cdot x_i\sim_{frt} y\).
void Gecode::linear (Home home, const FloatValArgs &a, const FloatVarArgs &x, FloatRelType frt, FloatVal c, Reify r)
 Post propagator for \(\left(\sum_{i=0}^{|x|-1}a_i\cdot x_i\sim_{frt} c\right)\equiv r\).
void Gecode::linear (Home home, const FloatValArgs &a, const FloatVarArgs &x, FloatRelType frt, FloatVar y, Reify r)
 Post propagator for \(\left(\sum_{i=0}^{|x|-1}a_i\cdot x_i\sim_{frt} y\right)\equiv r\).

Detailed Description

Function Documentation

◆ linear() [1/8]

void Gecode::linear ( Home home,
const FloatVarArgs & x,
FloatRelType frt,
FloatVal c )

Post propagator for \(\sum_{i=0}^{|x|-1}x_i\sim_{frt} c\).

  • Throws an exception of type Float::OutOfLimits, if the variables, coefficients, or c exceed the limits as defined in Float::Limits.
  • Throws an exception of type Float::ValueMixedSign, if a coefficient has mixed signs (that is, the lower bound is strictly negative and the upper bound is strictly positive).

◆ linear() [2/8]

void Gecode::linear ( Home home,
const FloatVarArgs & x,
FloatRelType frt,
FloatVar y )

Post propagator for \(\sum_{i=0}^{|x|-1}x_i\sim_{frt} y\).

  • Throws an exception of type Float::OutOfLimits, if the variables, coefficients, or c exceed the limits as defined in Float::Limits.
  • Throws an exception of type Float::ValueMixedSign, if a coefficient has mixed signs (that is, the lower bound is strictly negative and the upper bound is strictly positive).

◆ linear() [3/8]

void Gecode::linear ( Home home,
const FloatVarArgs & x,
FloatRelType frt,
FloatVal c,
Reify r )

Post propagator for \(\left(\sum_{i=0}^{|x|-1}x_i\sim_{frt} c\right)\equiv r\).

  • Throws an exception of type Float::OutOfLimits, if the variables, coefficients, or c exceed the limits as defined in Float::Limits.
  • Throws an exception of type Float::ValueMixedSign, if a coefficient has mixed signs (that is, the lower bound is strictly negative and the upper bound is strictly positive).

◆ linear() [4/8]

void Gecode::linear ( Home home,
const FloatVarArgs & x,
FloatRelType frt,
FloatVar y,
Reify r )

Post propagator for \(\left(\sum_{i=0}^{|x|-1}x_i\sim_{frt} y\right)\equiv r\).

  • Throws an exception of type Float::OutOfLimits, if the variables, coefficients, or c exceed the limits as defined in Float::Limits.
  • Throws an exception of type Float::ValueMixedSign, if a coefficient has mixed signs (that is, the lower bound is strictly negative and the upper bound is strictly positive).

◆ linear() [5/8]

void Gecode::linear ( Home home,
const FloatValArgs & a,
const FloatVarArgs & x,
FloatRelType frt,
FloatVal c )

Post propagator for \(\sum_{i=0}^{|x|-1}a_i\cdot x_i\sim_{frt} c\).

  • Throws an exception of type Float::ArgumentSizeMismatch, if a and x are of different size.
  • Throws an exception of type Float::OutOfLimits, if the variables, coefficients, or c exceed the limits as defined in Float::Limits.
  • Throws an exception of type Float::ValueMixedSign, if a coefficient has mixed signs (that is, the lower bound is strictly negative and the upper bound is strictly positive).

◆ linear() [6/8]

void Gecode::linear ( Home home,
const FloatValArgs & a,
const FloatVarArgs & x,
FloatRelType frt,
FloatVar y )

Post propagator for \(\sum_{i=0}^{|x|-1}a_i\cdot x_i\sim_{frt} y\).

  • Throws an exception of type Float::ArgumentSizeMismatch, if a and x are of different size.
  • Throws an exception of type Float::OutOfLimits, if the variables, coefficients, or c exceed the limits as defined in Float::Limits.
  • Throws an exception of type Float::ValueMixedSign, if a coefficient has mixed signs (that is, the lower bound is strictly negative and the upper bound is strictly positive).

◆ linear() [7/8]

void Gecode::linear ( Home home,
const FloatValArgs & a,
const FloatVarArgs & x,
FloatRelType frt,
FloatVal c,
Reify r )

Post propagator for \(\left(\sum_{i=0}^{|x|-1}a_i\cdot x_i\sim_{frt} c\right)\equiv r\).

  • Throws an exception of type Float::ArgumentSizeMismatch, if a and x are of different size.
  • Throws an exception of type Float::OutOfLimits, if the variables, coefficients, or c exceed the limits as defined in Float::Limits.
  • Throws an exception of type Float::ValueMixedSign, if a coefficient has mixed signs (that is, the lower bound is strictly negative and the upper bound is strictly positive).

◆ linear() [8/8]

void Gecode::linear ( Home home,
const FloatValArgs & a,
const FloatVarArgs & x,
FloatRelType frt,
FloatVar y,
Reify r )

Post propagator for \(\left(\sum_{i=0}^{|x|-1}a_i\cdot x_i\sim_{frt} y\right)\equiv r\).

  • Throws an exception of type Float::ArgumentSizeMismatch, if a and x are of different size.
  • Throws an exception of type Float::OutOfLimits, if the variables, coefficients, or c exceed the limits as defined in Float::Limits.
  • Throws an exception of type Float::ValueMixedSign, if a coefficient has mixed signs (that is, the lower bound is strictly negative and the upper bound is strictly positive).