Generated on Tue Feb 11 2025 17:33:26 for Gecode by doxygen 1.12.0
minimodel.hh File Reference

Go to the source code of this file.

Classes

class  Gecode::IntPropLevels
 Class for specifying integer propagation levels used by minimodel. More...
 
class  Gecode::NonLinIntExpr
 Base class for non-linear expressions over integer variables. More...
 
class  Gecode::LinIntExpr
 Linear expressions over integer variables. More...
 
class  Gecode::LinIntRel
 Linear relations over integer variables. More...
 
class  Gecode::NonLinFloatExpr
 Base class for non-linear float expressions. More...
 
class  Gecode::LinFloatExpr
 Float expressions More...
 
class  Gecode::LinFloatRel
 Linear relations. More...
 
class  Gecode::SetExpr
 Set expressions More...
 
class  Gecode::SetCmpRel
 Comparison relation (for two-sided comparisons) More...
 
class  Gecode::SetRel
 Set relations More...
 
class  Gecode::BoolExpr
 Boolean expressions. More...
 
class  Gecode::BoolExpr::Misc
 Miscealloneous Boolean expressions. More...
 
class  Gecode::REG
 Regular expressions over integer values. More...
 
class  Gecode::Slice< A >
 A slice of a matrix. More...
 
class  Gecode::Matrix< A >
 Matrix-interface for arrays. More...
 
class  Gecode::IntMinimizeSpace
 Class for minimizing integer cost. More...
 
class  Gecode::IntMaximizeSpace
 Class for maximizing integer cost. More...
 
class  Gecode::IntLexMinimizeSpace
 Class for lexicographically minimizing integer costs. More...
 
class  Gecode::IntLexMaximizeSpace
 Class for lexicographically maximizing integer costs. More...
 
class  Gecode::FloatMinimizeSpace
 Class for minimizing float cost. More...
 
class  Gecode::FloatMaximizeSpace
 Class for maximizing float cost. More...
 

Namespaces

namespace  Gecode
 Gecode toplevel namespace
 
namespace  Gecode::MiniModel
 Minimalistic modeling support.
 

Macros

#define GECODE_MINIMODEL_EXPORT
 
#define GECODE_LIBRARY_NAME   "MiniModel"
 

Functions

LinIntExpr Gecode::operator+ (int, const IntVar &)
 Construct linear expression as sum of integer variable and integer.
 
LinIntExpr Gecode::operator+ (int, const BoolVar &)
 Construct linear expression as sum of Boolean variable and integer.
 
LinIntExpr Gecode::operator+ (int, const LinIntExpr &)
 Construct linear expression as sum of linear expression and integer.
 
LinIntExpr Gecode::operator+ (const IntVar &, int)
 Construct linear expression as sum of integer variable and integer.
 
LinIntExpr Gecode::operator+ (const BoolVar &, int)
 Construct linear expression as sum of Boolean variable and integer.
 
LinIntExpr Gecode::operator+ (const LinIntExpr &, int)
 Construct linear expression as sum of linear expression and integer.
 
LinIntExpr Gecode::operator+ (const IntVar &, const IntVar &)
 Construct linear expression as sum of integer variables.
 
LinIntExpr Gecode::operator+ (const IntVar &, const BoolVar &)
 Construct linear expression as sum of integer and Boolean variable.
 
LinIntExpr Gecode::operator+ (const BoolVar &, const IntVar &)
 Construct linear expression as sum of Boolean and integer variable.
 
LinIntExpr Gecode::operator+ (const BoolVar &, const BoolVar &)
 Construct linear expression as sum of Boolean variables.
 
LinIntExpr Gecode::operator+ (const IntVar &, const LinIntExpr &)
 Construct linear expression as sum of integer variable and linear expression.
 
LinIntExpr Gecode::operator+ (const BoolVar &, const LinIntExpr &)
 Construct linear expression as sum of Boolean variable and linear expression.
 
LinIntExpr Gecode::operator+ (const LinIntExpr &, const IntVar &)
 Construct linear expression as sum of linear expression and integer variable.
 
LinIntExpr Gecode::operator+ (const LinIntExpr &, const BoolVar &)
 Construct linear expression as sum of linear expression and Boolean variable.
 
LinIntExpr Gecode::operator+ (const LinIntExpr &, const LinIntExpr &)
 Construct linear expression as sum of linear expressions.
 
LinIntExpr Gecode::operator- (int, const IntVar &)
 Construct linear expression as sum of integer variable and integer.
 
LinIntExpr Gecode::operator- (int, const BoolVar &)
 Construct linear expression as sum of Boolean variable and integer.
 
LinIntExpr Gecode::operator- (int, const LinIntExpr &)
 Construct linear expression as sum of integer and linear expression.
 
LinIntExpr Gecode::operator- (const IntVar &, int)
 Construct linear expression as sum of integer variable and integer.
 
LinIntExpr Gecode::operator- (const BoolVar &, int)
 Construct linear expression as sum of Boolean variable and integer.
 
LinIntExpr Gecode::operator- (const LinIntExpr &, int)
 Construct linear expression as sum of linear expression and integer.
 
LinIntExpr Gecode::operator- (const IntVar &, const IntVar &)
 Construct linear expression as sum of integer variables.
 
LinIntExpr Gecode::operator- (const IntVar &, const BoolVar &)
 Construct linear expression as sum of integer and Boolean variable.
 
LinIntExpr Gecode::operator- (const BoolVar &, const IntVar &)
 Construct linear expression as sum of Boolean and integer variable.
 
LinIntExpr Gecode::operator- (const BoolVar &, const BoolVar &)
 Construct linear expression as sum of Boolean variables.
 
LinIntExpr Gecode::operator- (const IntVar &, const LinIntExpr &)
 Construct linear expression as sum of integer variable and linear expression.
 
LinIntExpr Gecode::operator- (const BoolVar &, const LinIntExpr &)
 Construct linear expression as sum of Boolean variable and linear expression.
 
LinIntExpr Gecode::operator- (const LinIntExpr &, const IntVar &)
 Construct linear expression as sum of linear expression and integer variable.
 
LinIntExpr Gecode::operator- (const LinIntExpr &, const BoolVar &)
 Construct linear expression as sum of linear expression and Boolean variable.
 
