git-subtree-dir: software/mza git-subtree-split: f970a59b177c13ca3dd8aaef8cc6681d83b7e813
13 lines
400 B
MiniZinc
13 lines
400 B
MiniZinc
include "count.mzn";
|
|
|
|
predicate fzn_global_cardinality_reif(array[int] of var int: x,
|
|
array[int] of int: cover,
|
|
array[int] of var int: counts,
|
|
var bool: b) =
|
|
b <-> (
|
|
forall(i in index_set(cover))( count(x, cover[i], counts[i]) )
|
|
/\
|
|
% Implied constraint
|
|
length(x) >= sum(counts)
|
|
);
|