Generated on Wed Nov 1 15:04:49 2006 for Gecode by doxygen 1.4.5

minimodel.hh File Reference

(Revision: 3579)

#include "gecode/kernel.hh"
#include "gecode/int.hh"
#include "gecode/int/linear.hh"
#include "gecode/minimodel/exception.icc"
#include <iostream>
#include "gecode/minimodel/lin-expr.icc"
#include "gecode/minimodel/lin-rel.icc"
#include "gecode/minimodel/bool-expr.icc"
#include "gecode/minimodel/bool-rel.icc"
#include "gecode/minimodel/matrix.icc"

Go to the source code of this file.

Namespaces

namespace  Gecode
namespace  Gecode::MiniModel

Classes

class  Gecode::MiniModel::LinExpr
 Linear expressions. More...
class  Gecode::MiniModel::LinRel
 Linear relations. More...
class  Gecode::MiniModel::BoolExpr
 Boolean expressions. More...
class  Gecode::MiniModel::BoolExpr::Node
 Node for Boolean expression. More...
class  Gecode::MiniModel::BoolRel
 Boolean relations. More...
class  Gecode::MiniModel::Matrix< A >
 Matrix-interface for arrays. More...
class  Gecode::MiniModel::Matrix< A >::Slice
 A slice of a matrix. More...

Defines

#define GECODE_MINIMODEL_EXPORT

Functions

Gecode::MiniModel::LinExpr operator+ (int, const Gecode::MiniModel::LinExpr &)
 Construct linear expression as sum of linear expression and integer.
Gecode::MiniModel::LinExpr operator+ (const Gecode::MiniModel::LinExpr &, int)
 Construct linear expression as sum of integer and linear expression.
Gecode::MiniModel::LinExpr operator+ (const Gecode::MiniModel::LinExpr &, const Gecode::MiniModel::LinExpr &)
 Construct linear expression as sum of linear expressions.
Gecode::MiniModel::LinExpr operator- (int, const Gecode::MiniModel::LinExpr &)
 Construct linear expression as difference of linear expression and integer.
Gecode::MiniModel::LinExpr operator- (const Gecode::MiniModel::LinExpr &, int)
 Construct linear expression as difference of integer and linear expression.
Gecode::MiniModel::LinExpr operator- (const Gecode::MiniModel::LinExpr &, const Gecode::MiniModel::LinExpr &)
 Construct linear expression as difference of linear expressions.
Gecode::MiniModel::LinExpr operator- (const Gecode::MiniModel::LinExpr &)
 Construct linear expression as negative of linear expression.
Gecode::MiniModel::LinExpr operator * (int, const Gecode::IntVar &)
 Construct linear expression as product of integer coefficient and integer variable.
Gecode::MiniModel::LinExpr operator * (const Gecode::IntVar &, int)
 Construct linear expression as product of integer coefficient and integer variable.
Gecode::MiniModel::LinExpr operator * (const Gecode::MiniModel::LinExpr &, int)
 Construct linear expression as product of integer coefficient and linear expression.
Gecode::MiniModel::LinExpr operator * (int, const Gecode::MiniModel::LinExpr &)
 Construct linear expression as product of integer coefficient and linear expression.
Gecode::MiniModel::LinRel operator== (int l, const Gecode::MiniModel::LinExpr &r)
 Construct linear equality relation.
Gecode::MiniModel::LinRel operator== (const Gecode::MiniModel::LinExpr &l, int r)
 Construct linear equality relation.
Gecode::MiniModel::LinRel operator== (const Gecode::MiniModel::LinExpr &l, const Gecode::MiniModel::LinExpr &r)
 Construct linear equality relation.
Gecode::MiniModel::LinRel operator!= (int l, const Gecode::MiniModel::LinExpr &r)
 Construct linear disequality relation.
Gecode::MiniModel::LinRel operator!= (const Gecode::MiniModel::LinExpr &l, int r)
 Construct linear disequality relation.
Gecode::MiniModel::LinRel operator!= (const Gecode::MiniModel::LinExpr &l, const Gecode::MiniModel::LinExpr &r)
 Construct linear disequality relation.
Gecode::MiniModel::LinRel operator< (int l, const Gecode::MiniModel::LinExpr &r)
 Construct linear inequality relation.
Gecode::MiniModel::LinRel operator< (const Gecode::MiniModel::LinExpr &l, int r)
 Construct linear inequality relation.
Gecode::MiniModel::LinRel operator< (const Gecode::MiniModel::LinExpr &l, const Gecode::MiniModel::LinExpr &r)
 Construct linear inequality relation.
Gecode::MiniModel::LinRel operator<= (int l, const Gecode::MiniModel::LinExpr &r)
 Construct linear inequality relation.
Gecode::MiniModel::LinRel operator<= (const Gecode::MiniModel::LinExpr &l, int r)
 Construct linear inequality relation.
Gecode::MiniModel::LinRel operator<= (const Gecode::MiniModel::LinExpr &l, const Gecode::MiniModel::LinExpr &r)
 Construct linear inequality relation.
