main page
modules
namespaces
classes
files
Gecode home
Generated on Tue Oct 22 2013 00:49:07 for Gecode by
doxygen
1.8.4
gecode
minimodel
int-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: 2013-01-22 13:48:12 +0100 (Tue, 22 Jan 2013) $ by $Author: schulte $
11
* $Revision: 13227 $
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
LinIntRel
47
operator ==
(
int
l
,
const
IntVar
&
r
) {
48
return
LinIntRel
(l,
IRT_EQ
,r);
49
}
50
LinIntRel
51
operator ==
(
int
l
,
const
BoolVar
&
r
) {
52
return
LinIntRel
(l,
IRT_EQ
,r);
53
}
54
LinIntRel
55
operator ==
(
int
l
,
const
LinIntExpr
&
r
) {
56
return
LinIntRel
(l,
IRT_EQ
,r);
57
}
58
LinIntRel
59
operator ==
(
const
IntVar
&
l
,
int
r
) {
60
return
LinIntRel
(l,
IRT_EQ
,r);
61
}
62
LinIntRel
63
operator ==
(
const
BoolVar
&
l
,
int
r
) {
64
return
LinIntRel
(l,
IRT_EQ
,r);
65
}
66
LinIntRel
67
operator ==
(
const
LinIntExpr
&
l
,
int
r
) {
68
return
LinIntRel
(l,
IRT_EQ
,r);
69
}
70
LinIntRel
71
operator ==
(
const
IntVar
&
l
,
const
IntVar
&
r
) {
72
return
LinIntRel
(l,
IRT_EQ
,r);
73
}
74
LinIntRel
75
operator ==
(
const
IntVar
&
l
,
const
BoolVar
&
r
) {
76
return
LinIntRel
(l,
IRT_EQ
,r);
77
}
78
LinIntRel
79
operator ==
(
const
BoolVar
&
l
,
const
IntVar
&
r
) {
80
return
LinIntRel
(l,
IRT_EQ
,r);
81
}
82
LinIntRel
83
operator ==
(
const
BoolVar
&
l
,
const
BoolVar
&
r
) {
84
return
LinIntRel
(l,
IRT_EQ
,r);
85
}
86
LinIntRel
87
operator ==
(
const
IntVar
&
l
,
const
LinIntExpr
&
r
) {
88
return
LinIntRel
(l,
IRT_EQ
,r);
89
}
90
LinIntRel
91
operator ==
(
const
BoolVar
&
l
,
const
LinIntExpr
&
r
) {
92
return
LinIntRel
(l,
IRT_EQ
,r);
93
}
94
LinIntRel
95
operator ==
(
const
LinIntExpr
&
l
,
const
IntVar
&
r
) {
96
return
LinIntRel
(l,
IRT_EQ
,r);
97
}
98
LinIntRel
99
operator ==
(
const
LinIntExpr
&
l
,
const
BoolVar
&
r
) {
100
return
LinIntRel
(l,
IRT_EQ
,r);
101
}
102
LinIntRel
103
operator ==
(
const
LinIntExpr
&
l
,
const
LinIntExpr
&
r
) {
104
return
LinIntRel
(l,
IRT_EQ
,r);
105
}
106
107
LinIntRel
108
operator !=
(
int
l
,
const
IntVar
&
r
) {
109
return
LinIntRel
(l,
IRT_NQ
,r);
110
}
111
LinIntRel
112
operator !=
(
int
l
,
const
BoolVar
&
r
) {
113
return
LinIntRel
(l,
IRT_NQ
,r);
114
}
115
LinIntRel
116
operator !=
(
int
l
,
const
LinIntExpr
&
r
) {
117
return
LinIntRel
(l,
IRT_NQ
,r);
118
}
119
LinIntRel
120
operator !=
(
const
IntVar
&
l
,
int
r
) {
121
return
LinIntRel
(l,
IRT_NQ
,r);
122
}
123
LinIntRel
124
operator !=
(
const
BoolVar
&
l
,
int
r
) {
125
return
LinIntRel
(l,
IRT_NQ
,r);
126
}
127
LinIntRel
128
operator !=
(
const
LinIntExpr
&
l
,
int
r
) {
129
return
LinIntRel
(l,
IRT_NQ
,r);
130
}
131
LinIntRel
132
operator !=
(
const
IntVar
&
l
,
const
IntVar
&
r
) {
133
return
LinIntRel
(l,
IRT_NQ
,r);
134
}
135
LinIntRel
136
operator !=
(
const
IntVar
&
l
,
const
BoolVar
&
r
) {
137
return
LinIntRel
(l,
IRT_NQ
,r);
138
}
139
LinIntRel
140
operator !=
(
const
BoolVar
&
l
,
const
IntVar
&
r
) {
141
return
LinIntRel
(l,
IRT_NQ
,r);
142
}
143
LinIntRel
144
operator !=
(
const
BoolVar
&
l
,
const
BoolVar
&
r
) {
145
return
LinIntRel
(l,
IRT_NQ
,r);
146
}
147
LinIntRel
148
operator !=
(
const
IntVar
&
l
,
const
LinIntExpr
&
r
) {
149
return
LinIntRel
(l,
IRT_NQ
,r);
150
}
151
LinIntRel
152
operator !=
(
const
BoolVar
&
l
,
const
LinIntExpr
&
r
) {
153
return
LinIntRel
(l,
IRT_NQ
,r);
154
}
155
LinIntRel
156
operator !=
(
const
LinIntExpr
&
l
,
const
IntVar
&
r
) {
157
return
LinIntRel
(l,
IRT_NQ
,r);
158
}
159
LinIntRel
160
operator !=
(
const
LinIntExpr
&
l
,
const
BoolVar
&
r
) {
161
return
LinIntRel
(l,
IRT_NQ
,r);
162
}
163
LinIntRel
164
operator !=
(
const
LinIntExpr
&
l
,
const
LinIntExpr
&
r
) {
165
return
LinIntRel
(l,
IRT_NQ
,r);
166
}
167
168
LinIntRel
169
operator <
(
int
l
,
const
IntVar
&
r
) {
170
return
LinIntRel
(l,
IRT_LE
,r);
171
}
172
LinIntRel
173
operator <
(
int
l
,
const
BoolVar
&
r
) {
174
return
LinIntRel
(l,
IRT_LE
,r);
175
}
176
LinIntRel
177
operator <
(
int
l
,
const
LinIntExpr
&
r
) {
178
return
LinIntRel
(l,
IRT_LE
,r);
179
}
180
LinIntRel
181
operator <
(
const
IntVar
&
l
,
int
r
) {
182
return
LinIntRel
(l,
IRT_LE
,r);
183
}
184
LinIntRel
185
operator <
(
const
BoolVar
&
l
,
int
r
) {
186
return
LinIntRel
(l,
IRT_LE
,r);
187
}
188
LinIntRel
189
operator <
(
const
LinIntExpr
&
l
,
int
r
) {
190
return
LinIntRel
(l,
IRT_LE
,r);
191
}
192
LinIntRel
193
operator <
(
const
IntVar
&
l
,
const
IntVar
&
r
) {
194
return
LinIntRel
(l,
IRT_LE
,r);
195
}
196
LinIntRel
197
operator <
(
const
IntVar
&
l
,
const
BoolVar
&
r
) {
198
return
LinIntRel
(l,
IRT_LE
,r);
199
}
200
LinIntRel
201
operator <
(
const
BoolVar
&
l
,
const
IntVar
&
r
) {
202
return
LinIntRel
(l,
IRT_LE
,r);
203
}
204
LinIntRel
205
operator <
(
const
BoolVar
&
l
,
const
BoolVar
&
r
) {
206
return
LinIntRel
(l,
IRT_LE
,r);
207
}
208
LinIntRel
209
operator <
(
const
IntVar
&
l
,
const
LinIntExpr
&
r
) {
210
return
LinIntRel
(l,
IRT_LE
,r);
211
}
212
LinIntRel
213
operator <
(
const
BoolVar
&
l
,
const
LinIntExpr
&
r
) {
214
return
LinIntRel
(l,
IRT_LE
,r);
215
}
216
LinIntRel
217
operator <
(
const
LinIntExpr
&
l
,
const
IntVar
&
r
) {
218
return
LinIntRel
(l,
IRT_LE
,r);
219
}
220
LinIntRel
221
operator <
(
const
LinIntExpr
&
l
,
const
BoolVar
&
r
) {
222
return
LinIntRel
(l,
IRT_LE
,r);
223
}
224
LinIntRel
225
operator <
(
const
LinIntExpr
&
l
,
const
LinIntExpr
&
r
) {
226
return
LinIntRel
(l,
IRT_LE
,r);
227
}
228
229
LinIntRel
230
operator <=
(
int
l
,
const
IntVar
&
r
) {
231
return
LinIntRel
(l,
IRT_LQ
,r);
232
}
233
LinIntRel
234
operator <=
(
int
l
,
const
BoolVar
&
r
) {
235
return
LinIntRel
(l,
IRT_LQ
,r);
236
}
237
LinIntRel
238
operator <=
(
int
l
,
const
LinIntExpr
&
r
) {
239
return
LinIntRel
(l,
IRT_LQ
,r);
240
}
241
LinIntRel
242
operator <=
(
const
IntVar
&
l
,
int
r
) {
243
return
LinIntRel
(l,
IRT_LQ
,r);
244
}
245
LinIntRel
246
operator <=
(
const
BoolVar
&
l
,
int
r
) {
247
return
LinIntRel
(l,
IRT_LQ
,r);
248
}
249
LinIntRel
250
operator <=
(
const
LinIntExpr
&
l
,
int
r
) {
251
return
LinIntRel
(l,
IRT_LQ
,r);
252
}
253
LinIntRel
254
operator <=
(
const
IntVar
&
l
,
const
IntVar
&
r
) {
255
return
LinIntRel
(l,
IRT_LQ
,r);
256
}
257
LinIntRel
258
operator <=
(
const
IntVar
&
l
,
const
BoolVar
&
r
) {
259
return
LinIntRel
(l,
IRT_LQ
,r);
260
}
261
LinIntRel
262
operator <=
(
const
BoolVar
&
l
,
const
IntVar
&
r
) {
263
return
LinIntRel
(l,
IRT_LQ
,r);
264
}
265
LinIntRel
266
operator <=
(
const
BoolVar
&
l
,
const
BoolVar
&
r
) {
267
return
LinIntRel
(l,
IRT_LQ
,r);
268
}
269
LinIntRel
270
operator <=
(
const
IntVar
&
l
,
const
LinIntExpr
&
r
) {
271
return
LinIntRel
(l,
IRT_LQ
,r);
272
}
273
LinIntRel
274
operator <=
(
const
BoolVar
&
l
,
const
LinIntExpr
&
r
) {
275
return
LinIntRel
(l,
IRT_LQ
,r);
276
}
277
LinIntRel
278
operator <=
(
const
LinIntExpr
&
l
,
const
IntVar
&
r
) {
279
return
LinIntRel
(l,
IRT_LQ
,r);
280
}
281
LinIntRel
282
operator <=
(
const
LinIntExpr
&
l
,
const
BoolVar
&
r
) {
283
return
LinIntRel
(l,
IRT_LQ
,r);
284
}
285
LinIntRel
286
operator <=
(
const
LinIntExpr
&
l
,
const
LinIntExpr
&
r
) {
287
return
LinIntRel
(l,
IRT_LQ
,r);
288
}
289
290
LinIntRel
291
operator >
(
int
l
,
const
IntVar
&
r
) {
292
return
LinIntRel
(l,
IRT_GR
,r);
293
}
294
LinIntRel
295
operator >
(
int
l
,
const
BoolVar
&
r
) {
296
return
LinIntRel
(l,
IRT_GR
,r);
297
}
298
LinIntRel
299
operator >
(
int
l
,
const
LinIntExpr
&
r
) {
300
return
LinIntRel
(l,
IRT_GR
,r);
301
}
302
LinIntRel
303
operator >
(
const
IntVar
&
l
,
int
r
) {
304
return
LinIntRel
(l,
IRT_GR
,r);
305
}
306
LinIntRel
307
operator >
(
const
BoolVar
&
l
,
int
r
) {
308
return
LinIntRel
(l,
IRT_GR
,r);
309
}
310
LinIntRel
311
operator >
(
const
LinIntExpr
&
l
,
int
r
) {
312
return
LinIntRel
(l,
IRT_GR
,r);
313
}
314
LinIntRel
315
operator >
(
const
IntVar
&
l
,
const
IntVar
&
r
) {
316
return
LinIntRel
(l,
IRT_GR
,r);
317
}
318
LinIntRel
319
operator >
(
const
IntVar
&
l
,
const
BoolVar
&
r
) {
320
return
LinIntRel
(l,
IRT_GR
,r);
321
}
322
LinIntRel
323
operator >
(
const
BoolVar
&
l
,
const
IntVar
&
r
) {
324
return
LinIntRel
(l,
IRT_GR
,r);
325
}
326
LinIntRel
327
operator >
(
const
BoolVar
&
l
,
const
BoolVar
&
r
) {
328
return
LinIntRel
(l,
IRT_GR
,r);
329
}
330
LinIntRel
331
operator >
(
const
IntVar
&
l
,
const
LinIntExpr
&
r
) {
332
return
LinIntRel
(l,
IRT_GR
,r);
333
}
334
LinIntRel
335
operator >
(
const
BoolVar
&
l
,
const
LinIntExpr
&
r
) {
336
return
LinIntRel
(l,
IRT_GR
,r);
337
}
338
LinIntRel
339
operator >
(
const
LinIntExpr
&
l
,
const
IntVar
&
r
) {
340
return
LinIntRel
(l,
IRT_GR
,r);
341
}
342
LinIntRel
343
operator >
(
const
LinIntExpr
&
l
,
const
BoolVar
&
r
) {
344
return
LinIntRel
(l,
IRT_GR
,r);
345
}
346
LinIntRel
347
operator >
(
const
LinIntExpr
&
l
,
const
LinIntExpr
&
r
) {
348
return
LinIntRel
(l,
IRT_GR
,r);
349
}
350
351
LinIntRel
352
operator >=
(
int
l
,
const
IntVar
&
r
) {
353
return
LinIntRel
(l,
IRT_GQ
,r);
354
}
355
LinIntRel
356
operator >=
(
int
l
,
const
BoolVar
&
r
) {
357
return
LinIntRel
(l,
IRT_GQ
,r);
358
}
359
LinIntRel
360
operator >=
(
int
l
,
const
LinIntExpr
&
r
) {
361
return
LinIntRel
(l,
IRT_GQ
,r);
362
}
363
LinIntRel
364
operator >=
(
const
IntVar
&
l
,
int
r
) {
365
return
LinIntRel
(l,
IRT_GQ
,r);
366
}
367
LinIntRel
368
operator >=
(
const
BoolVar
&
l
,
int
r
) {
369
return
LinIntRel
(l,
IRT_GQ
,r);
370
}
371
LinIntRel
372
operator >=
(
const
LinIntExpr
&
l
,
int
r
) {
373
return
LinIntRel
(l,
IRT_GQ
,r);
374
}
375
LinIntRel
376
operator >=
(
const
IntVar
&
l
,
const
IntVar
&
r
) {
377
return
LinIntRel
(l,
IRT_GQ
,r);
378
}
379
LinIntRel
380
operator >=
(
const
IntVar
&
l
,
const
BoolVar
&
r
) {
381
return
LinIntRel
(l,
IRT_GQ
,r);
382
}
383
LinIntRel
384
operator >=
(
const
BoolVar
&
l
,
const
IntVar
&
r
) {
385
return
LinIntRel
(l,
IRT_GQ
,r);
386
}
387
LinIntRel
388
operator >=
(
const
BoolVar
&
l
,
const
BoolVar
&
r
) {
389
return
LinIntRel
(l,
IRT_GQ
,r);
390
}
391
LinIntRel
392
operator >=
(
const
IntVar
&
l
,
const
LinIntExpr
&
r
) {
393
return
LinIntRel
(l,
IRT_GQ
,r);
394
}
395
LinIntRel
396
operator >=
(
const
BoolVar
&
l
,
const
LinIntExpr
&
r
) {
397
return
LinIntRel
(l,
IRT_GQ
,r);
398
}
399
LinIntRel
400
operator >=
(
const
LinIntExpr
&
l
,
const
IntVar
&
r
) {
401
return
LinIntRel
(l,
IRT_GQ
,r);
402
}
403
LinIntRel
404
operator >=
(
const
LinIntExpr
&
l
,
const
BoolVar
&
r
) {
405
return
LinIntRel
(l,
IRT_GQ
,r);
406
}
407
LinIntRel
408
operator >=
(
const
LinIntExpr
&
l
,
const
LinIntExpr
&
r
) {
409
return
LinIntRel
(l,
IRT_GQ
,r);
410
}
411
412
}
413
414
// STATISTICS: minimodel-any