Generated on Thu Jan 20 2022 00:00:00 for Gecode by doxygen 1.9.1
aliases.hpp File Reference

Go to the source code of this file.

Functions

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$. More...
 
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$. More...
 
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$. More...
 
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$. More...
 
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$. More...
 
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$. More...
 
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$. More...
 
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$. More...
 
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$. More...
 
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$. More...
 
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$. More...
 
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$. More...
 
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$. More...
 
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$. More...
 
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$. More...
 
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$. More...
 
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$. More...
 
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$. More...
 
void Gecode::lex (Home home, const IntVarArgs &x, IntRelType r, const IntVarArgs &y, IntPropLevel ipl=IPL_DEF)
 Post lexical order between x and y. More...
 
void Gecode::lex (Home home, const BoolVarArgs &x, IntRelType r, const BoolVarArgs &y, IntPropLevel ipl=IPL_DEF)
 Post lexical order between x and y. More...
 
void Gecode::values (Home home, const IntVarArgs &x, IntSet y, IntPropLevel ipl=IPL_DEF)
 Post constraint $\{x_0,\dots,x_{n-1}\}=y$. More...
 
void Gecode::channel (Home home, const IntVarArgs &x, SetVar y)
 Post constraint $\{x_0,\dots,x_{n-1}\}=y$. More...
 
void Gecode::range (Home home, const IntVarArgs &x, SetVar y, SetVar z)
 Post constraint $\bigcup_{i\in y}\{x_i\}=z$. More...
 
void Gecode::roots (Home home, const IntVarArgs &x, SetVar y, SetVar z)
 Post constraint $\bigcup_{i\in z}\{j\ |\ x_j=i\}=z$. More...
 

Function Documentation

◆ atmost() [1/6]

void Gecode::atmost ( Home  home,
const IntVarArgs x,
int  n,
int  m,
IntPropLevel  ipl = IPL_DEF 
)
inline

Post constraint $\#\{i\in\{0,\ldots,|x|-1\}\;|\;x_i=n\}\leq m$.

Supports domain consistent propagation only.

Definition at line 39 of file aliases.hpp.

◆ atmost() [2/6]

void Gecode::atmost ( Home  home,
const IntVarArgs x,
IntVar  y,
int  m,
IntPropLevel  ipl = IPL_DEF 
)
inline

Post constraint $\#\{i\in\{0,\ldots,|x|-1\}\;|\;x_i=y\}\leq m$.

Supports domain consistent propagation only.

Definition at line 44 of file aliases.hpp.

◆ atmost() [3/6]

void Gecode::atmost ( Home  home,
const IntVarArgs x,
const IntArgs y,
int  m,
IntPropLevel  ipl = IPL_DEF 
)
inline

Post constraint $\#\{i\in\{0,\ldots,|x|-1\}\;|\;x_i=y_i\}\leq m$.

Supports domain consistent propagation only.

Throws an exception of type Int::ArgumentSizeMismatch, if x and y are of different size.

Definition at line 49 of file aliases.hpp.

◆ atmost() [4/6]

void Gecode::atmost ( Home  home,
const IntVarArgs x,
int  n,
IntVar  z,
IntPropLevel  ipl = IPL_DEF 
)
inline

Post constraint $\#\{i\in\{0,\ldots,|x|-1\}\;|\;x_i=n\}\leq z$.

Supports domain consistent propagation only.

Definition at line 54 of file aliases.hpp.

◆ atmost() [5/6]

void Gecode::atmost ( Home  home,
const IntVarArgs x,
IntVar  y,
IntVar  z,
IntPropLevel  ipl = IPL_DEF 
)
inline

Post constraint $\#\{i\in\{0,\ldots,|x|-1\}\;|\;x_i=y\}\leq z$.

Supports domain consistent propagation only.

Definition at line 59 of file aliases.hpp.

◆ atmost() [6/6]

void Gecode::atmost ( Home  home,
const IntVarArgs x,
const IntArgs y,
IntVar  z,
IntPropLevel  ipl = IPL_DEF 
)
inline

Post constraint $\#\{i\in\{0,\ldots,|x|-1\}\;|\;x_i=y_i\}\leq z$.

Supports domain consistent propagation only.

Throws an exception of type Int::ArgumentSizeMismatch, if x and y are of different size.

Definition at line 64 of file aliases.hpp.

◆ atleast() [1/6]

void Gecode::atleast ( Home  home,
const IntVarArgs x,
int  n,
int  m,
IntPropLevel  ipl = IPL_DEF 
)
inline

Post constraint $\#\{i\in\{0,\ldots,|x|-1\}\;|\;x_i=n\}\geq m$.

Supports domain consistent propagation only.

Definition at line 70 of file aliases.hpp.

◆ atleast() [2/6]

void Gecode::atleast ( Home  home,
const IntVarArgs x,
IntVar  y,
int  m,
IntPropLevel  ipl = IPL_DEF 
)
inline

Post constraint $\#\{i\in\{0,\ldots,|x|-1\}\;|\;x_i=y\}\geq m$.

Supports domain consistent propagation only.

Definition at line 75 of file aliases.hpp.

◆ atleast() [3/6]

void Gecode::atleast ( Home  home,
const IntVarArgs x,
const IntArgs y,
int  m,
IntPropLevel  ipl = IPL_DEF 
)
inline

Post constraint $\#\{i\in\{0,\ldots,|x|-1\}\;|\;x_i=y_i\}\geq m$.

Supports domain consistent propagation only.

Throws an exception of type Int::ArgumentSizeMismatch, if x and y are of different size.

Definition at line 80 of file aliases.hpp.

◆ atleast() [4/6]

