1include "span.mzn"; 2 3predicate fzn_alternative(var opt int: s0, var int: d0, 4 array[int] of var opt int: s, 5 array[int] of var int: d) = 6 sum(i in index_set(s))(bool2int(occurs(s[i]))) <= 1 /\ 7 span(s0,d0,s,d);