<html> <head> <link rel="stylesheet" href="style.css" type="text/css"> <link rel="Start" href="index.html"> <link rel="previous" href="Gcc.html"> <link rel="next" href="Sorting.html"> <link rel="Up" href="index.html"> <link title="Index of types" rel=Appendix href="index_types.html"> <link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> <link title="Index of values" rel=Appendix href="index_values.html"> <link title="Index of modules" rel=Appendix href="index_modules.html"> <link title="Index of module types" rel=Appendix href="index_module_types.html"> <link title="Domain" rel="Chapter" href="Domain.html"> <link title="SetDomain" rel="Chapter" href="SetDomain.html"> <link title="Stak" rel="Chapter" href="Stak.html"> <link title="Data" rel="Chapter" href="Data.html"> <link title="Cstr" rel="Chapter" href="Cstr.html"> <link title="Var" rel="Chapter" href="Var.html"> <link title="Invariant" rel="Chapter" href="Invariant.html"> <link title="Reify" rel="Chapter" href="Reify.html"> <link title="Arith" rel="Chapter" href="Arith.html"> <link title="Conjunto" rel="Chapter" href="Conjunto.html"> <link title="Goals" rel="Chapter" href="Goals.html"> <link title="FdArray" rel="Chapter" href="FdArray.html"> <link title="Gcc" rel="Chapter" href="Gcc.html"> <link title="Alldiff" rel="Chapter" href="Alldiff.html"> <link title="Sorting" rel="Chapter" href="Sorting.html"> <link title="Interval" rel="Chapter" href="Interval.html"><title>Alldiff</title> </head> <body> <div class="navbar"><a href="Gcc.html">Previous</a> <a href="index.html">Up</a> <a href="Sorting.html">Next</a> </div> <center><h1>Module <a href="type_Alldiff.html">Alldiff</a></h1></center> <br> <pre><span class="keyword">module</span> Alldiff: <code class="code">sig</code> <a href="Alldiff.html">..</a> <code class="code">end</code></pre>the "All Different" Constraint<br> <hr width="100%"> <br><code><span class="keyword">type</span> <a name="TYPEalgo"></a><code class="type"></code>algo = </code><table class="typetable"> <tr> <td align="left" valign="top" > <code><span class="keyword">|</span></code></td> <td align="left" valign="top" > <code><span class="constructor">Lazy</span></code></td> </tr> <tr> <td align="left" valign="top" > <code><span class="keyword">|</span></code></td> <td align="left" valign="top" > <code><span class="constructor">Bin_matching</span> <span class="keyword">of</span> <code class="type">Var.Fd.event</code></code></td> </tr></table> <pre><span class="keyword">val</span> <a name="VALcstr"></a>cstr : <code class="type">?algo:<a href="Alldiff.html#TYPEalgo">algo</a> -> Var.Fd.t array -> <a href="Cstr.html#TYPEt">Cstr.t</a></code></pre><div class="info"> <code class="code">alldiff (?algo:Lazy) vars</code> States that the variables of <code class="code">vars</code> are different from each other. The optional argument <code class="code">algo</code> specifies the level of propagation. <code class="code">Lazy</code>: waits for instantiation and removes the corresponding value from other domains. <code class="code">Bin_matching c</code>: waits for event <code class="code">c</code> (e.g. <code class="code">Var.Fd.on_refine</code>) and uses a bin matching algorithm to ensure the constraint is consistent. <code class="code">algo</code> default value is <code class="code">Lazy</code>. Not reifiable.<br> </div> </body></html>