Gecode::MiniModel::LinRel operator> (int l, const Gecode::MiniModel::LinExpr &r)
 Construct linear inequality relation.
Gecode::MiniModel::LinRel operator> (const Gecode::MiniModel::LinExpr &l, int r)
 Construct linear inequality relation.
Gecode::MiniModel::LinRel operator> (const Gecode::MiniModel::LinExpr &l, const Gecode::MiniModel::LinExpr &r)
 Construct linear inequality relation.
Gecode::MiniModel::LinRel operator>= (int l, const Gecode::MiniModel::LinExpr &r)
 Construct linear inequality relation.
Gecode::MiniModel::LinRel operator>= (const Gecode::MiniModel::LinExpr &l, int r)
 Construct linear inequality relation.
Gecode::MiniModel::LinRel operator>= (const Gecode::MiniModel::LinExpr &l, const Gecode::MiniModel::LinExpr &r)
 Construct linear inequality relation.
Gecode::MiniModel::BoolExpr operator! (const Gecode::MiniModel::BoolExpr &)
 Negated Boolean expression.
Gecode::MiniModel::BoolExpr operator && (const Gecode::MiniModel::BoolExpr &, const Gecode::MiniModel::BoolExpr &)
 Conjunction of Boolean expressions.
Gecode::MiniModel::BoolExpr operator|| (const Gecode::MiniModel::BoolExpr &, const Gecode::MiniModel::BoolExpr &)
 Disjunction of Boolean expressions.
Gecode::MiniModel::BoolExpr operator^ (const Gecode::MiniModel::BoolExpr &, const Gecode::MiniModel::BoolExpr &)
 Exclusive-or of Boolean expressions.
Gecode::MiniModel::BoolExpr operator~ (const Gecode::MiniModel::LinExpr &)
 Reification of linear expression.
MiniModel::BoolExpr Gecode::eqv (const MiniModel::BoolExpr &, const MiniModel::BoolExpr &)
 Equivalence of Boolean expressions.
MiniModel::BoolExpr Gecode::imp (const MiniModel::BoolExpr &, const MiniModel::BoolExpr &)
 Implication of Boolean expressions.
MiniModel::BoolRel Gecode::tt (const MiniModel::BoolExpr &)
 State that Boolean expression must be true.
MiniModel::BoolRel Gecode::ff (const MiniModel::BoolExpr &)
 State that Boolean expression must be false.
IntVar Gecode::post (Space *home, const MiniModel::LinExpr &e, IntConLevel icl=ICL_DEF)
 Post linear expression and return its value.
IntVar Gecode::post (Space *home, const IntVar &x, IntConLevel icl=ICL_DEF)
 Post linear expression (special case for variable) and return its value.
IntVar Gecode::post (Space *home, int n, IntConLevel icl=ICL_DEF)
 Post linear expression (special case for constant) and return its value.
void Gecode::post (Space *home, const MiniModel::LinRel &r, IntConLevel icl=ICL_DEF)
 Post linear relation.
void Gecode::post (Space *home, bool r, IntConLevel icl=ICL_DEF)
 Make it work for special integer only-case.
BoolVar Gecode::post (Space *home, const MiniModel::BoolExpr &e, IntConLevel icl=ICL_DEF)
 Post Boolean expression and return its value.
BoolVar Gecode::post (Space *home, const BoolVar &b, IntConLevel icl=ICL_DEF)
 Post Boolean expression (special case for variable) and return its value.
void Gecode::post (Space *home, const MiniModel::BoolRel &r, IntConLevel icl=ICL_DEF)
 Post Boolean relation.
IntVar Gecode::abs (Space *home, IntVar x, IntConLevel icl=ICL_DEF)
 Return variable constrained to $|x|$.
IntVar Gecode::min (Space *home, IntVar x, IntVar y, IntConLevel icl=ICL_DEF)
 Return variable constrained to $\min(x,y)$.
IntVar Gecode::min (Space *home, const IntVarArgs &x, IntConLevel icl=ICL_DEF)
 Return variable constrained to $\min(x)$.
IntVar Gecode::max (Space *home, IntVar x, IntVar y, IntConLevel icl=ICL_DEF)
 Return variable constrained to $\max(x,y)$.
IntVar Gecode::max (Space *home, const IntVarArgs &x, IntConLevel icl=ICL_DEF)
 Return variable constrained to $\max(x)$.
IntVar Gecode::mult (Space *home, IntVar x, IntVar y, IntConLevel icl=ICL_DEF)
 Return variable constrained to $x\cdot y$.
IntVar Gecode::sqr (Space *home, IntVar x, IntConLevel icl=ICL_DEF)
 Return variable constrained to $x^2$.
IntVar Gecode::plus (Space *home, IntVar x, IntVar y, IntConLevel icl=ICL_DEF)
 Return variable constrained to $x+y$.
IntVar Gecode::minus (Space *home, IntVar x, IntVar y, IntConLevel icl=ICL_DEF)
 Return variable constrained to $x-y$.
