this repo has no description
at develop 665 B view raw
1include "fzn_inverse.mzn"; 2include "fzn_inverse_reif.mzn"; 3include "analyse_all_different.mzn"; 4 5/** @group globals.channeling 6 Constrains two arrays of int variables, \a f and \a invf, to represent 7 inverse functions. All the values in each array must be within the index 8 set of the other array. 9*/ 10predicate inverse(array[int] of var int: f, 11 array[int] of var int: invf) = 12 analyse_all_different(f) /\ 13 analyse_all_different(invf) /\ 14 fzn_inverse(f, invf); 15 16predicate inverse_reif(array[int] of var int: f, 17 array[int] of var int: invf, 18 var bool: b) = 19 fzn_inverse_reif(f, invf, b);