40 namespace Test {
namespace FlatZinc {
49 (void)
new FlatZincTest(
"queens4",
50 "array [1..4] of var 1..4: q :: output_array([1..4]);\n\
51 var int: dq01 :: output_var;\n\
52 var int: dq02 :: output_var;\n\
53 var int: dq03 :: output_var;\n\
54 var int: dq12 :: output_var;\n\
55 var int: dq13 :: output_var;\n\
56 var int: dq23 :: output_var;\n\
57 constraint int_plus(dq01, q[2], q[1]);\n\
58 constraint int_plus(dq02, q[3], q[1]);\n\
59 constraint int_plus(dq03, q[4], q[1]);\n\
60 constraint int_plus(dq12, q[3], q[2]);\n\
61 constraint int_plus(dq13, q[4], q[2]);\n\
62 constraint int_plus(dq23, q[4], q[3]);\n\
63 constraint int_ne(q[1], q[2]);\n\
64 constraint int_ne(q[1], q[3]);\n\
65 constraint int_ne(q[1], q[4]);\n\
66 constraint int_ne(q[2], q[3]);\n\
67 constraint int_ne(q[2], q[4]);\n\
68 constraint int_ne(q[3], q[4]);\n\
69 constraint int_ne(dq01, -1);\n\
70 constraint int_ne(dq01, 1);\n\
71 constraint int_ne(dq02, -2);\n\
72 constraint int_ne(dq02, 2);\n\
73 constraint int_ne(dq03, -3);\n\
74 constraint int_ne(dq03, 3);\n\
75 constraint int_ne(dq12, -1);\n\
76 constraint int_ne(dq12, 1);\n\
77 constraint int_ne(dq13, -2);\n\
78 constraint int_ne(dq13, 2);\n\
79 constraint int_ne(dq23, -1);\n\
80 constraint int_ne(dq23, 1);\n\
88 q = array1d(1..4, [3, 1, 4, 2]);\n\
Gecode::FloatVal c(-8, 8)