module Alldiff: sig
.. end
the "All Different" Constraint
type
algo =
| |
Lazy |
| |
Bin_matching of Var.Fd.event |
val cstr : ?algo:algo -> Var.Fd.t array -> Cstr.t
alldiff (?algo:Lazy) vars
States that the variables of vars
are different from each other. The optional argument algo
specifies the level of propagation.
Lazy
: waits for instantiation and removes the corresponding value
from other domains.
Bin_matching c
: waits for event c
(e.g. Var.Fd.on_refine
)
and uses a bin matching algorithm to ensure the constraint is
consistent. algo
default value is Lazy
.
Not reifiable.