Skip to main content
Log in

Intelligent backtracking in CLP(ℜ)

  • Published:
Annals of Mathematics and Artificial Intelligence Aims and scope Submit manuscript

Abstract

CLP(ℜ) is a constraint logic programming language in which constraints can be expressed in the domain of real numbers. Computation in this specialized domain gives access to information useful in intelligent backtracking. In this paper, we present an efficient constraint satisfaction algorithm for linear constraints in the real number domain and show that our algorithm directly generates minimal sets of conflicting constraints when failures occur. We demonstrate how information gleaned during constraint satisfaction can be integrated with unification failure analysis. The resulting intelligent backtracking method works in the context of a two-sorted domain, where variables can be bound to either structured terms or real number expressions. We discuss the implementation of backtracking and show examples where the benefit of pruning the search tree outweights the overhead of failure analysis.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. M. Bruynooghe and L. Pereira, Deduction revision by intelligent backtracking, in:Implementations of Prolog, ed. J. Campbell (Ellis Horwood, 1984).

  2. J. Burg, Parallel execution models and algorithms for constraint logic programming over a real-number domain, Ph.D. Dissertation, University of Central Florida (December, 1992).

  3. J. Burg, S.-D. Lang and C. Hughes, Finding conflict sets and backtrack points in CLP(ℜ), Technical Report TR-CS-93-01, Wake Forest University, Winston-Salem, NC (November, 1993).

    Google Scholar 

  4. J. Burg, P. Stuckey, J. Tai and R. Yap, Linear equation-solving for constraint logic programming, to appear inProc. of the 12th Int. Conf. on Logic Programming, Tokyo, Japan (1995).

  5. C. Codognet, P. Codognet, and G. Filé, Yet another intelligent backtracking method,Proc. of the 5th Int. Conf. and Symp. on Logic Programming, Seattle (1988) pp. 447–465.

  6. P. Codognet and T. Sola, Extending the WAM for intelligent backtracking,Proc of the 8th Int. Conf. on Logic Programming, Paris, France (1991) pp. 127–141.

  7. P. Cox, Finding backtrack points for intelligent backtracking, in:Implementations of Prolog, ed. J. Campbell (Ellis Horwood, 1984).

  8. B. DeBacker and H. Beringer, Intelligent backtracking for CLP languages: An application to CLP(ℜ),Proc. of the Int. Symp. on Logic Programming, San Diego (October, 1991) pp. 405–419.

  9. Heintze et al., The CLP(ℜ) programmer's manual, Version 1.2, IBM Thomas J. Watson Research Center (September, 1992).

  10. C. Hogger and A. Kotzmanidis, Aspects of failure analysis in a CLP(ℜ) system, Internal Report. Imperial College, London (June, 1993).

    Google Scholar 

  11. Jaffar et al., An abstract machine for CLP(ℜ),Proc. of SIGPLAN '92 Conf. on Programming Language Description and Implementation, San Francisco (May, 1992) pp. 128–139.

  12. Jaffar et al., The CLP(ℜ) language and system,Transactions on Programming Languages and Systems 14(3) (July, 1992) pp. 339–395.

    Google Scholar 

  13. V. Kumar and Y.-J. Lin, An intelligent backtracking scheme for Prolog,Proc. of the Int. Symp. on Logic Programming (September, 1987) pp. 406–414.

  14. Y.-J. Lin and V. Kumar, A data-dependency-based intelligent backtracking scheme for Prolog,J. Logic Programming 4(2) (1988) pp. 165–181.

    Google Scholar 

  15. Y.-J. Lin, V. Kumar and C. Leung, An intelligent backtracking algorithm for parallel execution of logic programs,Proc. of the 3rd Int. Conf. on Logic Programming, London (June, 1986) pp. 55–67.

  16. J. Lloyd,Foundations of Logic Programming, 2nd ed. (Springer-Verlag, New York, 1987).

    Google Scholar 

  17. D. Luenberger,Linear and Nonlinear Programming, 2nd ed. (Addison-Wesley, Reading, MA).

  18. S. Matwin and T. Pietrzykowski, Exponential improvement of exhaustive backtracking: data structures and implementation,Proc. of the 6th Conf. on Automated Deduction, Lecture Notes in Computer Science (Springer-Verlag, New York, 1982).

    Google Scholar 

  19. L. Pereira and A. Porto, Selective backtracking, in:Logic Programming, eds. K.L. Clark and S.-A. Tarnlund (Academic Press, 1982).

  20. G. Williams,Linear Algebra, 2nd ed. (William Brown Publishers, Dubuque, IA, 1991).

    Google Scholar 

  21. D.A. Wolfram, Intractable unifiability problems and backtracking,Proc. of the 3rd Int. Conf. on Logic Programming, LNCS 225 (Springer-Verlag, 1986) pp. 107–121.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

About this article

Cite this article

Burg, J.J., Lang, SD. & Hughes, C.E. Intelligent backtracking in CLP(ℜ). Ann Math Artif Intell 17, 189–211 (1996). https://doi.org/10.1007/BF02127968

Download citation

  • Issue Date:

  • DOI: https://doi.org/10.1007/BF02127968

Keywords

Navigation