[gecode-users] propagator PropCond

Martin Mann mmann at informatik.uni-freiburg.de
Mon May 15 22:47:34 CEST 2006


> You have to return ES_SUBSUMED at the latest when all your variables are
> assigned - otherwise the propagator will not be destroyed, resulting in a
> space leak. You can return it earlier, when you detect that your
> propagator doesn't have to be called again. For instance, in a propagator
> for x<y, you can return ES_SUBSUMED once the maximum of x is smaller than
> the minimum of y, even if neither is yet assigned.

ah ok. memory leaks are nothing i want to have..

>From propagate, you should only return ES_FAILED, ES_SUBSUMED, ES_FIX, or
> ES_NOFIX (and special versions of the latter two for staged propagation,
> which you can ignore for now). Whether to return FIX or NOFIX depends on
> whether you know that your propagator has reached a fixpoint. If unsure,
> return NOFIX. This may result in your propagator being called too often
> (which may be less efficient but correct). Returning FIX although you're
> not at a fixpoint can result in the propagator being called not often
> enough, and you might miss a failure: dangerous!

Think thats something that should occure in the documentation of the 
Gecode::PropCond
reference. Without your help I would have gone mad with debugging...

Thanks a lot

Martin





More information about the gecode-users mailing list