LinIntExpr Gecode::operator- (const LinIntExpr &, const LinIntExpr &)
 Construct linear expression as sum of linear expressions.
 
LinIntExpr Gecode::operator- (const IntVar &)
 Construct linear expression as negative of integer variable.
 
LinIntExpr Gecode::operator- (const BoolVar &)
 Construct linear expression as negative of Boolean variable.
 
LinIntExpr Gecode::operator- (const LinIntExpr &)
 Construct linear expression as negative of linear expression.
 
LinIntExpr Gecode::operator* (int, const IntVar &)
 Construct linear expression as product of integer coefficient and integer variable.
 
LinIntExpr Gecode::operator* (int, const BoolVar &)
 Construct linear expression as product of integer coefficient and Boolean variable.
 
LinIntExpr Gecode::operator* (const IntVar &, int)
 Construct linear expression as product of integer coefficient and integer variable.
 
LinIntExpr Gecode::operator* (const BoolVar &, int)
 Construct linear expression as product of integer coefficient and Boolean variable.
 
LinIntExpr Gecode::operator* (const LinIntExpr &, int)
 Construct linear expression as product of integer coefficient and linear expression.
 
LinIntExpr Gecode::operator* (int, const LinIntExpr &)
 Construct linear expression as product of integer coefficient and linear expression.
 
LinIntExpr Gecode::sum (const IntVarArgs &x)
 Construct linear expression as sum of integer variables.
 
LinIntExpr Gecode::sum (const IntArgs &a, const IntVarArgs &x)
 Construct linear expression as sum of integer variables with coefficients.
 
LinIntExpr Gecode::sum (const BoolVarArgs &x)
 Construct linear expression as sum of Boolean variables.
 
LinIntExpr Gecode::sum (const IntArgs &a, const BoolVarArgs &x)
 Construct linear expression as sum of Boolean variables with coefficients.
 
LinIntExpr Gecode::sum (const IntArgs &args)
 Construct linear expression as sum of IntArgs.
 
LinIntRel Gecode::operator== (int l, const IntVar &r)
 Construct linear equality relation.
 
LinIntRel Gecode::operator== (int l, const BoolVar &r)
 Construct linear equality relation.
 
LinIntRel Gecode::operator== (int l, const LinIntExpr &r)
 Construct linear equality relation.
 
LinIntRel Gecode::operator== (const IntVar &l, int r)
 Construct linear equality relation.
 
LinIntRel Gecode::operator== (const BoolVar &l, int r)
 Construct linear equality relation.
 
LinIntRel Gecode::operator== (const LinIntExpr &l, int r)
 Construct linear equality relation.
 
LinIntRel Gecode::operator== (const IntVar &l, const IntVar &r)
 Construct linear equality relation.
 
LinIntRel Gecode::operator== (const IntVar &l, const BoolVar &r)
 Construct linear equality relation.
 
LinIntRel Gecode::operator== (const BoolVar &l, const IntVar &r)
 Construct linear equality relation.
 
LinIntRel Gecode::operator== (const BoolVar &l, const BoolVar &r)
 Construct linear equality relation.
 
LinIntRel Gecode::operator== (const IntVar &l, const LinIntExpr &r)
 Construct linear equality relation.
 
LinIntRel Gecode::operator== (const BoolVar &l, const LinIntExpr &r)
 Construct linear equality relation.
 
LinIntRel Gecode::operator== (const LinIntExpr &l, const IntVar &r)
 Construct linear equality relation.
 
LinIntRel Gecode::operator== (const LinIntExpr &l, const BoolVar &r)
 Construct linear equality relation.
 
LinIntRel Gecode::operator== (const LinIntExpr &l, const LinIntExpr &r)
 Construct linear equality relation.
 
LinIntRel Gecode::operator!= (int l, const IntVar &r)
 Construct linear disequality relation.
 
LinIntRel Gecode::operator!= (int l, const BoolVar &r)
 Construct linear disequality relation.
 
LinIntRel Gecode::operator!= (int l, const LinIntExpr &r)
 Construct linear disequality relation.
 
LinIntRel Gecode::operator!= (const IntVar &l, int r)
 Construct linear disequality relation.
 
LinIntRel Gecode::operator!= (const BoolVar &l, int r)
 Construct linear disequality relation.
 
LinIntRel Gecode::operator!= (const LinIntExpr &l, int r)
 Construct linear disequality relation.
 
LinIntRel Gecode::operator!= (const IntVar &l, const IntVar &r)
 Construct linear disequality relation.
 
LinIntRel Gecode::operator!= (const IntVar &l, const BoolVar &r)
 Construct linear disequality relation.
 
LinIntRel Gecode::operator!= (const BoolVar &l, const IntVar &r)
 Construct linear disequality relation.
 
LinIntRel Gecode::operator!= (const BoolVar &l, const BoolVar &r)
 Construct linear disequality relation.
 
LinIntRel Gecode::operator!= (const IntVar &l, const LinIntExpr &r)
 Construct linear disequality relation.
 
LinIntRel Gecode::operator!= (const BoolVar &l, const LinIntExpr &r)
 Construct linear disequality relation.
 
LinIntRel Gecode::operator!= (const LinIntExpr &l, const IntVar &r)
 Construct linear disequality relation.
 
LinIntRel Gecode::operator!= (const LinIntExpr &l, const BoolVar &r)
 Construct linear disequality relation.
 
LinIntRel Gecode::operator!= (const LinIntExpr &l, const LinIntExpr &r)
 Construct linear disequality relation.
 
LinIntRel Gecode::operator< (int l, const IntVar &r)
 Construct linear inequality relation.
 
LinIntRel Gecode::operator< (int l, const BoolVar &r)
 Construct linear inequality relation.
 
LinIntRel Gecode::operator< (int l, const LinIntExpr &r)
 Construct linear inequality relation.
 
LinIntRel Gecode::operator< (const IntVar &l, int r)
 Construct linear inequality relation.
 
LinIntRel Gecode::operator< (const BoolVar &l, int r)
 Construct linear inequality relation.
 
LinIntRel Gecode::operator< (const LinIntExpr &l, int r)
 Construct linear inequality relation.
 
LinIntRel Gecode::operator< (const IntVar &l, const IntVar &r)
 Construct linear inequality relation.
 
LinIntRel Gecode::operator< (const IntVar &l, const BoolVar &r)
 Construct linear inequality relation.
 