void Gecode::atmost (Space *home, const IntVarArgs &x, int n, int m, IntConLevel icl=ICL_DEF)
 Post propagator for $\#\{i\in\{0,\ldots,|x|-1\}\;|\;x_i=n\}\leq m$.
void Gecode::atmost (Space *home, const IntVarArgs &x, IntVar y, int m, IntConLevel icl=ICL_DEF)
 Post propagator for $\#\{i\in\{0,\ldots,|x|-1\}\;|\;x_i=y\}\leq m$.
void Gecode::atmost (Space *home, const IntVarArgs &x, int n, IntVar z, IntConLevel icl=ICL_DEF)
 Post propagator for $\#\{i\in\{0,\ldots,|x|-1\}\;|\;x_i=n\}\leq z$.
void Gecode::atmost (Space *home, const IntVarArgs &x, IntVar y, IntVar z, IntConLevel icl=ICL_DEF)
 Post propagator for $\#\{i\in\{0,\ldots,|x|-1\}\;|\;x_i=y\}\leq z$.
void Gecode::atleast (Space *home, const IntVarArgs &x, int n, int m, IntConLevel icl=ICL_DEF)
 Post propagator for $\#\{i\in\{0,\ldots,|x|-1\}\;|\;x_i=n\}\geq m$.
void Gecode::atleast (Space *home, const IntVarArgs &x, IntVar y, int m, IntConLevel icl=ICL_DEF)
 Post propagator for $\#\{i\in\{0,\ldots,|x|-1\}\;|\;x_i=y\}\geq m$.
void Gecode::atleast (Space *home, const IntVarArgs &x, int n, IntVar z, IntConLevel icl=ICL_DEF)
 Post propagator for $\#\{i\in\{0,\ldots,|x|-1\}\;|\;x_i=n\}\geq z$.
void Gecode::atleast (Space *home, const IntVarArgs &x, IntVar y, IntVar z, IntConLevel icl=ICL_DEF)
 Post propagator for $\#\{i\in\{0,\ldots,|x|-1\}\;|\;x_i=y\}\geq z$.
void Gecode::exactly (Space *home, const IntVarArgs &x, int n, int m, IntConLevel icl=ICL_DEF)
 Post propagator for $\#\{i\in\{0,\ldots,|x|-1\}\;|\;x_i=n\}=m$.
void Gecode::exactly (Space *home, const IntVarArgs &x, IntVar y, int m, IntConLevel icl=ICL_DEF)
 Post propagator for $\#\{i\in\{0,\ldots,|x|-1\}\;|\;x_i=y\}=m$.
void Gecode::exactly (Space *home, const IntVarArgs &x, int n, IntVar z, IntConLevel icl=ICL_DEF)
 Post propagator for $\#\{i\in\{0,\ldots,|x|-1\}\;|\;x_i=n\}=z$.
void Gecode::exactly (Space *home, const IntVarArgs &x, IntVar y, IntVar z, IntConLevel icl=ICL_DEF)
 Post propagator for $\#\{i\in\{0,\ldots,|x|-1\}\;|\;x_i=y\}=z$.
void Gecode::lex (Space *home, const IntVarArgs &x, IntRelType r, const IntVarArgs &y, IntConLevel icl=ICL_DEF)
 Post propagator for lexical order between x and y.
void Gecode::producer_consumer (Space *home, const IntVarArgs &produce_date, const IntArgs &produce_amount, const IntVarArgs &consume_date, const IntArgs &consume_amount, int initial, IntConLevel icl=ICL_DEF)
 Creates propagator for a producer-consumer constraint.
void Gecode::cumulative (Space *home, const IntVarArgs &start, const IntVarArgs &duration, const IntVarArgs &height, int limit, bool at_most=true, IntConLevel cl=ICL_DEF)
 Creates propagator for the cumulative constraint.
void Gecode::cumulative (Space *home, const IntVarArgs &start, const IntArgs &duration, const IntVarArgs &height, int limit, bool at_most=true, IntConLevel cl=ICL_DEF)
 Creates propagator for the cumulative constraint.
void Gecode::cumulative (Space *home, const IntVarArgs &start, const IntVarArgs &duration, const IntArgs &height, int limit, bool at_most=true, IntConLevel cl=ICL_DEF)
 Creates propagator for the cumulative constraint.
void Gecode::cumulative (Space *home, const IntVarArgs &start, const IntArgs &duration, const IntArgs &height, int limit, bool at_most=true, IntConLevel cl=ICL_DEF)
 Creates propagator for the cumulative constraint.
void Gecode::serialized (Space *home, const IntVarArgs &start, const IntVarArgs &duration, IntConLevel cl=ICL_DEF)
 Creates propagator for the serialized constraint.
void Gecode::serialized (Space *home, const IntVarArgs &start, const IntArgs &duration, IntConLevel cl=ICL_DEF)
 Creates propagator for the serialized constraint.


Define Documentation

#define GECODE_MINIMODEL_EXPORT
 

Definition at line 59 of file minimodel.hh.