Next: Built-In Facilities
Up: Using the System
Previous: Notes on Efficiency
The following identifies the main reasons why the CLP( ) implementation
does not perfectly conform to the idealized CLP scheme.
- No occurs check during (functor) unification;
- Depth-first search (loss of completeness);
- Floating point:
because this implementation of CLP( ) makes use of double precision floating
point arithmetic, some problems may be caused by artifacts such as roundoff.
The most common problem is that a constraint used as a test (in that all
variables are ground) unexpectedly fails because of round-off. This is dealt
with by adjusting the amount of slack that the system allows in numerical
comparisons, using the -z command line option.
- Nonlinear and meta-level constraints are delayed.
Alan Borning
Fri Oct 8 12:51:18 PDT 1999