Lines Matching refs:home

47   Lq<View>::Lq(Home home, View x0, View x1)  in Lq()  argument
48 : BinaryPropagator<View,PC_FLOAT_BND>(home,x0,x1) {} in Lq()
52 Lq<View>::post(Home home, View x0, View x1) { in post() argument
53 GECODE_ME_CHECK(x0.lq(home,x1.max())); in post()
54 GECODE_ME_CHECK(x1.gq(home,x0.min())); in post()
56 (void) new (home) Lq<View>(home,x0,x1); in post()
62 Lq<View>::Lq(Space& home, Lq<View>& p) in Lq() argument
63 : BinaryPropagator<View,PC_FLOAT_BND>(home,p) {} in Lq()
67 Lq<View>::copy(Space& home) { in copy() argument
68 return new (home) Lq<View>(home,*this); in copy()
73 Lq<View>::propagate(Space& home, const ModEventDelta&) { in propagate() argument
74 GECODE_ME_CHECK(x0.lq(home,x1.max())); in propagate()
75 GECODE_ME_CHECK(x1.gq(home,x0.min())); in propagate()
76 …return (x0.assigned() || x1.assigned() || (x0.max() <= x1.min())) ? home.ES_SUBSUMED(*this) : ES_F… in propagate()
86 Le<View>::Le(Home home, View x0, View x1) in Le() argument
87 : BinaryPropagator<View,PC_FLOAT_BND>(home,x0,x1) {} in Le()
91 Le<View>::post(Home home, View x0, View x1) { in post() argument
92 GECODE_ME_CHECK(x0.lq(home,x1.max())); in post()
93 GECODE_ME_CHECK(x1.gq(home,x0.min())); in post()
100 (void) new (home) Le<View>(home,x0,x1); in post()
106 Le<View>::Le(Space& home, Le<View>& p) in Le() argument
107 : BinaryPropagator<View,PC_FLOAT_BND>(home,p) {} in Le()
111 Le<View>::copy(Space& home) { in copy() argument
112 return new (home) Le<View>(home,*this); in copy()
117 Le<View>::propagate(Space& home, const ModEventDelta&) { in propagate() argument
118 GECODE_ME_CHECK(x0.lq(home,x1.max())); in propagate()
119 GECODE_ME_CHECK(x1.gq(home,x0.min())); in propagate()
121 return (x0.max() >= x1.min()) ? ES_FAILED : home.ES_SUBSUMED(*this); in propagate()
123 return (x0.max() < x1.min()) ? home.ES_SUBSUMED(*this) : ES_FIX; in propagate()
136 ReLq<View,CtrlView,rm>::ReLq(Home home, View x0, View x1, CtrlView b) in ReLq() argument
137 : Int::ReBinaryPropagator<View,PC_FLOAT_BND,CtrlView>(home,x0,x1,b) {} in ReLq()
141 ReLq<View,CtrlView,rm>::post(Home home, View x0, View x1, CtrlView b) { in post() argument
145 return Lq<View>::post(home,x0,x1); in post()
150 return Le<View>::post(home,x1,x0); in post()
156 GECODE_ME_CHECK(b.one_none(home)); in post()
160 GECODE_ME_CHECK(b.zero_none(home)); in post()
164 (void) new (home) ReLq<View,CtrlView,rm>(home,x0,x1,b); in post()
167 GECODE_ME_CHECK(b.one_none(home)); in post()
173 GECODE_ME_CHECK(b.one_none(home)); in post()
180 ReLq<View,CtrlView,rm>::ReLq(Space& home, ReLq& p) in ReLq() argument
181 : Int::ReBinaryPropagator<View,PC_FLOAT_BND,CtrlView>(home,p) {} in ReLq()
185 ReLq<View,CtrlView,rm>::copy(Space& home) { in copy() argument
186 return new (home) ReLq<View,CtrlView,rm>(home,*this); in copy()
191 ReLq<View,CtrlView,rm>::propagate(Space& home, const ModEventDelta&) { in propagate() argument
194 GECODE_REWRITE(*this,Lq<View>::post(home(*this),x0,x1)); in propagate()
197 GECODE_REWRITE(*this,Le<View>::post(home(*this),x1,x0)); in propagate()
202 GECODE_ME_CHECK(b.one_none(home)); in propagate()
206 GECODE_ME_CHECK(b.zero_none(home)); in propagate()
213 GECODE_ME_CHECK(b.one_none(home)); in propagate()
219 return home.ES_SUBSUMED(*this); in propagate()
229 ReLqFloat<View,CtrlView,rm>::ReLqFloat(Home home, View x, FloatVal c0, CtrlView b) in ReLqFloat() argument
230 : Int::ReUnaryPropagator<View,PC_FLOAT_BND,CtrlView>(home,x,b), c(c0) {} in ReLqFloat()
234 ReLqFloat<View,CtrlView,rm>::post(Home home, View x, FloatVal c, CtrlView b) { in post() argument
237 GECODE_ME_CHECK(x.lq(home,c.max())); in post()
240 GECODE_ME_CHECK(x.gq(home,c.min())); in post()
243 (void) new (home) ReLqFloat<View,CtrlView,rm>(home,x,c,b); in post()
249 GECODE_ME_CHECK(b.one(home)); in post()
253 GECODE_ME_CHECK(b.zero(home)); in post()
256 (void) new (home) ReLqFloat<View,CtrlView,rm>(home,x,c,b); in post()
267 ReLqFloat<View,CtrlView,rm>::ReLqFloat(Space& home, ReLqFloat& p) in ReLqFloat() argument
268 : Int::ReUnaryPropagator<View,PC_FLOAT_BND,CtrlView>(home,p), c(p.c) {} in ReLqFloat()
272 ReLqFloat<View,CtrlView,rm>::copy(Space& home) { in copy() argument
273 return new (home) ReLqFloat<View,CtrlView,rm>(home,*this); in copy()
278 ReLqFloat<View,CtrlView,rm>::propagate(Space& home, const ModEventDelta&) { in propagate() argument
281 GECODE_ME_CHECK(x0.lq(home,c.max())); in propagate()
285 GECODE_ME_CHECK(x0.gq(home,c.min())); in propagate()
287 return (x0.min() <= c.max()) ? ES_FAILED : home.ES_SUBSUMED(*this); in propagate()
294 GECODE_ME_CHECK(b.one(home)); in propagate()
298 GECODE_ME_CHECK(b.zero(home)); in propagate()
305 return home.ES_SUBSUMED(*this); in propagate()
316 ReLeFloat<View,CtrlView,rm>::ReLeFloat(Home home, View x, FloatVal c0, CtrlView b) in ReLeFloat() argument
317 : Int::ReUnaryPropagator<View,PC_FLOAT_BND,CtrlView>(home,x,b), c(c0) {} in ReLeFloat()
321 ReLeFloat<View,CtrlView,rm>::post(Home home, View x, FloatVal c, CtrlView b) { in post() argument
325 GECODE_ME_CHECK(x.lq(home,c.max())); in post()
328 (void) new (home) ReLeFloat<View,CtrlView,rm>(home,x,c,b); in post()
332 GECODE_ME_CHECK(x.gq(home,c.min())); in post()
337 GECODE_ME_CHECK(b.one(home)); in post()
341 GECODE_ME_CHECK(b.zero(home)); in post()
344 (void) new (home) ReLeFloat<View,CtrlView,rm>(home,x,c,b); in post()
355 ReLeFloat<View,CtrlView,rm>::ReLeFloat(Space& home, ReLeFloat& p) in ReLeFloat() argument
356 : Int::ReUnaryPropagator<View,PC_FLOAT_BND,CtrlView>(home,p), c(p.c) {} in ReLeFloat()
360 ReLeFloat<View,CtrlView,rm>::copy(Space& home) { in copy() argument
361 return new (home) ReLeFloat<View,CtrlView,rm>(home,*this); in copy()
366 ReLeFloat<View,CtrlView,rm>::propagate(Space& home, const ModEventDelta&) { in propagate() argument
370 GECODE_ME_CHECK(x0.lq(home,c.max())); in propagate()
372 return (x0.max() >= c.min()) ? ES_FAILED : home.ES_SUBSUMED(*this); in propagate()
377 GECODE_ME_CHECK(x0.gq(home,c.min())); in propagate()
382 GECODE_ME_CHECK(b.one(home)); in propagate()
386 GECODE_ME_CHECK(b.zero(home)); in propagate()
393 return home.ES_SUBSUMED(*this); in propagate()