[gecode-users] Variable base implementation question

Gustavo Gutierrez gutierrez.gustavo at uclouvain.be
Tue Jan 6 17:01:04 CET 2009


Hello all,

I have a question regarding the specification for variable base
implementation in gecode. As far as i can see, there is some code in the
gecode kernel which  is automatically generated from *.vis files.
Modification events and propagation conditions are defined in this kind of
files. I am implementing a new variable type and i want to be sure i am
doing it in the right way, so here is my question:

- There are some special words to define modification events: FAILED, NONE,
ASSIGNED and SUBSCRIBE. I am fine with the first three of them because it is
straight forward what they mean. However the fourth one is not clear to me.
According with the documentation (int.vis) SUBSCRIBE is used the first time
a propagator subscription is processed. Does it means that after the first
execution of the propagator, it will subscribe using the propagation
conditions specified in its class definition?.  In my particular case, i
have only 3 modification events apart from the generic ones: lower bound
modification, upper bound modification and both bounds modification events.
I defined the last one (called ME_GRAPH_BB in my implementation) to be the
one equal to the word SUBSCRIBE.

For this case, if a propagator P subscribes to the propagation condition
PC_GRAPH_GLB (i.e. class SomeProp : public UnaryProp<View,PC_GRAPH_GLB>
...), what is the effect of ME_GRAPH_BB=SUBSCRIBE with respect to other
possible definition such as ME_GRAPH_GLB=SUBSCRIBE?

thanks in advance,

Gustavo.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.ps.uni-sb.de/pipermail/users/attachments/20090106/784e69c7/attachment.htm>


More information about the gecode-users mailing list