git-subtree-dir: software/mza git-subtree-split: f970a59b177c13ca3dd8aaef8cc6681d83b7e813
10 lines
405 B
MiniZinc
10 lines
405 B
MiniZinc
predicate fzn_disjunctive_opt_reif(array[int] of var opt int: s,
|
|
array[int] of var int: d,
|
|
var bool: b) =
|
|
b <-> forall (i,j in index_set(d) where i<j) (
|
|
absent(s[i]) \/ absent(s[j]) \/
|
|
d[i]=0 \/ d[j]=0 \/
|
|
deopt(s[i])+d[i] <= deopt(s[j]) \/
|
|
deopt(s[j])+d[j] <= deopt(s[i])
|
|
);
|