Hello,
Thank you very much. I am going to look at your answers.
I am starting a new branch of gecol (gecode interface for lisp)
in order to make it work with Gecode 2.0.0.
It has support for finite domain and some functions of finite set.
If there is anyone interested in working on this project please
contact me. We are needing all the help available.
Mauricio
2008/1/25, Guido Tack <[EMAIL PROTECTED]>:
>
> Mauricio Toro wrote:
> > I had this function before when using Gecode 1.3.1
> >
> > void rel_intset_setoptype_intset_setreltype_setvar(Space *home,
> > const IntSet *x, SetOpType op, const IntSet *y, SetRelType r, SetVar
> > *z)
> > {
> > //Gecode::rel(home, *x, op, *y, r, *z); ???
> > }
> >
> > How can I port it to Gecode 2.0.0?
>
> You have to emulate it like this:
>
> void rel_intset_setoptype_intset_setreltype_setvar(Space *home, const
> IntSet *x, SetOpType op, const IntSet *y, SetRelType r, SetVar *z)
> {
> Gecode::IntSetRanges xr(*x);
> Gecode::IntSetRanges yr(*y);
> switch (op) {
> case SOT_INTER:
> {
> Gecode::Iter::Ranges::Inter< Gecode::IntSetRanges,
> Gecode::IntSetRanges > ir(xr,yr);
> Gecode::IntSet result(ir);
> Gecode::dom(home, *z, inverse(r), ir);
> }
> break;
> case SOT_UNION:
> ...
> }
> case ...
> }
> }
>
> Where inverse(r) is pseudo-code for inverting the relation (SRT_SUB <-
> > SRT_SUP).
>
> We'll add support for things like this to the minimodel layer, but we
> removed it from the main library because it is really just a modeling
> help.
>
> Cheers,
> Guido
>
>
--
Mauricio Toro Bermudez
Estudiante de Ingeniería de Sistemas
Pontificia Universidad Javeriana, Colombia
Stagiare à l'Ircam
1, place Igor-Stravinsky 75004 Paris,
France de 2008 à 2009
_______________________________________________
Gecode users mailing list
[EMAIL PROTECTED]
https://www.gecode.org/mailman/listinfo/gecode-users