Hi,
I've been trying for a couple of weeks to get to grips with a
combination of FD's and FS's.
My problem can be demonstrated with the following script:
declare
proc {Script Root}
A B C in
Root=A#B#C
A::1#2
C::1#2
B={FS.var.upperBound 1#2}
{FS.card B C}
C=<:A
{FD.distribute ff A#C}
%{FS.distribute ff B}
end
{ExploreAll Script}
Now, as expected I get three solutions to this script. One correctly
gives B as {1#2}#2. What I would like is for the other two solutions is
to get {1}#1 and {2}#1 resp. but I get {1#2}#1 for both.
I understand why I'm not getting this (there is nothing to constrain the
FS value to 1 or 2) but what I don't understand is how I could rewrite
this to get the desired results. I initially thought that this would
simply be a case of distributing the FS variable separately (on the
commented out line) but then I lose the successful solution and am left
with two solutions that are suspended.
I realise this is my lack of understanding so if anyone could suggest
anything I'd be very grateful.
Regards
Mark
--
Mark Richardson
Research Assistant
University of Teesside, UK
[email protected]
[email protected]
[email protected]
_________________________________________________________________________________
mozart-users mailing list
[email protected]
http://www.mozart-oz.org/mailman/listinfo/mozart-users