LinIntRel Gecode::operator< (const BoolVar &l, const IntVar &r)
 Construct linear inequality relation.
 
LinIntRel Gecode::operator< (const BoolVar &l, const BoolVar &r)
 Construct linear inequality relation.
 
LinIntRel Gecode::operator< (const IntVar &l, const LinIntExpr &r)
 Construct linear inequality relation.
 
LinIntRel Gecode::operator< (const BoolVar &l, const LinIntExpr &r)
 Construct linear inequality relation.
 
LinIntRel Gecode::operator< (const LinIntExpr &l, const IntVar &r)
 Construct linear inequality relation.
 
LinIntRel Gecode::operator< (const LinIntExpr &l, const BoolVar &r)
 Construct linear inequality relation.
 
LinIntRel Gecode::operator< (const LinIntExpr &l, const LinIntExpr &r)
 Construct linear inequality relation.
 
LinIntRel Gecode::operator<= (int l, const IntVar &r)
 Construct linear inequality relation.
 
LinIntRel Gecode::operator<= (int l, const BoolVar &r)
 Construct linear inequality relation.
 
LinIntRel Gecode::operator<= (int l, const LinIntExpr &r)
 Construct linear inequality relation.
 
LinIntRel Gecode::operator<= (const IntVar &l, int r)
 Construct linear inequality relation.
 
LinIntRel Gecode::operator<= (const BoolVar &l, int r)
 Construct linear inequality relation.
 
LinIntRel Gecode::operator<= (const LinIntExpr &l, int r)
 Construct linear inequality relation.
 
LinIntRel Gecode::operator<= (const IntVar &l, const IntVar &r)
 Construct linear inequality relation.
 
LinIntRel Gecode::operator<= (const IntVar &l, const BoolVar &r)
 Construct linear inequality relation.
 
LinIntRel Gecode::operator<= (const BoolVar &l, const IntVar &r)
 Construct linear inequality relation.
 
LinIntRel Gecode::operator<= (const BoolVar &l, const BoolVar &r)
 Construct linear inequality relation.
 
LinIntRel Gecode::operator<= (const IntVar &l, const LinIntExpr &r)
 Construct linear inequality relation.
 
LinIntRel Gecode::operator<= (const BoolVar &l, const LinIntExpr &r)
 Construct linear inequality relation.
 
LinIntRel Gecode::operator<= (const LinIntExpr &l, const IntVar &r)
 Construct linear inequality relation.
 
LinIntRel Gecode::operator<= (const LinIntExpr &l, const BoolVar &r)
 Construct linear inequality relation.
 
LinIntRel Gecode::operator<= (const LinIntExpr &l, const LinIntExpr &r)
 Construct linear inequality relation.
 
LinIntRel Gecode::operator> (int l, const IntVar &r)
 Construct linear inequality relation.
 
LinIntRel Gecode::operator> (int l, const BoolVar &r)
 Construct linear inequality relation.
 
LinIntRel Gecode::operator> (int l, const LinIntExpr &r)
 Construct linear inequality relation.
 
LinIntRel Gecode::operator> (const IntVar &l, int r)
 Construct linear inequality relation.
 
LinIntRel Gecode::operator> (const BoolVar &l, int r)
 Construct linear inequality relation.
 
LinIntRel Gecode::operator> (const LinIntExpr &l, int r)
 Construct linear inequality relation.
 
LinIntRel Gecode::operator> (const IntVar &l, const IntVar &r)
 Construct linear inequality relation.
 
LinIntRel Gecode::operator> (const IntVar &l, const BoolVar &r)
 Construct linear inequality relation.
 
LinIntRel Gecode::operator> (const BoolVar &l, const IntVar &r)
 Construct linear inequality relation.
 
LinIntRel Gecode::operator> (const BoolVar &l, const BoolVar &r)
 Construct linear inequality relation.
 
LinIntRel Gecode::operator> (const IntVar &l, const LinIntExpr &r)
 Construct linear inequality relation.
 
LinIntRel Gecode::operator> (const BoolVar &l, const LinIntExpr &r)
 Construct linear inequality relation.
 
LinIntRel Gecode::operator> (const LinIntExpr &l, const IntVar &r)
 Construct linear inequality relation.
 
LinIntRel Gecode::operator> (const LinIntExpr &l, const BoolVar &r)
 Construct linear inequality relation.
 
LinIntRel Gecode::operator> (const LinIntExpr &l, const LinIntExpr &r)
 Construct linear inequality relation.
 
LinIntRel Gecode::operator>= (int l, const IntVar &r)
 Construct linear inequality relation.
 
LinIntRel Gecode::operator>= (int l, const BoolVar &r)
 Construct linear inequality relation.
 
LinIntRel Gecode::operator>= (int l, const LinIntExpr &r)
 Construct linear inequality relation.
 
LinIntRel Gecode::operator>= (const IntVar &l, int r)
 Construct linear inequality relation.
 
LinIntRel Gecode::operator>= (const BoolVar &l, int r)
 Construct linear inequality relation.
 
LinIntRel Gecode::operator>= (const LinIntExpr &l, int r)
 Construct linear inequality relation.
 
LinIntRel Gecode::operator>= (const IntVar &l, const IntVar &r)
 Construct linear inequality relation.
 
LinIntRel Gecode::operator>= (const IntVar &l, const BoolVar &r)
 Construct linear inequality relation.
 
LinIntRel Gecode::operator>= (const BoolVar &l, const IntVar &r)
 Construct linear inequality relation.
 
LinIntRel Gecode::operator>= (const BoolVar &l, const BoolVar &r)
 Construct linear inequality relation.
 
LinIntRel Gecode::operator>= (const IntVar &l, const LinIntExpr &r)
 Construct linear inequality relation.
 
LinIntRel Gecode::operator>= (const BoolVar &l, const LinIntExpr &r)
 Construct linear inequality relation.
 
LinIntRel Gecode::operator>= (const LinIntExpr &l, const IntVar &r)
 Construct linear inequality relation.
 
LinIntRel Gecode::operator>= (const LinIntExpr &l, const BoolVar &r)
 Construct linear inequality relation.
 
LinIntRel Gecode::operator>= (const LinIntExpr &l, const LinIntExpr &r)
 Construct linear inequality relation.
 
