Subsumption-free bottom-up evaluation of logic programs with partially instantiated data structures

  • Zoltan Somogyi
  • David Kemp
  • James Harland
  • Kotagiri Ramamohanarao
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 779)


Most deductive databases impose restrictions on the terms that can be used in them: they require that generated tuples be fully ground, i.e. contain no variables. Without this restriction, query evaluation of general programs needs subsumption tests in order to terminate correctly, and subsumption tests are expensive.

We study a class of programs that can handle terms with both variables and function symbols but for which subsumption tests are not necessary. This class is based on the notion of modes, which generalise adornments by not requiring that “bound” be synonymous with “ground”. We show how programs in this class may be recognized and how they should be transformed into an executable form, and then prove that bottom-up evaluation of the resulting programs does not require subsumption tests.


Logic Program Function Symbol Position Node Type Graph Mode Assignment 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [1]
    F. Bancilhon, D. Maier, Y. Sagiv, and R. Ramakrishnan. Magic sets and other strange ways to implement logic programs. Proceedings of the Symposium on Principles of Database Systems, pages 1–15, 1986.Google Scholar
  2. [2]
    P. M. Hill and J. W. Lloyd. The Gödel report. Technical Report 91-02, Department of Computer Science, University of Bristol, England, 1991.Google Scholar
  3. [3]
    D. Kemp, K. Ramamohanarao, and Z. Somogyi. Right-, left-and multi-linear rule transformations that maintain context information. In Proceedings of the Sixteenth International Conference on Very Large Data Bases, pages 380–391, Brisbane, Australia, 1990.Google Scholar
  4. [4]
    R. Milner. A proposal for standard ML. Conference Record of the ACM Symposium on LISP and Functional Programming, pages 184–197, 1984.Google Scholar
  5. [5]
    A. Mycroft and R. A. O'Keefe. A polymorphic type system for Prolog. Artificial Intelligence, 23:295–307, 1984.Google Scholar
  6. [6]
    R. Ramakrishnan, P. Bothner, D. Srivastava, and S. Sudarshan. CORAL — a database programming language. In Proceedings of the NACLP '90 Workshop on Deductive Databases, pages 2.1–2.9, Austin, Texas, 1990.Google Scholar
  7. [7]
    Z. Somogyi. A system of precise modes for logic programs. In Proceedings of the Fourth International Conference on Logic Programming, pages 769–787, Melbourne, Australia, 1987.Google Scholar
  8. [8]
    Z. Somogyi, D. Kemp, J. Harland, and K. Ramamohanarao. Subsumption-free bottom-up evaluation of logic programs with partially instantiated data structures. Technical Report 93/26, Department of Computer Science, University of Melbourne, Melbourne, Australia, 1993.Google Scholar
  9. [9]
    J. Thom and J. Zobel. NU-Prolog reference manual, version 1.0. Technical Report 86/10, Department of Computer Science, University of Melbourne, Melbourne, Australia, 1986.Google Scholar
  10. [10]
    J. Vaghani, K. Ramamohanarao, D. Kemp, Z. Somogyi, and P. Stuckey. Design overview of the Aditi deductive database system. In Proceedings of the Seventh International Conference on Data Engineering, pages 240–247, Kobe, Japan, 1991.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1994

Authors and Affiliations

  • Zoltan Somogyi
    • 1
  • David Kemp
    • 1
  • James Harland
    • 1
  • Kotagiri Ramamohanarao
    • 1
  1. 1.Department of Computer ScienceUniversity of MelbourneParkvilleAustralia

Personalised recommendations