this repo has no description
1/***
2!Test
3expected:
4- !Result
5 solution: !Solution
6 network__104:
7 - - true
8 - true
9 - true
10 - true
11 - false
12 - - false
13 - false
14 - true
15 - false
16 - true
17 objective: 6
18- !Result
19 solution: !Solution
20 network__104:
21 - - false
22 - false
23 - true
24 - false
25 - true
26 - - true
27 - true
28 - true
29 - true
30 - false
31 objective: 6
32***/
33
34% Regression test extracted from examples/zinc/sonet.zinc.
35% (as processed by zinc2mzn).
36% The change in r7995 broke this, it was fixed in r8005, r8014-5.
37
38array[1 .. 5] of 1 .. 5: Demand_1__107 = [ 1, 3, 3, 2, 4 ];
39
40array[1 .. 5] of 1 .. 5: Demand_2__108 = [ 3, 5, 2, 4, 1 ];
41
42array[1 .. 2, 1 .. 5] of var bool: network__104;
43
44constraint
45 forall(
46 [ sum([ bool2int(network__104[ring__0, node]) | node in 1 .. 5 ]) <= 4 |
47 ring__0 in 1 .. 2 ]) /\
48 forall(
49 [ let { var 1 .. 2: ring }
50 in
51 network__104[ring, Demand_1__107[e__110]] /\
52 network__104[ring, Demand_2__108[e__110]] | e__110 in 1 .. 5 ]);
53
54solve
55 minimize
56 sum(
57 [ bool2int(network__104[i__118, i__119]) |
58 i__118 in 1 .. 2, i__119 in 1 .. 5 ]);
59
60output
61 [ "Network of size ",
62 show(
63 sum(
64 [ bool2int(network__104[i__114, i__115]) |
65 i__114 in 1 .. 2, i__115 in 1 .. 5 ])), ":\n", "{ " ] ++
66 [ ( if fix(network__104[i__116, i__117])
67 then ("(" ++ (((show(i__116) ++ ", ") ++ show(i__117)) ++ ")")) ++ " "
68 else "" endif) | i__116 in 1 .. 2, i__117 in 1 .. 5 ] ++ [ "}" ] ++
69 [ "\n" ];