42 namespace Test {
namespace Int {
49 for (
int i=a.
size();
i--; )
74 :
Test(
"Linear::Int::Int::"+
78 a(a0),
irt(irt0),
c(c0) {}
84 return cmp(e,
irt, static_cast<double>(
c));
115 :
Test(
"Linear::Int::Var::"+
124 return cmp(e,
irt, static_cast<double>(x[
a.
size()]));
164 :
Test(
"Linear::Bool::Int::"+
167 a(a0),
irt(irt0),
c(c0) {
174 return cmp(e,
irt, static_cast<double>(
c));
179 for (
int i=x.
size();
i--; )
190 for (
int i=x.
size();
i--; )
211 :
Test(
"Linear::Bool::Var::"+
str(irt0)+
"::"+s,a0.
size()+1,
217 for (
int i=0;
i<n;
i++)
218 if ((x[
i] < 0) || (x[
i] > 1))
221 for (
int i=0;
i<n;
i++)
223 return cmp(e,
irt, static_cast<double>(x[n]));
227 for (
int i=x.
size()-1;
i--; )
228 if ((x[
i] < 0) || (x[
i] > 1))
262 using namespace Gecode;
265 const int dv2[] = {-4,-1,0,1,4};
268 const int dv3[] = {0,1500000000};
274 (void)
new IntInt(
"11",d1,a1,irts.irt(),0);
275 (void)
new IntVar(
"11",d1,a1,irts.irt());
276 (void)
new IntInt(
"21",d2,a1,irts.irt(),0);
277 (void)
new IntVar(
"21",d2,a1,irts.irt());
278 (void)
new IntInt(
"31",d3,a1,irts.irt(),150000000);
285 const int av2[5] = {1,1,1,1,1};
286 const int av3[5] = {1,-1,-1,1,-1};
287 const int av4[5] = {2,3,5,7,11};
288 const int av5[5] = {-2,3,-5,7,-11};
290 for (
int i=1;
i<=5;
i++) {
296 (void)
new IntInt(
"12",d1,a2,irts.irt(),0);
297 (void)
new IntInt(
"13",d1,a3,irts.irt(),0);
298 (void)
new IntInt(
"14",d1,a4,irts.irt(),0);
299 (void)
new IntInt(
"15",d1,a5,irts.irt(),0);
300 (void)
new IntInt(
"22",d2,a2,irts.irt(),0);
301 (void)
new IntInt(
"23",d2,a3,irts.irt(),0);
302 (void)
new IntInt(
"24",d2,a4,irts.irt(),0);
303 (void)
new IntInt(
"25",d2,a5,irts.irt(),0);
304 (void)
new IntInt(
"32",d3,a2,irts.irt(),1500000000);
306 (void)
new IntVar(
"12",d1,a2,irts.irt());
307 (void)
new IntVar(
"13",d1,a3,irts.irt());
308 (void)
new IntVar(
"14",d1,a4,irts.irt());
309 (void)
new IntVar(
"15",d1,a5,irts.irt());
310 (void)
new IntVar(
"22",d2,a2,irts.irt());
311 (void)
new IntVar(
"23",d2,a3,irts.irt());
312 (void)
new IntVar(
"24",d2,a4,irts.irt());
313 (void)
new IntVar(
"25",d2,a5,irts.irt());
333 const int av1[10] = {
334 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
336 const int av2[10] = {
337 -1,-1,-1,-1,-1,-1,-1,-1,-1,-1
340 for (
int i=1;
i<=10;
i += 3) {
343 for (
int c=0;
c<=6;
c++)
345 (void)
new BoolInt(
"1",a1,irts.irt(),
c);
346 (void)
new BoolInt(
"2",a2,irts.irt(),-
c);
355 for (
int c=0;
c<=16;
c++) {
356 (void)
new BoolInt(
"3",a3,irts.irt(),
c);
357 (void)
new BoolInt(
"4",a4,irts.irt(),-
c);
358 (void)
new BoolInt(
"5",a5,irts.irt(),
c);
359 (void)
new BoolInt(
"6",a5,irts.irt(),-
c);
363 for (
int i=1;
i<=5;
i += 2) {
378 (void)
new BoolVar(
"6",0,10,a6,irts.irt());
379 (void)
new BoolVar(
"7",-10,0,a7,irts.irt());
380 (void)
new BoolVar(
"8",-3,3,a8,irts.irt());
381 (void)
new BoolVar(
"9",-3,3,a9,irts.irt());