Hi,
No, not all. For the details please read chapter 25 in MPG, it has the full story! The difference (in short) is that nq removes a single integer value, whereas minus_r removes a whole set of values represented by a range iterator. As said, please check MPG. Christian -- Christian Schulte, <http://www.gecode.org/~schulte> www.gecode.org/~schulte Professor of Computer Science, KTH, <mailto:[email protected]> [email protected] Expert Researcher, SICS, <mailto:[email protected]> [email protected] From: [email protected] [mailto:[email protected]] On Behalf Of mehdi m Sent: Tuesday, November 10, 2015 08:36 PM To: [email protected] Subject: [gecode-users] Difference between minus_r and nq Hi everyone, In the propagator implementation are the two following methods to remove values from domains equivalents ? - method 1 : Int::ViewRanges<Int::IntView> r(x1); GECODE_ME_CHECK(x0.minus_r(home, r)); - method 2 GECODE_ME_CHECK(x0.nq(home, val)); Or there is any difference ? I see that the first one takes a ViewRange and the second can takes an Int directly but what about correctness and efficiency of pruning ? Thanks.
_______________________________________________ Gecode users mailing list [email protected] https://www.gecode.org/mailman/listinfo/gecode-users
