main page
modules
namespaces
classes
files
Gecode home
Generated on Sun Aug 26 2012 08:43:17 for Gecode by
doxygen
1.8.1.1
gecode
minimodel
lin-rel.cpp
Go to the documentation of this file.
1
/* -*- mode: C++; c-basic-offset: 2; indent-tabs-mode: nil -*- */
2
/*
3
* Main authors:
4
* Christian Schulte <schulte@gecode.org>
5
*
6
* Copyright:
7
* Christian Schulte, 2005
8
*
9
* Last modified:
10
* $Date: 2010-07-16 18:51:05 +1000 (Fri, 16 Jul 2010) $ by $Author: tack $
11
* $Revision: 11208 $
12
*
13
* This file is part of Gecode, the generic constraint
14
* development environment:
15
* http://www.gecode.org
16
*
17
* Permission is hereby granted, free of charge, to any person obtaining
18
* a copy of this software and associated documentation files (the
19
* "Software"), to deal in the Software without restriction, including
20
* without limitation the rights to use, copy, modify, merge, publish,
21
* distribute, sublicense, and/or sell copies of the Software, and to
22
* permit persons to whom the Software is furnished to do so, subject to
23
* the following conditions:
24
*
25
* The above copyright notice and this permission notice shall be
26
* included in all copies or substantial portions of the Software.
27
*
28
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
29
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
30
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
31
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
32
* LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
33
* OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
34
* WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
35
*
36
*/
37
38
#include <
gecode/minimodel.hh
>
39
40
namespace
Gecode {
41
42
/*
43
* Construction of linear relations
44
*
45
*/
46
LinRel
47
operator ==
(
int
l,
const
IntVar
&
r
) {
48
return
LinRel
(l,
IRT_EQ
,r);
49
}
50
LinRel
51
operator ==
(
int
l,
const
BoolVar
&
r
) {
52
return
LinRel
(l,
IRT_EQ
,r);
53
}
54
LinRel
55
operator ==
(
int
l,
const
LinExpr
&
r
) {
56
return
LinRel
(l,
IRT_EQ
,r);
57
}
58
LinRel
59
operator ==
(
const
IntVar
& l,
int
r
) {
60
return
LinRel
(l,
IRT_EQ
,r);
61
}
62
LinRel
63
operator ==
(
const
BoolVar
& l,
int
r
) {
64
return
LinRel
(l,
IRT_EQ
,r);
65
}
66
LinRel
67
operator ==
(
const
LinExpr
& l,
int
r
) {
68
return
LinRel
(l,
IRT_EQ
,r);
69
}
70
LinRel
71
operator ==
(
const
IntVar
& l,
const
IntVar
&
r
) {
72
return
LinRel
(l,
IRT_EQ
,r);
73
}
74
LinRel
75
operator ==
(
const
IntVar
& l,
const
BoolVar
&
r
) {
76
return
LinRel
(l,
IRT_EQ
,r);
77
}
78
LinRel
79
operator ==
(
const
BoolVar
& l,
const
IntVar
&
r
) {
80
return
LinRel
(l,
IRT_EQ
,r);
81
}
82
LinRel
83
operator ==
(
const
BoolVar
& l,
const
BoolVar
&
r
) {
84
return
LinRel
(l,
IRT_EQ
,r);
85
}
86
LinRel
87
operator ==
(
const
IntVar
& l,
const
LinExpr
&
r
) {
88
return
LinRel
(l,
IRT_EQ
,r);
89
}
90
LinRel
91
operator ==
(
const
BoolVar
& l,
const
LinExpr
&
r
) {
92
return
LinRel
(l,
IRT_EQ
,r);
93
}
94
LinRel
95
operator ==
(
const
LinExpr
& l,
const
IntVar
&
r
) {
96
return
LinRel
(l,
IRT_EQ
,r);
97
}
98
LinRel
99
operator ==
(
const
LinExpr
& l,
const
BoolVar
&
r
) {
100
return
LinRel
(l,
IRT_EQ
,r);
101
}
102
LinRel
103
operator ==
(
const
LinExpr
& l,
const
LinExpr
&
r
) {
104
return
LinRel
(l,
IRT_EQ
,r);
105
}
106
107
LinRel
108
operator !=
(
int
l,
const
IntVar
&
r
) {
109
return
LinRel
(l,
IRT_NQ
,r);
110
}
111
LinRel
112
operator !=
(
int
l,
const
BoolVar
&
r
) {
113
return
LinRel
(l,
IRT_NQ
,r);
114
}
115
LinRel
116
operator !=
(
int
l,
const
LinExpr
&
r
) {
117
return
LinRel
(l,
IRT_NQ
,r);
118
}
119
LinRel
120
operator !=
(
const
IntVar
& l,
int
r
) {
121
return
LinRel
(l,
IRT_NQ
,r);
122
}
123
LinRel
124
operator !=
(
const
BoolVar
& l,
int
r
) {
125
return
LinRel
(l,
IRT_NQ
,r);
126
}
127
LinRel
128
operator !=
(
const
LinExpr
& l,
int
r
) {
129
return
LinRel
(l,
IRT_NQ
,r);
130
}
131
LinRel
132
operator !=
(
const
IntVar
& l,
const
IntVar
&
r
) {
133
return
LinRel
(l,
IRT_NQ
,r);
134
}
135
LinRel
136
operator !=
(
const
IntVar
& l,
const
BoolVar
&
r
) {
137
return
LinRel
(l,
IRT_NQ
,r);
138
}
139
LinRel
140
operator !=
(
const
BoolVar
& l,
const
IntVar
&
r
) {
141
return
LinRel
(l,
IRT_NQ
,r);
142
}
143
LinRel
144
operator !=
(
const
BoolVar
& l,
const
BoolVar
&
r
) {
145
return
LinRel
(l,
IRT_NQ
,r);
146
}
147
LinRel
148
operator !=
(
const
IntVar
& l,
const
LinExpr
&
r
) {
149
return
LinRel
(l,
IRT_NQ
,r);
150
}
151
LinRel
152
operator !=
(
const
BoolVar
& l,
const
LinExpr
&
r
) {
153
return
LinRel
(l,
IRT_NQ
,r);
154
}
155
LinRel
156
operator !=
(
const
LinExpr
& l,
const
IntVar
&
r
) {
157
return
LinRel
(l,
IRT_NQ
,r);
158
}
159
LinRel
160
operator !=
(
const
LinExpr
& l,
const
BoolVar
&
r
) {
161
return
LinRel
(l,
IRT_NQ
,r);
162
}
163
LinRel
164
operator !=
(
const
LinExpr
& l,
const
LinExpr
&
r
) {
165
return
LinRel
(l,
IRT_NQ
,r);
166
}
167
168
LinRel
169
operator <
(
int
l,
const
IntVar
&
r
) {
170
return
LinRel
(l,
IRT_LE
,r);
171
}
172
LinRel
173
operator <
(
int
l,
const
BoolVar
&
r
) {
174
return
LinRel
(l,
IRT_LE
,r);
175
}
176
LinRel
177
operator <
(
int
l,
const
LinExpr
&
r
) {
178
return
LinRel
(l,
IRT_LE
,r);
179
}
180
LinRel
181
operator <
(
const
IntVar
& l,
int
r
) {
182
return
LinRel
(l,
IRT_LE
,r);
183
}
184
LinRel
185
operator <
(
const
BoolVar
& l,
int
r
) {
186
return
LinRel
(l,
IRT_LE
,r);
187
}
188
LinRel
189
operator <
(
const
LinExpr
& l,
int
r
) {
190
return
LinRel
(l,
IRT_LE
,r);
191
}
192
LinRel
193
operator <
(
const
IntVar
& l,
const
IntVar
&
r
) {
194
return
LinRel
(l,
IRT_LE
,r);
195
}
196
LinRel
197
operator <
(
const
IntVar
& l,
const
BoolVar
&
r
) {
198
return
LinRel
(l,
IRT_LE
,r);
199
}
200
LinRel
201
operator <
(
const
BoolVar
& l,
const
IntVar
&
r
) {
202
return
LinRel
(l,
IRT_LE
,r);
203
}
204
LinRel
205
operator <
(
const
BoolVar
& l,
const
BoolVar
&
r
) {
206
return
LinRel
(l,
IRT_LE
,r);
207
}
208
LinRel
209
operator <
(
const
IntVar
& l,
const
LinExpr
&
r
) {
210
return
LinRel
(l,
IRT_LE
,r);
211
}
212
LinRel
213
operator <
(
const
BoolVar
& l,
const
LinExpr
&
r
) {
214
return
LinRel
(l,
IRT_LE
,r);
215
}
216
LinRel
217
operator <
(
const
LinExpr
& l,
const
IntVar
&
r
) {
218
return
LinRel
(l,
IRT_LE
,r);
219
}
220
LinRel
221
operator <
(
const
LinExpr
& l,
const
BoolVar
&
r
) {
222
return
LinRel
(l,
IRT_LE
,r);
223
}
224
LinRel
225
operator <
(
const
LinExpr
& l,
const
LinExpr
&
r
) {
226
return
LinRel
(l,
IRT_LE
,r);
227
}
228
229
LinRel
230
operator <=
(
int
l,
const
IntVar
&
r
) {
231
return
LinRel
(l,
IRT_LQ
,r);
232
}
233
LinRel
234
operator <=
(
int
l,
const
BoolVar
&
r
) {
235
return
LinRel
(l,
IRT_LQ
,r);
236
}
237
LinRel
238
operator <=
(
int
l,
const
LinExpr
&
r
) {
239
return
LinRel
(l,
IRT_LQ
,r);
240
}
241
LinRel
242
operator <=
(
const
IntVar
& l,
int
r
) {
243
return
LinRel
(l,
IRT_LQ
,r);
244
}
245
LinRel
246
operator <=
(
const
BoolVar
& l,
int
r
) {
247
return
LinRel
(l,
IRT_LQ
,r);
248
}
249
LinRel
250
operator <=
(
const
LinExpr
& l,
int
r
) {
251
return
LinRel
(l,
IRT_LQ
,r);
252
}
253
LinRel
254
operator <=
(
const
IntVar
& l,
const
IntVar
&
r
) {
255
return
LinRel
(l,
IRT_LQ
,r);
256
}
257
LinRel
258
operator <=
(
const
IntVar
& l,
const
BoolVar
&
r
) {
259
return
LinRel
(l,
IRT_LQ
,r);
260
}
261
LinRel
262
operator <=
(
const
BoolVar
& l,
const
IntVar
&
r
) {
263
return
LinRel
(l,
IRT_LQ
,r);
264
}
265
LinRel
266
operator <=
(
const
BoolVar
& l,
const
BoolVar
&
r
) {
267
return
LinRel
(l,
IRT_LQ
,r);
268
}
269
LinRel
270
operator <=
(
const
IntVar
& l,
const
LinExpr
&
r
) {
271
return
LinRel
(l,
IRT_LQ
,r);
272
}
273
LinRel
274
operator <=
(
const
BoolVar
& l,
const
LinExpr
&
r
) {
275
return
LinRel
(l,
IRT_LQ
,r);
276
}
277
LinRel
278
operator <=
(
const
LinExpr
& l,
const
IntVar
&
r
) {
279
return
LinRel
(l,
IRT_LQ
,r);
280
}
281
LinRel
282
operator <=
(
const
LinExpr
& l,
const
BoolVar
&
r
) {
283
return
LinRel
(l,
IRT_LQ
,r);
284
}
285
LinRel
286
operator <=
(
const
LinExpr
& l,
const
LinExpr
&
r
) {
287
return
LinRel
(l,
IRT_LQ
,r);
288
}
289
290
LinRel
291
operator >
(
int
l,
const
IntVar
&
r
) {
292
return
LinRel
(l,
IRT_GR
,r);
293
}
294
LinRel
295
operator >
(
int
l,
const
BoolVar
&
r
) {
296
return
LinRel
(l,
IRT_GR
,r);
297
}
298
LinRel
299
operator >
(
int
l,
const
LinExpr
&
r
) {
300
return
LinRel
(l,
IRT_GR
,r);
301
}
302
LinRel
303
operator >
(
const
IntVar
& l,
int
r
) {
304
return
LinRel
(l,
IRT_GR
,r);
305
}
306
LinRel
307
operator >
(
const
BoolVar
& l,
int
r
) {
308
return
LinRel
(l,
IRT_GR
,r);
309
}
310
LinRel
311
operator >
(
const
LinExpr
& l,
int
r
) {
312
return
LinRel
(l,
IRT_GR
,r);
313
}
314
LinRel
315
operator >
(
const
IntVar
& l,
const
IntVar
&
r
) {
316
return
LinRel
(l,
IRT_GR
,r);
317
}
318
LinRel
319
operator >
(
const
IntVar
& l,
const
BoolVar
&
r
) {
320
return
LinRel
(l,
IRT_GR
,r);
321
}
322
LinRel
323
operator >
(
const
BoolVar
& l,
const
IntVar
&
r
) {
324
return
LinRel
(l,
IRT_GR
,r);
325
}
326
LinRel
327
operator >
(
const
BoolVar
& l,
const
BoolVar
&
r
) {
328
return
LinRel
(l,
IRT_GR
,r);
329
}
330
LinRel
331
operator >
(
const
IntVar
& l,
const
LinExpr
&
r
) {
332
return
LinRel
(l,
IRT_GR
,r);
333
}
334
LinRel
335
operator >
(
const
BoolVar
& l,
const
LinExpr
&
r
) {
336
return
LinRel
(l,
IRT_GR
,r);
337
}
338
LinRel
339
operator >
(
const
LinExpr
& l,
const
IntVar
&
r
) {
340
return
LinRel
(l,
IRT_GR
,r);
341
}
342
LinRel
343
operator >
(
const
LinExpr
& l,
const
BoolVar
&
r
) {
344
return
LinRel
(l,
IRT_GR
,r);
345
}
346
LinRel
347
operator >
(
const
LinExpr
& l,
const
LinExpr
&
r
) {
348
return
LinRel
(l,
IRT_GR
,r);
349
}
350
351
LinRel
352
operator >=
(
int
l,
const
IntVar
&
r
) {
353
return
LinRel
(l,
IRT_GQ
,r);
354
}
355
LinRel
356
operator >=
(
int
l,
const
BoolVar
&
r
) {
357
return
LinRel
(l,
IRT_GQ
,r);
358
}
359
LinRel
360
operator >=
(
int
l,
const
LinExpr
&
r
) {
361
return
LinRel
(l,
IRT_GQ
,r);
362
}
363
LinRel
364
operator >=
(
const
IntVar
& l,
int
r
) {
365
return
LinRel
(l,
IRT_GQ
,r);
366
}
367
LinRel
368
operator >=
(
const
BoolVar
& l,
int
r
) {
369
return
LinRel
(l,
IRT_GQ
,r);
370
}
371
LinRel
372
operator >=
(
const
LinExpr
& l,
int
r
) {
373
return
LinRel
(l,
IRT_GQ
,r);
374
}
375
LinRel
376
operator >=
(
const
IntVar
& l,
const
IntVar
&
r
) {
377
return
LinRel
(l,
IRT_GQ
,r);
378
}
379
LinRel
380
operator >=
(
const
IntVar
& l,
const
BoolVar
&
r
) {
381
return
LinRel
(l,
IRT_GQ
,r);
382
}
383
LinRel
384
operator >=
(
const
BoolVar
& l,
const
IntVar
&
r
) {
385
return
LinRel
(l,
IRT_GQ
,r);
386
}
387
LinRel
388
operator >=
(
const
BoolVar
& l,
const
BoolVar
&
r
) {
389
return
LinRel
(l,
IRT_GQ
,r);
390
}
391
LinRel
392
operator >=
(
const
IntVar
& l,
const
LinExpr
&
r
) {
393
return
LinRel
(l,
IRT_GQ
,r);
394
}
395
LinRel
396
operator >=
(
const
BoolVar
& l,
const
LinExpr
&
r
) {
397
return
LinRel
(l,
IRT_GQ
,r);
398
}
399
LinRel
400
operator >=
(
const
LinExpr
& l,
const
IntVar
&
r
) {
401
return
LinRel
(l,
IRT_GQ
,r);
402
}
403
LinRel
404
operator >=
(
const
LinExpr
& l,
const
BoolVar
&
r
) {
405
return
LinRel
(l,
IRT_GQ
,r);
406
}
407
LinRel
408
operator >=
(
const
LinExpr
& l,
const
LinExpr
&
r
) {
409
return
LinRel
(l,
IRT_GQ
,r);
410
}
411
412
}
413
414
// STATISTICS: minimodel-any