1
0
This repository has been archived on 2025-03-06. You can view files and clone it, but cannot push or open issues or pull requests.

8 lines
292 B
MiniZinc

predicate inverse(array[int] of var int: f,
array[int] of var int: invf) =
forall(j in index_set(invf))(invf[j] in index_set(f)) /\
forall(i in index_set(f))(
f[i] in index_set(invf) /\
forall(j in index_set(invf))(j == f[i] <-> i == invf[j])
);