8 lines
307 B
MiniZinc
8 lines
307 B
MiniZinc
include "span.mzn";
|
|
|
|
predicate fzn_alternative_reif(var opt int: s0, var int: d0,
|
|
array[int] of var opt int: s,
|
|
array[int] of var int: d, var bool: b) =
|
|
b <-> ( sum(i in index_set(s))(bool2int(occurs(s[i]))) <= 1 /\
|
|
span(s0,d0,s,d) );
|