
ALLDIFF (variable_list-1) <…(variable_list-n)>;
ALLDIFFERENT (variable_list-1) <…(variable_list-n)>;
The ALLDIFF statement can have multiple specifications. Each specification defines a unique global constraint on a set of variables, requiring all of them to be different from each other. A global constraint is equivalent to a conjunction of elementary constraints.
For example, the statements
var (X1-X3) A B; alldiff (X1-X3) (A B);
are equivalent to
![\[ \begin{array}{rcl} X1 & \ne & X2 \mr{~ ~ AND}\\ X2 & \ne & X3 \mr{~ ~ AND}\\ X1 & \ne & X3 \mr{~ ~ AND}\\ A & \ne & B \end{array} \]](images/orcpug_clp0019.png)
If the variable list is empty, the ALLDIFF constraint applies to all the variables declared in any VARIABLE statement.