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.
Jip J. Dekker fad1b07018 Squashed 'software/minizinc/' content from commit 4f10c8205
git-subtree-dir: software/minizinc
git-subtree-split: 4f10c82056ffcb1041d7ffef29d77a7eef92cf76
2021-06-16 14:06:46 +10:00

84 lines
1.5 KiB
MiniZinc

/***
!Test
expected:
- !Result
solution: !Solution
invs_f1:
- !!set {1}
- !Range 3..4
- !Range 2..4
- !Range 1..3
invs_f2:
- !!set {1, 4}
- !Range 3..4
- !Range 2..4
- !Range 2..3
- !Result
solution: !Solution
invs_f1:
- !!set {1}
- !Range 2..4
- !Range 2..4
- !Range 1..2
invs_f2:
- !!set {1, 4}
- !Range 2..4
- !Range 2..3
- !Range 2..3
- !Result
solution: !Solution
invs_f1:
- !!set {1}
- !Range 1..4
- !Range 2..4
- !!set {1}
invs_f2:
- !!set {1, 2, 4}
- !Range 2..3
- !Range 2..3
- !Range 2..3
- !Result
solution: !Solution
invs_f1:
- !!set {1}
- !!set {4}
- !Range 2..4
- !!set {}
invs_f2:
- !!set {1}
- !!set {3}
- !!set {3}
- !Range 2..3
- !Result
solution: !Solution
invs_f1:
- !!set {1}
- !Range 1..4
- !Range 2..4
- !Range 1..3
invs_f2:
- !!set {1, 2, 4}
- !Range 2..4
- !Range 2..4
- !Range 2..3
***/
include "inverse_set.mzn";
%-----------------------------------------------------------------------------%
% inverse_set
%-----------------------------------------------------------------------------%
array[1..4] of var set of 1..5: invs_f1 :: add_to_output =
[{1}, _, {2,3,4}, _ ];
array[1..4] of var set of 1..5: invs_f2 :: add_to_output =
[_, _, _, {3,2}];
constraint inverse_set(invs_f1, invs_f2);
solve satisfy;
output [
"invs_f1 = array1d(1..4, ", show(invs_f1), ");\n",
"invs_f2 = array1d(1..4, ", show(invs_f2), ");\n"
];