git-subtree-dir: software/mza git-subtree-split: f970a59b177c13ca3dd8aaef8cc6681d83b7e813
12 lines
377 B
MiniZinc
12 lines
377 B
MiniZinc
predicate fzn_inverse_set(array[int] of var set of int: f,
|
|
array[int] of var set of int: invf) =
|
|
forall(i in index_set(f)) (
|
|
f[i] subset index_set(invf)
|
|
) /\
|
|
forall(j in index_set(invf)) (
|
|
invf[j] subset index_set(f)
|
|
) /\
|
|
forall(i in index_set(f), j in index_set(invf)) (
|
|
(j in f[i] <-> i in invf[j])
|
|
);
|