Wow, thanks for the great information everyone.

David – I don't know how we'll make it pluggable, I was thinking users
could provide functions that return a set of constraints. And there
would probably be a cost function that users could override as well.

On Oct 24, 3:26 pm, Jamie Brandon <ja...@scattered-thoughts.net>
wrote:
> Ok, clearly I've not been keeping up, sorry :)
>
> On 24 October 2012 18:17, David Nolen <dnolen.li...@gmail.com> wrote:
>
>
>
>
>
>
>
> > 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

-- 
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

Reply via email to