LinFloatExpr Gecode::operator+ (const FloatVal &, const FloatVar &)
 Construct linear float expression as sum of float variable and float.
 
LinFloatExpr Gecode::operator+ (const FloatVal &, const LinFloatExpr &)
 Construct linear float expression as sum of linear float expression and float.
 
LinFloatExpr Gecode::operator+ (const FloatVar &, const FloatVal &)
 Construct linear float expression as sum of float variable and float.
 
LinFloatExpr Gecode::operator+ (const LinFloatExpr &, const FloatVal &)
 Construct linear float expression as sum of linear float expression and float.
 
LinFloatExpr Gecode::operator+ (const FloatVar &, const FloatVar &)
 Construct linear float expression as sum of float variables.
 
LinFloatExpr Gecode::operator+ (const FloatVar &, const LinFloatExpr &)
 Construct linear float expression as sum of float variable and linear float expression.
 
LinFloatExpr Gecode::operator+ (const LinFloatExpr &, const FloatVar &)
 Construct linear float expression as sum of linear float expression and float variable.
 
LinFloatExpr Gecode::operator+ (const LinFloatExpr &, const LinFloatExpr &)
 Construct linear float expression as sum of linear float expressions.
 
LinFloatExpr Gecode::operator- (const FloatVal &, const FloatVar &)
 Construct linear float expression as sum of float variable and float.
 
LinFloatExpr Gecode::operator- (const FloatVal &, const LinFloatExpr &)
 Construct linear float expression as sum of float and linear float expression.
 
LinFloatExpr Gecode::operator- (const FloatVar &, const FloatVal &)
 Construct linear float expression as sum of float variable and float.
 
LinFloatExpr Gecode::operator- (const LinFloatExpr &, const FloatVal &)
 Construct linear float expression as sum of linear float expression and float.
 
LinFloatExpr Gecode::operator- (const FloatVar &, const FloatVar &)
 Construct linear float expression as sum of float variables.
 
LinFloatExpr Gecode::operator- (const FloatVar &, const LinFloatExpr &)
 Construct linear float expression as sum of float variable and linear float expression.
 
LinFloatExpr Gecode::operator- (const LinFloatExpr &, const FloatVar &)
 Construct linear float expression as sum of linear float expression and float variable.
 
LinFloatExpr Gecode::operator- (const LinFloatExpr &, const LinFloatExpr &)
 Construct linear float expression as sum of linear float expressions.
 
LinFloatExpr Gecode::operator- (const FloatVar &)
 Construct linear float expression as negative of float variable.
 
LinFloatExpr Gecode::operator- (const LinFloatExpr &)
 Construct linear float expression as negative of linear float expression.
 
LinFloatExpr Gecode::operator* (const FloatVal &, const FloatVar &)
 Construct linear float expression as product of float coefficient and float variable.
 
LinFloatExpr Gecode::operator* (const FloatVar &, const FloatVal &)
 Construct linear float expression as product of float coefficient and float variable.
 
LinFloatExpr Gecode::operator* (const LinFloatExpr &, const FloatVal &)
 Construct linear float expression as product of float coefficient and linear float expression.
 
LinFloatExpr Gecode::operator* (const FloatVal &, const LinFloatExpr &)
 Construct linear float expression as product of float coefficient and linear float expression.
 
LinFloatExpr Gecode::sum (const FloatVarArgs &x)
 Construct linear float expression as sum of float variables.
 
LinFloatExpr Gecode::sum (const FloatValArgs &a, const FloatVarArgs &x)
 Construct linear float expression as sum of float variables with coefficients.
 
LinFloatRel Gecode::operator== (const FloatVal &l, const FloatVar &r)
 Construct linear float equality relation.
 
LinFloatRel Gecode::operator== (const FloatVal &l, const LinFloatExpr &r)
 Construct linear float equality relation.
 
LinFloatRel Gecode::operator== (const FloatVar &l, const FloatVal &r)
 Construct linear float equality relation.
 
LinFloatRel Gecode::operator== (const LinFloatExpr &l, const FloatVal &r)
 Construct linear float equality relation.
 
LinFloatRel Gecode::operator== (const FloatVar &l, const FloatVar &r)
 Construct linear float equality relation.
 
LinFloatRel Gecode::operator== (const FloatVar &l, const LinFloatExpr &r)
 Construct linear float equality relation.
 
LinFloatRel Gecode::operator== (const LinFloatExpr &l, const FloatVar &r)
 Construct linear float equality relation.
 
LinFloatRel Gecode::operator== (const LinFloatExpr &l, const LinFloatExpr &r)
 Construct linear float equality relation.
 
LinFloatRel Gecode::operator!= (const FloatVal &l, const FloatVar &r)
 Construct linear float disequality relation.
 
LinFloatRel Gecode::operator!= (const FloatVal &l, const LinFloatExpr &r)
 Construct linear float disequality relation.
 
LinFloatRel Gecode::operator!= (const FloatVar &l, const FloatVal &r)
 Construct linear float disequality relation.
 
LinFloatRel Gecode::operator!= (const LinFloatExpr &l, const FloatVal &r)
 Construct linear float disequality relation.
 
LinFloatRel Gecode::operator!= (const FloatVar &l, const FloatVar &r)
 Construct linear float disequality relation.
 
LinFloatRel Gecode::operator!= (const FloatVar &l, const LinFloatExpr &r)
 Construct linear float disequality relation.
 
LinFloatRel Gecode::operator!= (const LinFloatExpr &l, const FloatVar &r)
 Construct linear float disequality relation.
 
LinFloatRel Gecode::operator!= (const LinFloatExpr &l, const LinFloatExpr &r)
 Construct linear float disequality relation.
 
LinFloatRel Gecode::operator< (const FloatVal &l, const FloatVar &r)
 Construct linear float inequality relation.
 
LinFloatRel Gecode::operator< (const FloatVal &l, const LinFloatExpr &r)
 Construct linear float inequality relation.
 
LinFloatRel Gecode::operator< (const FloatVar &l, const FloatVal &r)
 Construct linear float inequality relation.
 
LinFloatRel Gecode::operator< (const LinFloatExpr &l, const FloatVal &r)
 Construct linear float inequality relation.
 
LinFloatRel Gecode::operator< (const FloatVar &l, const FloatVar &r)
 Construct linear float inequality relation.
 
