[ library(ic_global_gac) | Reference Manual | Alphabetic Index ]

# alldifferent(+L)

GAC version of alldifferent

L
  List of integers or domain variables, or a collection a la collection_to_list/2

## Description

This predicate implements a GAC (generalized arc consistency) version of the alldifferent constraint. It uses the classical bitpartite matching implementation using the graph_algorithms library. This version often removes more values than the bound consistent alldifferent in the ic_global library, or the forward checking variant in the ic library, but may spend much more time doing this.

### Fail Conditions

fails if there is no bipartite matching between all variables and the possible values

## See Also

matching / 2, ic : alldifferent / 1, ic_global : alldifferent / 1