void Gecode::atleast ( Home  home,
const IntVarArgs x,
int  n,
IntVar  z,
IntPropLevel  ipl = IPL_DEF 
)
inline

Post constraint $\#\{i\in\{0,\ldots,|x|-1\}\;|\;x_i=n\}\geq z$.

Supports domain consistent propagation only.

Definition at line 85 of file aliases.hpp.

◆ atleast() [5/6]

void Gecode::atleast ( Home  home,
const IntVarArgs x,
IntVar  y,
IntVar  z,
IntPropLevel  ipl = IPL_DEF 
)
inline

Post constraint $\#\{i\in\{0,\ldots,|x|-1\}\;|\;x_i=y\}\geq z$.

Supports domain consistent propagation only.

Definition at line 90 of file aliases.hpp.

◆ atleast() [6/6]

void Gecode::atleast ( Home  home,
const IntVarArgs x,
const IntArgs y,
IntVar  z,
IntPropLevel  ipl = IPL_DEF 
)
inline

Post constraint $\#\{i\in\{0,\ldots,|x|-1\}\;|\;x_i=y_i\}\geq z$.

Supports domain consistent propagation only.

Throws an exception of type Int::ArgumentSizeMismatch, if x and y are of different size.

Definition at line 95 of file aliases.hpp.

◆ exactly() [1/6]

void Gecode::exactly ( Home  home,
const IntVarArgs x,
int  n,
int  m,
IntPropLevel  ipl = IPL_DEF 
)
inline

Post constraint $\#\{i\in\{0,\ldots,|x|-1\}\;|\;x_i=n\}=m$.

Supports domain consistent propagation only.

Definition at line 101 of file aliases.hpp.

◆ exactly() [2/6]

void Gecode::exactly ( Home  home,
const IntVarArgs x,
IntVar  y,
int  m,
IntPropLevel  ipl = IPL_DEF 
)
inline

Post constraint $\#\{i\in\{0,\ldots,|x|-1\}\;|\;x_i=y\}=m$.

Supports domain consistent propagation only.

Definition at line 106 of file aliases.hpp.

◆ exactly() [3/6]

void Gecode::exactly ( Home  home,
const IntVarArgs x,
const IntArgs y,
int  m,
IntPropLevel  ipl = IPL_DEF 
)
inline

Post constraint $\#\{i\in\{0,\ldots,|x|-1\}\;|\;x_i=y_i\}=m$.

Supports domain consistent propagation only.

Throws an exception of type Int::ArgumentSizeMismatch, if x and y are of different size.

Definition at line 111 of file aliases.hpp.

◆ exactly() [4/6]

void Gecode::exactly ( Home  home,
const IntVarArgs x,
int  n,
IntVar  z,
IntPropLevel  ipl = IPL_DEF 
)
inline

Post constraint $\#\{i\in\{0,\ldots,|x|-1\}\;|\;x_i=n\}=z$.

Supports domain consistent propagation only.

Definition at line 116 of file aliases.hpp.

◆ exactly() [5/6]

void Gecode::exactly ( Home  home,
const IntVarArgs x,
IntVar  y,
IntVar  z,
IntPropLevel  ipl = IPL_DEF 
)
inline

Post constraint $\#\{i\in\{0,\ldots,|x|-1\}\;|\;x_i=y\}=z$.

Supports domain consistent propagation only.

Definition at line 121 of file aliases.hpp.

◆ exactly() [6/6]

void Gecode::exactly ( Home  home,
const IntVarArgs x,
const IntArgs y,
IntVar  z,
IntPropLevel  ipl = IPL_DEF 
)
inline

Post constraint $\#\{i\in\{0,\ldots,|x|-1\}\;|\;x_i=y_i\}=z$.

Supports domain consistent propagation only.

Throws an exception of type Int::ArgumentSizeMismatch, if x and y are of different size.

Definition at line 126 of file aliases.hpp.

◆ lex() [1/2]

void Gecode::lex ( Home  home,
const IntVarArgs x,
IntRelType  r,
const IntVarArgs y,
IntPropLevel  ipl 
)
inline

Post lexical order between x and y.

Definition at line 132 of file aliases.hpp.

◆ lex() [2/2]

void Gecode::lex ( Home  home,
const BoolVarArgs x,
IntRelType  r,
const BoolVarArgs y,
IntPropLevel  ipl 
)
inline

Post lexical order between x and y.

Definition at line 137 of file aliases.hpp.

◆ values()

void Gecode::values ( Home  home,
const IntVarArgs x,
IntSet  y,
IntPropLevel  ipl 
)
inline

Post constraint $\{x_0,\dots,x_{n-1}\}=y$.

Definition at line 143 of file aliases.hpp.

◆ channel()

void Gecode::channel ( Home  home,
const IntVarArgs x,
SetVar  y 
)
inline

Post constraint $\{x_0,\dots,x_{n-1}\}=y$.

In addition to constraining y to the union of the x, this also posts an nvalue constraint for additional cardinality propagation.

Definition at line 152 of file aliases.hpp.

◆ range()

void Gecode::range ( Home  home,
const IntVarArgs x,
SetVar  y,
SetVar  z 
)
inline

Post constraint $\bigcup_{i\in y}\{x_i\}=z$.

Definition at line 158 of file aliases.hpp.

◆ roots()

void Gecode::roots ( Home  home,
const IntVarArgs x,
SetVar  y,
SetVar  z 
)
inline

Post constraint $\bigcup_{i\in z}\{j\ |\ x_j=i\}=z$.

Note that this creates one temporary set variable for each element in the upper bound of z, so make sure that the bound is tight.

Definition at line 163 of file aliases.hpp.