LinFloatRel Gecode::operator< (const FloatVar &l, const LinFloatExpr &r)
 Construct linear float inequality relation.
 
LinFloatRel Gecode::operator< (const LinFloatExpr &l, const FloatVar &r)
 Construct linear float inequality relation.
 
LinFloatRel Gecode::operator< (const LinFloatExpr &l, const LinFloatExpr &r)
 Construct linear float inequality relation.
 
LinFloatRel Gecode::operator<= (const FloatVal &l, const FloatVar &r)
 Construct linear float inequality relation.
 
LinFloatRel Gecode::operator<= (const FloatVal &l, const LinFloatExpr &r)
 Construct linear float inequality relation.
 
LinFloatRel Gecode::operator<= (const FloatVar &l, const FloatVal &r)
 Construct linear float inequality relation.
 
LinFloatRel Gecode::operator<= (const LinFloatExpr &l, const FloatVal &r)
 Construct linear float inequality relation.
 
LinFloatRel Gecode::operator<= (const FloatVar &l, const FloatVar &r)
 Construct linear float inequality relation.
 
LinFloatRel Gecode::operator<= (const FloatVar &l, const LinFloatExpr &r)
 Construct linear float inequality relation.
 
LinFloatRel Gecode::operator<= (const LinFloatExpr &l, const FloatVar &r)
 Construct linear float inequality relation.
 
LinFloatRel Gecode::operator<= (const LinFloatExpr &l, const LinFloatExpr &r)
 Construct linear float inequality relation.
 
LinFloatRel Gecode::operator> (const FloatVal &l, const FloatVar &r)
 Construct linear float inequality relation.
 
LinFloatRel Gecode::operator> (const FloatVal &l, const LinFloatExpr &r)
 Construct linear float inequality relation.
 
LinFloatRel Gecode::operator> (const FloatVar &l, const FloatVal &r)
 Construct linear float inequality relation.
 
LinFloatRel Gecode::operator> (const LinFloatExpr &l, const FloatVal &r)
 Construct linear float inequality relation.
 
LinFloatRel Gecode::operator> (const FloatVar &l, const FloatVar &r)
 Construct linear float inequality relation.
 
LinFloatRel Gecode::operator> (const FloatVar &l, const LinFloatExpr &r)
 Construct linear float inequality relation.
 
LinFloatRel Gecode::operator> (const LinFloatExpr &l, const FloatVar &r)
 Construct linear float inequality relation.
 
LinFloatRel Gecode::operator> (const LinFloatExpr &l, const LinFloatExpr &r)
 Construct linear float inequality relation.
 
LinFloatRel Gecode::operator>= (const FloatVal &l, const FloatVar &r)
 Construct linear float inequality relation.
 
LinFloatRel Gecode::operator>= (const FloatVal &l, const LinFloatExpr &r)
 Construct linear float inequality relation.
 
LinFloatRel Gecode::operator>= (const FloatVar &l, const FloatVal &r)
 Construct linear float inequality relation.
 
LinFloatRel Gecode::operator>= (const LinFloatExpr &l, const FloatVal &r)
 Construct linear float inequality relation.
 
LinFloatRel Gecode::operator>= (const FloatVar &l, const FloatVar &r)
 Construct linear float inequality relation.
 
LinFloatRel Gecode::operator>= (const FloatVar &l, const LinFloatExpr &r)
 Construct linear float inequality relation.
 
LinFloatRel Gecode::operator>= (const LinFloatExpr &l, const FloatVar &r)
 Construct linear float inequality relation.
 
LinFloatRel Gecode::operator>= (const LinFloatExpr &l, const LinFloatExpr &r)
 Construct linear float inequality relation.
 
SetExpr Gecode::singleton (const LinIntExpr &)
 Singleton expression.
 
SetExpr Gecode::operator- (const SetExpr &)
 Complement expression.
 
SetExpr Gecode::operator& (const SetExpr &, const SetExpr &)
 Intersection of set expressions.
 
SetExpr Gecode::operator| (const SetExpr &, const SetExpr &)
 Union of set expressions.
 
SetExpr Gecode::operator+ (const SetExpr &, const SetExpr &)
 Disjoint union of set expressions.
 
SetExpr Gecode::operator- (const SetExpr &, const SetExpr &)
 Difference of set expressions.
 
SetExpr Gecode::inter (const SetVarArgs &)
 Intersection of set variables.
 
SetExpr Gecode::setunion (const SetVarArgs &)
 Union of set variables.
 
SetExpr Gecode::setdunion (const SetVarArgs &)
 Disjoint union of set variables.
 
LinIntExpr Gecode::cardinality (const SetExpr &)
 Cardinality of set expression.
 
LinIntExpr Gecode::min (const SetExpr &)
 Minimum element of set expression.
 
LinIntExpr Gecode::max (const SetExpr &)
 Minimum element of set expression.
 
SetRel Gecode::operator== (const SetExpr &, const SetExpr &)
 Equality of set expressions.
 
SetRel Gecode::operator!= (const SetExpr &, const SetExpr &)
 Disequality of set expressions.
 
SetCmpRel Gecode::operator<= (const SetExpr &, const SetExpr &)
 Subset of set expressions.
 
BoolExpr Gecode::operator<= (const SetCmpRel &, const SetExpr &)
 Subset of set expressions.
 
SetCmpRel Gecode::operator>= (const SetExpr &, const SetExpr &)
 Superset of set expressions.
 
BoolExpr Gecode::operator>= (const SetCmpRel &, const SetExpr &)
 Superset of set expressions.
 
SetRel Gecode::operator|| (const SetExpr &, const SetExpr &)
 Disjointness of set expressions.
 
BoolExpr Gecode::operator! (const BoolExpr &)
 Negated Boolean expression.
 
BoolExpr Gecode::operator&& (const BoolExpr &, const BoolExpr &)
 Conjunction of Boolean expressions.
 
BoolExpr Gecode::operator|| (const BoolExpr &, const BoolExpr &)
 Disjunction of Boolean expressions.
 
BoolExpr Gecode::operator^ (const BoolExpr &, const BoolExpr &)
 Exclusive-or of Boolean expressions.
 
BoolExpr Gecode::operator!= (const BoolExpr &, const BoolExpr &)
 Non-equivalence of Boolean expressions.
 
BoolExpr Gecode::operator== (const BoolExpr &, const BoolExpr &)
 Equivalence of Boolean expressions.
 
