> I'm assuming that using the
> =: as opposed to comparison operators results in a sort of unification -
This is false. The reified version of =: (as occurs in your code) does not
perform any unification per se (unless its result is bound to 1, of course). I
don't know exactly what problem you are solving, but if:
{FD.disj
{FD.conj Shirt=:Hard {FD.conj Pants=:Soft Socks=:Hard}}
{FD.conj Shirt=:Soft {FD.conj Pants=:Hard Socks=:Soft}}} =: 1
does not do the job it's just because it in fact does not mean exactly what you
mean :o) and not because (X=:Y) in expression position would necessarily unify
X with Y.
> So I'm
> wondering how one does a constraint whereby you say that (X == i )
> orelse (X== j)? (A non-contiuous domain).
IMHO the best way to do this is thus:
fun {NoncontDecl L}
{FS.include $ {FS.value.make L}}
end
where L is the domain specification (see doc for the FS module). For example,
try:
{Browse {NoncontDecl [1 3 5 7#11 13]}}
Cheers,
Jorge.
>
> Thanks,
> Chris Rathman
>
>
>
>
_________________________________________________________________________________
> mozart-users mailing list
> [email protected]
> http://www.mozart-oz.org/mailman/listinfo/mozart-users
>
_________________________________________________________________________________
mozart-users mailing list
[email protected]
http://www.mozart-oz.org/mailman/listinfo/mozart-users