include "fzn_inverse_set.mzn"; include "fzn_inverse_set_reif.mzn"; /** @group globals.channeling Constrains two arrays of set of int variables, \a f and \a invf, so that a \p j in f[\p i] iff \p i in invf[\p j]. All the values in each array's sets must be within the index set of the other array. */ predicate inverse_set(array[int] of var set of int: f, array[int] of var set of int: invf) = fzn_inverse_set(f,invf);