git-subtree-dir: software/mza git-subtree-split: f970a59b177c13ca3dd8aaef8cc6681d83b7e813
9 lines
325 B
MiniZinc
9 lines
325 B
MiniZinc
predicate fzn_inverse_reif(array[int] of var int: f,
|
|
array[int] of var int: invf,
|
|
var bool: b) =
|
|
b <-> forall(i in index_set(f), j in index_set(invf)) (
|
|
f[i] in index_set(invf) /\
|
|
invf[j] in index_set(f) /\
|
|
(j == f[i] <-> i == invf[j])
|
|
);
|