Abstract
The presentation of constraints in a usable form is an essential aspect of Constraint Logic Programming (CLP) systems. It is needed both in the output of constraints, as well as in the production of an internal representation of constraints for meta-level manipulation. Typically, only a small subset {Mathematical expression} of the variables in constraints is of interest, and so an informal statement of the problem at hand is: given a conjunction {Mathematical expression} of constraints, express the projection {Mathematical expression} of c onto {Mathematical expression} in the simplest form. In this paper, we consider the constraints of the CLP(R) system and describe the essential features of its projection module. One main part focuses on the well-known problem of projection in linear arithmetic constraints. We start with a classical algorithm and augment it with a procedure for eliminating redundant constraints generated by the algorithm. A second part discusses projection of the other object-level constraints: equations over trees and nonlinear equations. The final part deals with producing a manipulable form of the constraints, which complicates the projection problem.
Original language | English |
---|---|
Pages (from-to) | 449-469 |
Number of pages | 21 |
Journal | New Generation Computing |
Volume | 11 |
Issue number | 3-4 |
DOIs | |
Publication status | Published - 1 Sept 1993 |
Keywords
- Constraint Logic Programming
- Linear Arithmetic
- Projection