Skip to main content

Exploiting E.cient Control and Data Structures in Logic Programs

  • Conference paper
  • First Online:
Practical Aspects of Declarative Languages (PADL 2002)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 2257))

Included in the following conference series:

  • 272 Accesses

Abstract

One of the distinguishing features of declarative languages is the separation of control and logic. Ideally, this allows us to improve the efficiency of an algorithm by changing only the control but not the logic. In this work, we investigate new control strategies and data structures in logic programs. Our main focus is on logic programs which contain dependent non-determinate computation.

We propose a newt ype of finite domain variables, which allow any kind of compound terms in their domain. A compound term in the domain may contain unbound variables which can also become domain variables, leading to nested domain variables.With nested domain variables, we can represent the Cartesian product of several domains as a tree structure. That is, disjunctive constraints stores can be constructed as a nested domain. The consistency of a nested domain can then be checked simultaneously by different parts of computations. Two forms of lookahead are used to perform the consistency checking: deep lookahead and shallow lookahead. It is hoped that, with our lookahead techniques and nested domains, many unnecessary or-branches can be pruned at an early stage. We have tested our ideas by an experimental implementation under SICStus Prolog, and obtained very encouraging results.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. R. Bahgat, V. Santos Costa, and R. Yang. ARCH: A Parallel Execution Model that Minimises the Search Space of Logic Programs. Egyptian Computer Journal, 23(2), 1996.

    Google Scholar 

  2. I. Dutra. A Flexible Scheduler for Andorra-I. In A. Beaumont and G. Gupta, editors, Lecture Notes in Computer Science 569, Parallel Execution of Logic Programs, pages 70–82. Springer-Verlag, June 1991.

    Google Scholar 

  3. G. Gupta and D. H. D. Warren. An Interpreter for the Extended Andorra Model. Presented at ICLP’90 Workshop on Parallel Logic Programming, Eilat, Israel, June 1990.

    Google Scholar 

  4. P. V. Hentenryck, Y. Deville, and C.-M. Teng. A generic arc-consistency algorithm and its specialization. Artificial Intelligence, 57, 1992.

    Google Scholar 

  5. S. Janson and S. Haridi. Programming Paradigms of the Andorra Kernel Language. In Logic Programming: Proceedings of the International Logic Programming Symposium, pages 167–186. MIT Press, October 1991.

    Google Scholar 

  6. A. Mackworth and E. C. Freuder. The Complexity of Constraint Satisfaction Revisited. Artificial Intelligence, 59(1,2):57–62, 1993.

    Article  Google Scholar 

  7. A. K. Mackworth. Consistency in Networks of Relations. Artificial Intelligence, 8(1):99–118, 1977.

    Article  MATH  MathSciNet  Google Scholar 

  8. R. Mohr and T. C. Henderson. Arc and Path Consistency Revisited. Artificial Intelligence, 28:225–233, 1986.

    Article  Google Scholar 

  9. R. Moolenaar and B. Demoen. Hybrid Tree Search in the Andorra Model. In Proceedings of the 8th International Conference on Logic Programming, pages 110–123. MIT Press, June 1994.

    Google Scholar 

  10. D. Sano. and J. B. Kruskal, editors. Time Warps, String Edit and Macromolecules: the Theory and Practice of Sequence Comparision. CSLI Publications, Reissueed edition, 1999.

    Google Scholar 

  11. V. Santos Costa, D. H. D. Warren, and R. Yang. The Andorra-I Engine: A parallel implementation of the Basic Andorra model. In Logic Programming: Proceedings of the 8th International Conference. MIT Press, 1991.

    Google Scholar 

  12. V. Santos Costa, D. H. D. Warren, and R. Yang. The Andorra-I Preprocessor: Supporting full Prolog on the Basic Andorra model. In Logic Programming: Proceedings of the 8th International Conference. MIT Press, 1991.

    Google Scholar 

  13. P. Van Hentenryck. Constraint Satisfaction in Logic Programming. MIT Press, 1989.

    Google Scholar 

  14. D. H. D. Warren. The Extended Andorra Model with Implicit Control. Presented at ICLP’90 Workshop on Parallel Logic Programming, Eilat, Israel, June 1990.

    Google Scholar 

  15. D. H. D. Warren. Personal communication, October 2001.

    Google Scholar 

  16. R. Yang et al. Performance of the Compiler-based Andorra-I System. In Logic Programming: Proceedings of the 10th International Conference. MIT Press, 1993.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2002 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Yang, R., Gregory, S. (2002). Exploiting E.cient Control and Data Structures in Logic Programs. In: Krishnamurthi, S., Ramakrishnan, C.R. (eds) Practical Aspects of Declarative Languages. PADL 2002. Lecture Notes in Computer Science, vol 2257. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-45587-6_20

Download citation

  • DOI: https://doi.org/10.1007/3-540-45587-6_20

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-43092-6

  • Online ISBN: 978-3-540-45587-5

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics