Skip to main content

Completeness in abstract interpretation: A domain perspective

  • Conference paper
  • First Online:
Algebraic Methodology and Software Technology (AMAST 1997)

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

Abstract

Completeness in abstract interpretation is an ideal and rare situation where the abstract semantics is able to take full advantage of the power of representation of the underlying abstract domain. In this paper, we develop an algebraic theory of completeness in abstract interpretation. We show that completeness is an abstract domain property and we prove that there always exist both the greatest complete restriction and the least complete extension of any abstract domain, with respect to continuous semantic functions. Under certain hypotheses, a constructive procedure for computing these complete domains is given. These methodologies provide advanced algebraic tools for manipulating abstract interpretations, which can be fruitfully used both in program analysis and in semantics design.

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. G. Amato and G. Levi. Properties of the lattice of observables in logic programming. In Proc. APPIA-GULP-PRODE'97, pp. 175–187, 1997.

    Google Scholar 

  2. T. Armstrong, K. Marriott, P. Schachte, and H. SØndergaard. Two classes of Boolean functions for dependency analysis. To appear in Sci. Comput. Program., 1997.

    Google Scholar 

  3. R. Barbuti, R. Giacobazzi, and G. Levi. A general framework for semantics-based bottom-up abstract interpretation of logic programs. ACM TOPLAS, 15(1):133–181, 1993.

    Google Scholar 

  4. C. Colby. Accumulated imprecision in abstract interpretation. In Proc. 1st ACM AAS'97, pp. 77–89, 1997.

    Google Scholar 

  5. M. Comini and G. Levi. An algebraic theory of observables. In Proc. ILPS'94, pp. 172–186, 1994.

    Google Scholar 

  6. A. Cortesi, G. Filé, R. Giacobazzi, C. Palamidessi, and F. Ranzato. Complementation in abstract interpretation. ACM TOPLAS, 19(1):7–47, 1997.

    Google Scholar 

  7. P. Cousot. Types as abstract interpretations. In Proc. ACM POPL'97, pp. 316–331, 1997.

    Google Scholar 

  8. P. Cousot and R. Cousot. Abstract interpretation: A unified lattice model for static analysis of programs by construction or approximation of fixpoints. In Proc. ACM POPL'77, pp. 238–252, 1977.

    Google Scholar 

  9. P. Cousot and R. Cousot. Systematic design of program analysis frameworks. In Proc. ACM POPL'79, pp. 269–282, 1979.

    Google Scholar 

  10. P. Cousot and R. Cousot. Inductive definitions, semantics and abstract interpretation. In Proc. ACM POPL'92, pp. 83–94, 1992.

    Google Scholar 

  11. P. Cousot and R. Cousot. Higher-order abstract interpretation (and application to comportment analysis generalizing strictness, termination, projection and PER analysis of functional languages). In Proc. IEEE ICCL'94, pp. 95–112, 1994.

    Google Scholar 

  12. P. Cousot and R. Cousot. Compositional and inductive semantic definitions in fixpoint, equational, constraint, closure-condition, rule-based and game-theoretic form. In Proc. CAV'95, LNCS 939, pp. 293–308, 1995.

    Google Scholar 

  13. M. Falaschi, G. Levi, M. Martelli, and C. Palamidessi. Declarative modeling of the operational behavior of logic languages. Theor. Comput. Sci., 69(3):289–318, 1989.

    Google Scholar 

  14. G. Filé, R. Giacobazzi, and F. Ranzato. A unifying view of abstract domain design. ACM Comput. Surv., 28(2):333–336, 1996.

    Google Scholar 

  15. G. Filé and F. Ranzato. The powerset operator on abstract interpretations. To appear in Theor. Comput. Sci., 1998.

    Google Scholar 

  16. R. Giacobazzi. “Optimal” collecting semantics for analysis in a hierarchy of logic program semantics. In Proc. STACS '96, LNCS 1046, pp. 503–514, 1996.

    Google Scholar 

  17. R. Giacobazzi, C. Palamidessi, and F. Ranzato. Weak relative pseudo-complements of closure operators. Algebra Universalis, 36(3):405–412, 1996.

    Google Scholar 

  18. R. Giacobazzi and F. Ranzato. Refining and compressing abstract domains. In Proc. ICALP'97, LNCS 1256, pp. 771–781, 1997.

    Google Scholar 

  19. R. Giacobazzi and F. Ranzato. Optimal domains for disjunctive abstract interpretation. To appear in Sci. Comput. Program., 1998.

    Google Scholar 

  20. K. Marriott and H. SØndergaard. Precise and efficient groundness analysis for logic programs. ACM Lett. Program. Lang. Syst., 2(1–4):181–196, 1993.

    Google Scholar 

  21. A. Mycroft. Abstract interpretation and optimising transformations for applicative programs. PhD thesis, Univ. of Edinburgh, 1981.

    Google Scholar 

  22. A. Mycroft. Completeness and predicate-based abstract interpretation. In Proc. ACM PEPM '93, pp. 179–185, 1993.

    Google Scholar 

  23. U.S. Reddy and S.N. Kamin. On the power of abstract interpretation. In Proc. IEEE ICCL '92, 1992.

    Google Scholar 

  24. R.C. Sekar, P. Mishra, and I.V. Ramakrishnan. On the power and limitation of strictness analysis. J. ACM, 44(3), 1997.

    Google Scholar 

  25. B. Steffen. Optimal data flow analysis via observational equivalence. In Proc. MFCS '89, LNCS 379, 1989.

    Google Scholar 

  26. B. Steffen, C.B. Jay, and M. Mendler. Compositional characterization of observable program properties. AFCET, 26:403–424, 1992.

    Google Scholar 

  27. M. Ward. The closure operators of a lattice. Ann. Math., 43(2):191–196, 1942.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Michael Johnson

Rights and permissions

Reprints and permissions

Copyright information

© 1997 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Giacobazzi, R., Ranzato, F. (1997). Completeness in abstract interpretation: A domain perspective. In: Johnson, M. (eds) Algebraic Methodology and Software Technology. AMAST 1997. Lecture Notes in Computer Science, vol 1349. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0000474

Download citation

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

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-63888-9

  • Online ISBN: 978-3-540-69661-2

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics