38 namespace Gecode {
namespace Int {
namespace Rel {
45 template<
class View0,
class View1>
50 template<
class View0,
class View1>
55 }
else if (x1.assigned()) {
57 }
else if (!
same(x0,x1)) {
67 template<
class View0,
class View1>
72 template<
class View0,
class View1>
79 template<
class View0,
class View1>
85 template<
class View0,
class View1>
90 }
else if (x1.assigned()) {
96 }
while (x0.min() != x1.min());
100 }
while (x0.max() != x1.max());
104 assert(x0.assigned() && x1.assigned());
113 template<
class View0,
class View1>
118 template<
class View0,
class View1>
123 }
else if (x1.assigned()) {
125 }
else if (!
same(x0,x1)) {
136 template<
class View0,
class View1>
141 template<
class View0,
class View1>
148 template<
class View0,
class View1>
154 template<
class View0,
class View1>
165 template<
class View0,
class View1>
180 }
while (x0.min() != x1.min());
184 }
while (x0.max() != x1.max());
187 if (x0.range() && x1.range())
218 }
else if (x.
size() > 2) {
221 for (
int i=x.
size();
i-- > 1; ) {
225 for (
int i=x.
size();
i--; ) {
258 assert(
x.size() > 2);
263 for (
int i = 0; ;
i++)
267 for (
int j =
x.size(); j--; )
279 for (
int i =
x.size();
i--; ) {
281 if (mn <
x[
i].
min()) {
291 for (
int i =
x.size();
i--; ) {
293 if (mx >
x[
i].
max()) {
308 for (
int i = n;
i--; ) {
319 for (
int i = n;
i--; ) {
324 for (
int i = n;
i--; ) {
350 }
else if (x.
size() > 2) {
353 for (
int i=x.
size();
i-- > 1; ) {
357 for (
int i=x.
size();
i--; ) {
389 assert(
x.size() > 2);
392 for (
int i = 0; ;
i++)
396 for (
int j =
x.size(); j--; )
405 for (
int i =
x.size();
i--; ) {
407 if (mn <
x[
i].
min()) {
414 for (
int i =
x.size();
i--; ) {
416 if (mx >
x[
i].
max()) {
431 template<
class View,
class CtrlView, ReifyMode rm>
436 template<
class View,
class CtrlView, ReifyMode rm>
450 (void)
new (home)
ReEqDom(home,x0,x1,b);
451 }
else if (rm !=
RM_IMP) {
458 template<
class View,
class CtrlView, ReifyMode rm>
463 template<
class View,
class CtrlView, ReifyMode rm>
469 template<
class View,
class CtrlView, ReifyMode rm>
505 template<
class View,
class CtrlView, ReifyMode rm>
510 template<
class View,
class CtrlView, ReifyMode rm>
524 (void)
new (home)
ReEqBnd(home,x0,x1,b);
525 }
else if (rm !=
RM_IMP) {
532 template<
class View,
class CtrlView, ReifyMode rm>
537 template<
class View,
class CtrlView, ReifyMode rm>
543 template<
class View,
class CtrlView, ReifyMode rm>
580 template<
class View,
class CtrlView, ReifyMode rm>
586 template<
class View,
class CtrlView, ReifyMode rm>
592 }
else if (b.zero()) {
595 }
else if (x.assigned()) {
611 template<
class View,
class CtrlView, ReifyMode rm>
617 template<
class View,
class CtrlView, ReifyMode rm>
623 template<
class View,
class CtrlView, ReifyMode rm>
629 }
else if (b.zero()) {
658 template<
class View,
class CtrlView, ReifyMode rm>
661 (
Home home, View x,
int c0, CtrlView b)
664 template<
class View,
class CtrlView, ReifyMode rm>
670 }
else if (b.zero()) {
673 }
else if (x.assigned()) {
689 template<
class View,
class CtrlView, ReifyMode rm>
694 template<
class View,
class CtrlView, ReifyMode rm>
700 template<
class View,
class CtrlView, ReifyMode rm>
706 }
else if (b.zero()) {