Hi there, Is there a rationale for the fact that, according to delayed_goals/{1,2}, the total number of delayed goals can be less than the number of delayed goals for one single variable? Running Eclipse 5.4 on a Linux box, and having loaded lib(fd), I observe [eclipse 3]: X#=Y+Z,delayed_goals(D),length(D,DL). X = X{[-10000000..10000000]} Y = Y{[-10000000..10000000]} Z = Z{[-10000000..10000000]} D = [fd_eq([0, -1 * Z{[-10000000..10000000]}, -1 * Y{[-10000000..10000000]}, 1 * X{[-10000000..10000000]}])] DL = 1 Delayed goals: 0 - Z{[-10000000..10000000]} - Y{[-10000000..10000000]} + X{[-10000000..10000000]}#=0 and I'm fine with it. I don't understand the reason for the second element that is returned by delayed_goals/2, however: [eclipse 4]: X#=Y+Z,delayed_goals(X,D),length(D,DL). Y = Y{[-10000000..10000000]} Z = Z{[-10000000..10000000]} X = X{[-10000000..10000000]} D = [fd_eq([0, 1 * X{[-10000000..10000000]}, -1 * Z{[-10000000..10000000]}, -1 * Y{[-10000000..10000000]}]), fd_eq([0, 1 * X, -1 * Z, -1 * Y])] DL = 2 Delayed goals: 0 + X{[-10000000..10000000]} - Z{[-10000000..10000000]} - Y{[-10000000..10000000]}#=0 I guess it does not affect the soundness of the constraint solver (in notinstance:~=/2, for instance, identical constraints are also stored more than once). If, as in my case, the task is to reconstruct goals from constraints in the store, this can be worked around, but seems like an inconvenience. Is it possible to get just the first solution? Thanks, Alex -- ______________________________ Alexander Pretschner Software&Systems Engineering Institut fuer Informatik, TU Muenchen ph. +49 89 28928325 fax +49 89 28925310 _____________________________ GMX - Die Kommunikationsplattform im Internet. http://www.gmx.netReceived on Mon Jul 15 10:45:47 2002
This archive was generated by hypermail 2.1.8 : Wed 16 Nov 2005 06:07:15 PM GMT GMT