On Wed, Oct 24, 2012 at 6:07 PM, Jamie Brandon <ja...@scattered-thoughts.net > wrote:
> It sounds like something that would benefit from good constraint > propagation. If I remember correctly, core.logic only support > propagating equality/inequality constraints which can be pretty slow > for exploring large domains. Something like gecode > (http://www.gecode.org) might be a better fit if you want to use large > integer domains. > > Where core.logic lvars can only be assigned or fresh, gecode > explicitly represents the domain of each variable and can efficiently > propagate constraints across them. In your example, x and y would both > have domain [0,5]. If you added the constraint x >=3, after > propagation you would have x: [3,5] y:[0,2] > Not true anymore - we have interval propagation and we actually leverage it unlike the Scheme cKanren implementation. There's still plenty of room for improvement. > Gecode also has support for custom search strategies which would allow > writing heuristics for minimisation. I'm not sure if gecode would ever > be as fast as a linear programming solution but it's certainly more > flexible. > Yes this what I was talking about when I referred to the Mozart/Oz distribute facility. This is pretty simple to add to core.logic as far as I can tell as I've stated earlier. -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en