BoolExpr Gecode::operator>> (const BoolExpr &, const BoolExpr &)
 Implication of Boolean expressions.
 
BoolExpr Gecode::operator<< (const BoolExpr &, const BoolExpr &)
 Reverse implication of Boolean expressions.
 
BoolExpr Gecode::dom (const IntVar &x, int n)
 Return expression for $ x=n$.
 
BoolExpr Gecode::dom (const IntVar &x, int l, int m)
 Return expression for $ l\leq x \leq m$.
 
BoolExpr Gecode::dom (const IntVar &x, const IntSet &s)
 Return expression for $ x \in s$.
 
BoolExpr Gecode::dom (const SetVar &x, SetRelType rt, int i)
 Return expression for $ x \sim_{rt} \{i\}$.
 
BoolExpr Gecode::dom (const SetVar &x, SetRelType rt, int i, int j)
 Return expression for $ x \sim_{rt} \{i,\dots,j\}$.
 
BoolExpr Gecode::dom (const SetVar &x, SetRelType rt, const IntSet &s)
 Return expression for $ x \sim_{rt} s$.
 
BoolExpr Gecode::dom (const FloatVar &x, const FloatVal &n)
 Return expression for $ x=n$.
 
BoolExpr Gecode::dom (const FloatVar &x, FloatNum l, FloatNum u)
 Return expression for $ l\leq x \leq u$.
 
BoolExpr Gecode::operator== (const SetExpr &s, const LinIntExpr &x)
 Return expression for $|s|\geq 1 \land \forall i\in s:\ i=x$.
 
BoolExpr Gecode::operator== (const LinIntExpr &x, const SetExpr &s)
 Return expression for $|s|\geq 1 \land \forall i\in s:\ x=i$.
 
BoolExpr Gecode::operator== (const LinIntExpr &, IntSet)=delete
 Prevent comparison with IntSet.
 
BoolExpr Gecode::operator== (IntSet, const LinIntExpr &)=delete
 Prevent comparison with IntSet.
 
BoolExpr Gecode::operator!= (const SetExpr &s, const LinIntExpr &x)
 Return expression for $|s|\geq 1 \land \forall i\in s:\ i\neq x$.
 
BoolExpr Gecode::operator!= (const LinIntExpr &x, const SetExpr &s)
 Return expression for $|s|\geq 1 \land \forall i\in s:\ x\neq i$.
 
BoolExpr Gecode::operator!= (const LinIntExpr &, IntSet)=delete
 Prevent comparison with IntSet.
 
BoolExpr Gecode::operator!= (IntSet, const LinIntExpr &)=delete
 Prevent comparison with IntSet.
 
BoolExpr Gecode::operator<= (const SetExpr &s, const LinIntExpr &x)
 Return expression for $|s|\geq 6 \land \forall i\in s:\ i\leq x$.
 
BoolExpr Gecode::operator<= (const LinIntExpr &x, const SetExpr &s)
 Return expression for $|s|\geq 1 \land \forall i\in s:\ x\leq i$.
 
BoolExpr Gecode::operator<= (const LinIntExpr &, IntSet)=delete
 Prevent comparison with IntSet.
 
BoolExpr Gecode::operator<= (IntSet, const LinIntExpr &)=delete
 Prevent comparison with IntSet.
 
BoolExpr Gecode::operator< (const SetExpr &s, const LinIntExpr &x)
 Return expression for $|s|\geq 1 \land \forall i\in s:\ i<x$.
 
BoolExpr Gecode::operator< (const LinIntExpr &x, const SetExpr &s)
 Return expression for $|s|\geq 1 \land \forall i\in s:\ x<i$.
 
BoolExpr Gecode::operator< (const LinIntExpr &, IntSet)=delete
 Prevent comparison with IntSet.
 
BoolExpr Gecode::operator< (IntSet, const LinIntExpr &)=delete
 Prevent comparison with IntSet.
 
BoolExpr Gecode::operator>= (const SetExpr &s, const LinIntExpr &x)
 Return expression for $|s|\geq 1 \land \forall i\in s:\ i\geq x$.
 
BoolExpr Gecode::operator>= (const LinIntExpr &x, const SetExpr &s)
 Return expression for $|s|\geq 1 \land \forall i\in s:\ x\geq i$.
 
BoolExpr Gecode::operator>= (const LinIntExpr &, IntSet)=delete
 Prevent comparison with IntSet.
 
BoolExpr Gecode::operator>= (IntSet, const LinIntExpr &)=delete
 Prevent comparison with IntSet.
 
BoolExpr Gecode::operator> (const SetExpr &s, const LinIntExpr &x)
 Return expression for $|s|\geq 1 \land \forall i\in s:\ i>x$.
 
BoolExpr Gecode::operator> (const LinIntExpr &x, const SetExpr &s)
 Return expression for $|s|\geq 1 \land \forall i\in s:\ x>i$.
 
BoolExpr Gecode::operator> (const LinIntExpr &, IntSet)=delete
 Prevent comparison with IntSet.
 
BoolExpr Gecode::operator> (IntSet, const LinIntExpr &)=delete
 Prevent comparison with IntSet.
 
IntVar Gecode::expr (Home home, const LinIntExpr &e, const IntPropLevels &ipls=IntPropLevels::def)
 Post linear expression and return its value.
 
FloatVar Gecode::expr (Home home, const LinFloatExpr &e)
 Post float expression and return its value.
 
SetVar Gecode::expr (Home home, const SetExpr &e)
 Post set expression and return its value.
 
BoolVar Gecode::expr (Home home, const BoolExpr &e, const IntPropLevels &ipls=IntPropLevels::def)
 Post Boolean expression and return its value.
 
void Gecode::rel (Home home, const BoolExpr &e, const IntPropLevels &ipls=IntPropLevels::def)
 Post Boolean relation.
 
LinIntExpr Gecode::operator* (const LinIntExpr &x, const LinIntExpr &y)
 Return expression for $x\cdot y$.
 
LinIntExpr Gecode::operator/ (const LinIntExpr &x, const LinIntExpr &y)
 Return expression for $x\ \mathrm{div}\ y$.
 
LinIntExpr Gecode::operator% (const LinIntExpr &x, const LinIntExpr &y)
 Return expression for $x\ \mathrm{mod}\ y$.
 
