Re: clpfd constraints not taking effect
Markus Triska <[email protected]>
| Newsgroups | gmane.comp.ai.prolog.swi |
|---|---|
| Message-ID | <[email protected]> |
Hi James, James Hogan <[email protected]> writes: > Thanks for the patch. I gave it a spin, and tested before and after > your change, but it appears that although it fixes the simple case, it > makes my big case (with over 2000 constraints) go much slower (gets > slower as it goes through the constraints, keeps stopping momentarily > on a constraint), and then about half way it says: > > ERROR: Out of global stack Please send me your test case, I will try to get the change working in such situations. I have for now reverted it. Meanwhile, you can enable full propagation by setting the flag clpfd_propagation to 'full': ?- set_prolog_flag(clpfd_propagation, full). %@ true. ?- B #= C+1, B #< D, C #>= 10, C #>= 100. %@ B in 101..sup, %@ B#=<D+ -1, %@ C+1#=B, %@ D in 102..sup, %@ C in 100..sup. This makes propagation and also labeling/2 non-terminating in general! All the best, Markus