Advertisement

Towards a framework for the abstract interpretation of logic programs

  • Ulf Nilsson
Abstract Interpretation In Logic Programming
Part of the Lecture Notes in Computer Science book series (LNCS, volume 348)

Abstract

A new framework for abstract interpretation of logic programs is presented. The idea is to take as the basis a simplified semantics that approximates the standard operational semantics of logic programs but still makes it possible to derive non-trivial abstract interpretations. The relative simplicity of the basic semantics facilitates systematic derivation of abstract interpretations and static analyses of logic programs. Sufficient conditions for termination and correctness of the derived interpreters are provided. The approach is illustrated by inferring groundness information for an example program.

Keywords

Logic Program Complete Lattice Abstract Interpretation Static Semantic Abstract Domain 
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.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. [AH87]
    S. Abramsky and C. Hankin, editors. Abstract Interpretation of Declarative Languages. Ellis Horwood, 1987.Google Scholar
  2. [Apt87]
    K. Apt. Introduction to Logic Programming. Report TR-87-35, Dept. of Computer Science, The University of Texas at Austin, 1987. Revised and Extended Version in 1988.Google Scholar
  3. [Bru87]
    M. Bruynooghe. A Framework for the Abstract Interpretation of Logic Programs. Report CW62, Katholieke Universiteit, Leuven, 1987.Google Scholar
  4. [CC77]
    P. Cousot and R. Cousot. Abstract interpretation: a unified lattice model for static analysis of programs by construction or approximation of fixpoints. In Proc. of POPL, Los Angeles, 1977.Google Scholar
  5. [DM87]
    W. Drabent and J. Małuszyński. Proving runtime properties of logic programs. In Proc. of TAPSOFT'87, Pisa, LNCS 250, Springer-Verlag, 1987.Google Scholar
  6. [DW88]
    S. Debray and D.S. Warren. Automatic mode inference for logic programs. J. Logic Programming, 5(3), 1988.Google Scholar
  7. [JS87]
    N.D. Jones and H. Søndergaard. A semantics-based framework for the abstract interpretation of prolog. In S. Abramsky and C. Hankin, editors, Abstract Interpretation of Declarative Languages, Ellis Horwood, 1987.Google Scholar
  8. [Kle52]
    S.C. Kleene. Introduction to Metamathematics. North-Holland Publ. Co, Amsterdam-New York, 1952.Google Scholar
  9. [Kow79]
    R. Kowalski. Logic For Problem Solving. Elsevier, North-Holland, New York, 1979.Google Scholar
  10. [Llo87]
    J.W. Lloyd. Foundations of Logic Programming. Springer-Verlag, second edition, 1987.Google Scholar
  11. [Mel87]
    C. Mellish. Abstract interpretation of prolog programs. In S. Abramsky and C. Hankin, editors, Abstract Interpretation of Declarative Languages, Ellis Horwood, 1987.Google Scholar
  12. [MS88]
    K. Marriott and H. Søndergaard. Bottom-up abstract interpretation of logic programs. In Proc. of 5th International Conf/Symp. on Logic Programming, Seattle, MIT Press, 1988.Google Scholar
  13. [Tar55]
    A. Tarski. A lattice theoretical fixpoint theorem and its applications. Pacific J. Math, 5, 1955.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1989

Authors and Affiliations

  • Ulf Nilsson
    • 1
  1. 1.Department of Computer and Information ScienceLinköping UniversityLinköpingSweden

Personalised recommendations