LinIntExpr Gecode::abs (const LinIntExpr &e)
 Return expression for $|e|$.
 
LinIntExpr Gecode::min (const LinIntExpr &x, const LinIntExpr &y)
 Return expression for $\min(x,y)$.
 
LinIntExpr Gecode::min (const IntVarArgs &x)
 Return expression for $\min(x)$.
 
LinIntExpr Gecode::max (const LinIntExpr &x, const LinIntExpr &y)
 Return expression for $\max(x,y)$.
 
LinIntExpr Gecode::max (const IntVarArgs &x)
 Return expression for $\max(x)$.
 
LinIntExpr Gecode::sqr (const LinIntExpr &x)
 Return expression for $x^2$.
 
LinIntExpr Gecode::sqrt (const LinIntExpr &x)
 Return expression for $\lfloor\sqrt{x}\rfloor$.
 
LinIntExpr Gecode::pow (const LinIntExpr &x, int n)
 Return expression for $x^n$.
 
LinIntExpr Gecode::nroot (const LinIntExpr &x, int n)
 Return expression for $\lfloor\sqrt[n]{x}\rfloor$.
 
LinIntExpr Gecode::element (const IntVarArgs &x, const LinIntExpr &y)
 Return expression for $x[y]$.
 
BoolExpr Gecode::element (const BoolVarArgs &x, const LinIntExpr &y)
 Return expression for $x[y]$.
 
LinIntExpr Gecode::element (const IntArgs &x, const LinIntExpr &y)
 Return expression for $x[y]$.
 
LinIntExpr Gecode::ite (const BoolExpr &b, const LinIntExpr &x, const LinIntExpr &y)
 Return expression for if-then-else $b?x:y$.
 
LinFloatExpr Gecode::operator* (const FloatVar &, const FloatVar &)
 Return expression as product of float variables.
 
LinFloatExpr Gecode::operator* (const FloatVar &, const LinFloatExpr &)
 Return expression as product of float variable and linear float expression.
 
LinFloatExpr Gecode::operator* (const LinFloatExpr &, const FloatVar &)
 Return expression as product of linear float expression and float variable.
 
LinFloatExpr Gecode::abs (const LinFloatExpr &e)
 Return expression for $|e|$.
 
LinFloatExpr Gecode::min (const LinFloatExpr &x, const LinFloatExpr &y)
 Return expression for $\min(x,y)$.
 
LinFloatExpr Gecode::min (const FloatVarArgs &x)
 Return expression for $\min(x)$.
 
LinFloatExpr Gecode::max (const LinFloatExpr &x, const LinFloatExpr &y)
 Return expression for $\max(x,y)$.
 
LinFloatExpr Gecode::max (const FloatVarArgs &x)
 Return expression for $\max(x)$.
 
LinFloatExpr Gecode::operator* (const LinFloatExpr &x, const LinFloatExpr &y)
 Return expression for $x\cdot y$.
 
LinFloatExpr Gecode::operator/ (const LinFloatExpr &x, const LinFloatExpr &y)
 Return expression for $x/y$.
 
LinFloatExpr Gecode::sqr (const LinFloatExpr &x)
 Return expression for $x^2$.
 
LinFloatExpr Gecode::sqrt (const LinFloatExpr &x)
 Return expression for $\sqrt{x}$.
 
LinFloatExpr Gecode::pow (const LinFloatExpr &x, int n)
 Return expression for $x^n$.
 
LinFloatExpr Gecode::nroot (const LinFloatExpr &x, int n)
 Return expression for $x^{1/n}$.
 
LinFloatExpr Gecode::exp (const LinFloatExpr &x)
 Return expression for $ \mathrm{exp}(x)$.
 
LinFloatExpr Gecode::log (const LinFloatExpr &x)
 Return expression for $ \mathrm{log}(x)$.
 
LinFloatExpr Gecode::asin (const LinFloatExpr &x)
 Return expression for $ \mathrm{asin}(x)$.
 
LinFloatExpr Gecode::sin (const LinFloatExpr &x)
 Return expression for $ \mathrm{sin}(x)$.
 
LinFloatExpr Gecode::acos (const LinFloatExpr &x)
 Return expression for $ \mathrm{acos}(x)$.
 
LinFloatExpr Gecode::cos (const LinFloatExpr &x)
 Return expression for $ \mathrm{cos}(x)$.
 
LinFloatExpr Gecode::atan (const LinFloatExpr &x)
 Return expression for $ \mathrm{atan}(x)$.
 
LinFloatExpr Gecode::tan (const LinFloatExpr &x)
 Return expression for $ \mathrm{tan}(x)$.
 
BoolVar Gecode::channel (Home home, IntVar x, IntPropLevel ipl=IPL_DEF)
 Return Boolean variable equal to $x$.
 
IntVar Gecode::channel (Home home, BoolVar b, IntPropLevel ipl=IPL_DEF)
 Return integer variable equal to $b$.
 
IntVar Gecode::channel (Home home, FloatVar f)
 Return integer variable equal to $f$.
 
SetVar Gecode::channel (Home home, const IntVarArgs &x, IntPropLevel ipl=IPL_DEF)
 Return set variable equal to $\{x_0,\dots,x_{n-1}\}$.
 
void Gecode::atmost (Home home, const IntVarArgs &x, int n, int m, IntPropLevel ipl=IPL_DEF)
 Post constraint $\#\{i\in\{0,\ldots,|x|-1\}\;|\;x_i=n\}\leq m$.
 
void Gecode::atmost (Home home, const IntVarArgs &x, IntVar y, int m, IntPropLevel ipl=IPL_DEF)
 Post constraint $\#\{i\in\{0,\ldots,|x|-1\}\;|\;x_i=y\}\leq m$.
 
void Gecode::atmost (Home home, const IntVarArgs &x, const IntArgs &y, int m, IntPropLevel ipl=IPL_DEF)
 Post constraint $\#\{i\in\{0,\ldots,|x|-1\}\;|\;x_i=y_i\}\leq m$.
 
void Gecode::atmost (Home home, const IntVarArgs &x, int n, IntVar z, IntPropLevel ipl=IPL_DEF)
 Post constraint $\#\{i\in\{0,\ldots,|x|-1\}\;|\;x_i=n\}\leq z$.
 
