Skip to main content

An abstract interpretation scheme for groundness, freeness, and sharing analysis of logic programs

  • Conference paper
  • First Online:
Book cover Foundations of Software Technology and Theoretical Computer Science (FSTTCS 1992)

Abstract

Static global analyses based on abstract interpretation have been used to derive properties of programs. The analyses differ in the expressiveness of the abstract domains and the precision and efficiency of the domain operations. We extend an abstract domain defined by Jacobs and Langen and present new abstract domain operations to derive freeness, groundness, and sharing of variables in logic programs. Analysis of non-trivial programs shows that our method is more precise and more efficient than previous proposals.

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

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Codish, M., Dams, D., and Yardeni, E. Derivation and safety of an abstract unification algorithm for groundness and aliasing analysis. In Proceedings of the Eighth International Conference on Logic Programming (1991), pp. 79–96.

    Google Scholar 

  2. Conery, J. S.Parallel Execution of Logic Programs. Kluwer Academic Publishers, Boston, MA, 1987.

    Google Scholar 

  3. Debray, S. K. Static inference of modes and data dependencies. ACM Transactions of Programming Languages and Systems 11, 3 (July 1989), 418–450.

    Article  Google Scholar 

  4. Debray, S. K., and Warren, D. S. Automatic mode inference for prolog programs. In Proceedings of the 1986 Symposium on Logic Programming (1986).

    Google Scholar 

  5. Hecht, M. S.Flow Analysis of Computer Programs. Programming Language Series. North-Holland, New York, 1977.

    Google Scholar 

  6. Hermenegildo, M.An Abstract Machine Based Execution Model for Computer Architecture Design and Efficient Implementation of Logic Programs in Parallel. PhD thesis, University of Texas at Austin, August 1986.

    Google Scholar 

  7. Jacobs, D., and Langen, A. Accurate and efficient approximation of variable aliasing in logic programs. In Proceedings of the North American Conference on Logic Programming (1989), pp. 154–165.

    Google Scholar 

  8. Jones, N., and Sondergaard, H. A semantics based framework for the abstract interpretation of prolog. In Abstract Interpretation of Declarative Languages, S. Abramsky and C. Hankin; Eds. Ellis Horwood Limited, 1987, ch. 6, pp. 123–142.

    Google Scholar 

  9. Lassez, J.-L., Maher, M., and Marriott, K. Unification Revisited. In Foundations of Deductive Databases and Logic Programming, J. Minker, Ed. Morgan Kaufmann Publishers Inc., 1988, pp. 587–626.

    Google Scholar 

  10. Lloyd, J. W.Foundations of Logic Programming. Springer-Verlag, Berlin, 1984.

    Google Scholar 

  11. Muthukumar, K., and Hermenegildo, M. Combined determination of sharing and freeness of program variables through abstract interpretation. In Proceedings of the Eighth International Conference on Logic Programming (1991).

    Google Scholar 

  12. Sundararajan, R. An introduction to abstract interpretation of logic programs. Tech. Rep. CIS-TR 91-05, Dept of Computer and Information Science, University of Oregon, Eugene, Oregon, U.S.A. 97403, 1991.

    Google Scholar 

  13. Warren, D. H. D., Hermenegildo, M., and Debray, S. K. On the practicality of global flow analysis of logic programs. In 1988 Joint Conference on Logic Programming (1988), pp. 684–699.

    Google Scholar 

  14. Winsborough, W. Automatic, Transparent Paralellization of Logic Programs at Compile Time. PhD thesis, Dept. of Computer Science, University of Wisconsin-Madison, Sept. 1988.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Rudrapatna Shyamasundar

Rights and permissions

Reprints and permissions

Copyright information

© 1992 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Sundararajan, R., Conery, J.S. (1992). An abstract interpretation scheme for groundness, freeness, and sharing analysis of logic programs. In: Shyamasundar, R. (eds) Foundations of Software Technology and Theoretical Computer Science. FSTTCS 1992. Lecture Notes in Computer Science, vol 652. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-56287-7_106

Download citation

  • DOI: https://doi.org/10.1007/3-540-56287-7_106

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-56287-0

  • Online ISBN: 978-3-540-47507-1

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics