
Linear expressions over integer variables. More...
#include <minimodel.hh>
Classes | |
| class | Node |
| Nodes for linear expressions. More... | |
Public Types | |
| enum | NodeType { NT_CONST, NT_VAR_INT, NT_VAR_BOOL, NT_NONLIN, NT_SUM_INT, NT_SUM_BOOL, NT_ADD, NT_SUB, NT_MUL } |
| Type of linear expression. More... | |
Public Member Functions | |
| LinIntExpr (void) | |
| Default constructor. More... | |
| LinIntExpr (int c) | |
| Create expression for constant c. More... | |
| LinIntExpr (const IntVar &x, int a=1) | |
| Create expression. More... | |
| LinIntExpr (const BoolVar &x, int a=1) | |
| Create expression. More... | |
| LinIntExpr (const IntVarArgs &x) | |
| Create sum expression. More... | |
| LinIntExpr (const IntArgs &a, const IntVarArgs &x) | |
| Create sum expression. More... | |
| LinIntExpr (const BoolVarArgs &x) | |
| Create sum expression. More... | |
| LinIntExpr (const IntArgs &a, const BoolVarArgs &x) | |
| Create sum expression. More... | |
| LinIntExpr (const LinIntExpr &e) | |
| Copy constructor. More... | |
| LinIntExpr (const LinIntExpr &e0, NodeType t, const LinIntExpr &e1) | |
| Create expression for type and subexpressions. More... | |
| LinIntExpr (const LinIntExpr &e0, NodeType t, int c) | |
| Create expression for type and subexpression. More... | |
| LinIntExpr (int a, const LinIntExpr &e) | |
| Create expression for multiplication. More... | |
| LinIntExpr (NonLinIntExpr *e) | |
| Create non-linear expression. More... | |
| const LinIntExpr & | operator= (const LinIntExpr &e) |
| Assignment operator. More... | |
| void | post (Home home, IntRelType irt, IntConLevel icl) const |
| Post propagator. More... | |
| void | post (Home home, IntRelType irt, const BoolVar &b, IntConLevel icl) const |
| Post reified propagator. More... | |
| IntVar | post (Home home, IntConLevel icl) const |
| Post propagator and return variable for value. More... | |
| NonLinIntExpr * | nle (void) const |
| Return non-linear expression inside, or NULL if not non-linear. More... | |
| ~LinIntExpr (void) | |
| Destructor. More... | |
Linear expressions over integer variables.
Definition at line 138 of file minimodel.hh.
Type of linear expression.
Definition at line 148 of file minimodel.hh.
| Gecode::LinIntExpr::LinIntExpr | ( | void | ) |
Default constructor.
Definition at line 353 of file int-expr.cpp.
| Gecode::LinIntExpr::LinIntExpr | ( | int | c | ) |
Create expression for constant c.
Definition at line 361 of file int-expr.cpp.
| Gecode::LinIntExpr::LinIntExpr | ( | const IntVar & | x, |
| int | a = 1 |
||
| ) |
Create expression.
Definition at line 371 of file int-expr.cpp.
| Gecode::LinIntExpr::LinIntExpr | ( | const BoolVar & | x, |
| int | a = 1 |
||
| ) |
Create expression.
Definition at line 381 of file int-expr.cpp.
|
explicit |
Create sum expression.
Definition at line 391 of file int-expr.cpp.
| Gecode::LinIntExpr::LinIntExpr | ( | const IntArgs & | a, |
| const IntVarArgs & | x | ||
| ) |
Create sum expression.
Definition at line 406 of file int-expr.cpp.
|
explicit |
Create sum expression.
Definition at line 423 of file int-expr.cpp.
| Gecode::LinIntExpr::LinIntExpr | ( | const IntArgs & | a, |
| const BoolVarArgs & | x | ||
| ) |
Create sum expression.
Definition at line 438 of file int-expr.cpp.
| Gecode::LinIntExpr::LinIntExpr | ( | const LinIntExpr & | e | ) |
Copy constructor.
Definition at line 144 of file int-expr.cpp.
| Gecode::LinIntExpr::LinIntExpr | ( | const LinIntExpr & | e0, |
| NodeType | t, | ||
| const LinIntExpr & | e1 | ||
| ) |
Create expression for type and subexpressions.
Definition at line 455 of file int-expr.cpp.
| Gecode::LinIntExpr::LinIntExpr | ( | const LinIntExpr & | e0, |
| NodeType | t, | ||
| int | c | ||
| ) |
Create expression for type and subexpression.
Definition at line 464 of file int-expr.cpp.
| Gecode::LinIntExpr::LinIntExpr | ( | int | a, |
| const LinIntExpr & | e | ||
| ) |
Create expression for multiplication.
Definition at line 474 of file int-expr.cpp.
|
explicit |
Create non-linear expression.
Definition at line 484 of file int-expr.cpp.
| Gecode::LinIntExpr::~LinIntExpr | ( | void | ) |
Destructor.
Definition at line 504 of file int-expr.cpp.
| const LinIntExpr & Gecode::LinIntExpr::operator= | ( | const LinIntExpr & | e | ) |
Assignment operator.
Definition at line 495 of file int-expr.cpp.
| void Gecode::LinIntExpr::post | ( | Home | home, |
| IntRelType | irt, | ||
| IntConLevel | icl | ||
| ) | const |
Post propagator.
Definition at line 160 of file int-expr.cpp.
| void Gecode::LinIntExpr::post | ( | Home | home, |
| IntRelType | irt, | ||
| const BoolVar & | b, | ||
| IntConLevel | icl | ||
| ) | const |
Post reified propagator.
Definition at line 227 of file int-expr.cpp.
| IntVar Gecode::LinIntExpr::post | ( | Home | home, |
| IntConLevel | icl | ||
| ) | const |
Post propagator and return variable for value.
Definition at line 285 of file int-expr.cpp.
| NonLinIntExpr * Gecode::LinIntExpr::nle | ( | void | ) | const |
Return non-linear expression inside, or NULL if not non-linear.
Definition at line 349 of file int-expr.cpp.