void Gecode::atmost (Home home, const IntVarArgs &x, IntVar y, IntVar z, IntPropLevel ipl=IPL_DEF)
 Post constraint $\#\{i\in\{0,\ldots,|x|-1\}\;|\;x_i=y\}\leq z$.
 
void Gecode::atmost (Home home, const IntVarArgs &x, const IntArgs &y, IntVar z, IntPropLevel ipl=IPL_DEF)
 Post constraint $\#\{i\in\{0,\ldots,|x|-1\}\;|\;x_i=y_i\}\leq z$.
 
void Gecode::atleast (Home home, const IntVarArgs &x, int n, int m, IntPropLevel ipl=IPL_DEF)
 Post constraint $\#\{i\in\{0,\ldots,|x|-1\}\;|\;x_i=n\}\geq m$.
 
void Gecode::atleast (Home home, const IntVarArgs &x, IntVar y, int m, IntPropLevel ipl=IPL_DEF)
 Post constraint $\#\{i\in\{0,\ldots,|x|-1\}\;|\;x_i=y\}\geq m$.
 
void Gecode::atleast (Home home, const IntVarArgs &x, const IntArgs &y, int m, IntPropLevel ipl=IPL_DEF)
 Post constraint $\#\{i\in\{0,\ldots,|x|-1\}\;|\;x_i=y_i\}\geq m$.
 
void Gecode::atleast (Home home, const IntVarArgs &x, int n, IntVar z, IntPropLevel ipl=IPL_DEF)
 Post constraint $\#\{i\in\{0,\ldots,|x|-1\}\;|\;x_i=n\}\geq z$.
 
void Gecode::atleast (Home home, const IntVarArgs &x, IntVar y, IntVar z, IntPropLevel ipl=IPL_DEF)
 Post constraint $\#\{i\in\{0,\ldots,|x|-1\}\;|\;x_i=y\}\geq z$.
 
void Gecode::atleast (Home home, const IntVarArgs &x, const IntArgs &y, IntVar z, IntPropLevel ipl=IPL_DEF)
 Post constraint $\#\{i\in\{0,\ldots,|x|-1\}\;|\;x_i=y_i\}\geq z$.
 
void Gecode::exactly (Home home, const IntVarArgs &x, int n, int m, IntPropLevel ipl=IPL_DEF)
 Post constraint $\#\{i\in\{0,\ldots,|x|-1\}\;|\;x_i=n\}=m$.
 
void Gecode::exactly (Home home, const IntVarArgs &x, IntVar y, int m, IntPropLevel ipl=IPL_DEF)
 Post constraint $\#\{i\in\{0,\ldots,|x|-1\}\;|\;x_i=y\}=m$.
 
void Gecode::exactly (Home home, const IntVarArgs &x, const IntArgs &y, int m, IntPropLevel ipl=IPL_DEF)
 Post constraint $\#\{i\in\{0,\ldots,|x|-1\}\;|\;x_i=y_i\}=m$.
 
void Gecode::exactly (Home home, const IntVarArgs &x, int n, IntVar z, IntPropLevel ipl=IPL_DEF)
 Post constraint $\#\{i\in\{0,\ldots,|x|-1\}\;|\;x_i=n\}=z$.
 
void Gecode::exactly (Home home, const IntVarArgs &x, IntVar y, IntVar z, IntPropLevel ipl=IPL_DEF)
 Post constraint $\#\{i\in\{0,\ldots,|x|-1\}\;|\;x_i=y\}=z$.
 
void Gecode::exactly (Home home, const IntVarArgs &x, const IntArgs &y, IntVar z, IntPropLevel ipl=IPL_DEF)
 Post constraint $\#\{i\in\{0,\ldots,|x|-1\}\;|\;x_i=y_i\}=z$.
 
void Gecode::lex (Home home, const IntVarArgs &x, IntRelType r, const IntVarArgs &y, IntPropLevel ipl=IPL_DEF)
 Post lexical order between x and y.
 
void Gecode::lex (Home home, const BoolVarArgs &x, IntRelType r, const BoolVarArgs &y, IntPropLevel ipl=IPL_DEF)
 Post lexical order between x and y.
 
void Gecode::values (Home home, const IntVarArgs &x, IntSet y, IntPropLevel ipl=IPL_DEF)
 Post constraint $\{x_0,\dots,x_{n-1}\}=y$.
 
void Gecode::channel (Home home, const IntVarArgs &x, SetVar y)
 Post constraint $\{x_0,\dots,x_{n-1}\}=y$.
 
void Gecode::range (Home home, const IntVarArgs &x, SetVar y, SetVar z)
 Post constraint $\bigcup_{i\in y}\{x_i\}=z$.
 
void Gecode::roots (Home home, const IntVarArgs &x, SetVar y, SetVar z)
 Post constraint $\bigcup_{i\in z}\{j\ |\ x_j=i\}=z$.
 
template<class A >
Slice< A >::ArgsType Gecode::operator+ (const Slice< A > &x, const Slice< A > &y)
 Concatenate x and y.
 
template<class A >
Slice< A >::ArgsType Gecode::operator+ (const Slice< A > &x, const typename ArrayTraits< A >::ArgsType &y)
 Concatenate x and y.
 
template<class A >
Slice< A >::ArgsType Gecode::operator+ (const typename ArrayTraits< A >::ArgsType &x, const Slice< A > &y)
 Concatenate x and y.
 
template<class A >
Slice< A >::ArgsType Gecode::operator+ (const Slice< A > &x, const typename ArrayTraits< A >::ValueType &y)
 Concatenate x and y.
 
template<class A >
Slice< A >::ArgsType Gecode::operator+ (const typename ArrayTraits< A >::ValueType &x, const Slice< A > &y)
 Concatenate x and y.
 
LinIntExpr Gecode::sum (const Slice< IntArgs > &slice)
 Construct linear expression as sum of IntArgs Slice elements.
 
LinIntExpr Gecode::sum (const Matrix< IntArgs > &matrix)
 Construct linear expression as sum of IntArgs Matrix elements.
 

Macro Definition Documentation

◆ GECODE_MINIMODEL_EXPORT

#define GECODE_MINIMODEL_EXPORT

Definition at line 78 of file minimodel.hh.

◆ GECODE_LIBRARY_NAME

#define GECODE_LIBRARY_NAME   "MiniModel"

Definition at line 85 of file minimodel.hh.