Skip to main content

“Optimal” collecting semantics for analysis in a hierarchy of logic program semantics

  • Conference paper
  • First Online:

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

Abstract

In this paper we apply abstract interpretation to systematically derive, compose and compare semantics according to their expressive power. The main results are: (1) a definition of a hierarchy of collecting semantics, including well known semantics for logic programs, where semantics can be related to each other by abstract interpretation; (2) a characterization of collecting and abstract semantics in terms of collecting and abstract models for a program; (3) a correspondence between collecting and abstract models providing a “logical” interpretation of the typical loss of precision of abstract interpretation-based analysis; (4) a systematic approach to derive and compose collecting semantics in a lattice-theoretic environment; (5) a constructive characterization for the “best” collecting semantics for analysis.

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

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. K. R. Apt. Introduction to logic programming. In J. van Leeuwen, ed., Handbook of Theoretical Computer Science, vol. B, pp. 495–574. Elsevier, 1990.

    Google Scholar 

  2. T. Armstrong, K. Marriott, P. Schachte, and H. Søndergaard. Boolean functions for dependency analysis: algebraic properties and efficient representation. In B. Le Charlier, ed., Proc. SAS'94, LNCS 864, pp. 266–280, 1994.

    Google Scholar 

  3. R. Barbuti, M. Codish, R. Giacobazzi, and M. Maher. Oracle semantics for PROLOG. In Proc. ALP'92, LNCS 632, pp. 100–114, 1992. To appear in Inf. & Comp.

    Google Scholar 

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

    Article  Google Scholar 

  5. A. Bossi, M. Gabbrielli, G. Levi, and M. C. Meo. A compositional semantics for logic programs. TCS, 122(1–2):3–47, 1994.

    Article  Google Scholar 

  6. A. Batarekh and V. S. Subrahmanian. Topological model set deformations. Fundamenta Informatiæ, 12:357–400, 1989.

    Google Scholar 

  7. M. Bruynooghe. A practical framework for the abstract interpretation of logic programs. Journal of Logic Programming, 10:91–124, 1991.

    Article  Google Scholar 

  8. M. Codish, D. Dams, and E. Yardeni. Bottom-up abstract interpretation of logic programs. TCS, 124(1):93–126, 1994.

    Article  Google Scholar 

  9. M. Codish, S. Debray, and R. Giacobazzi. Compositional analysis of modular logic programs. In ACM POPL '93, pp. 451–464, 1993.

    Google Scholar 

  10. M. Comini and G. Levi. An algebraic theory of observables. In M. Bruynooghe, ed., Proc. ILPS'94, pp. 172–186, The MIT Press, 1994.

    Google Scholar 

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

    Google Scholar 

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

    Google Scholar 

  13. P. Cousot & R. Cousot. Abstract interpretation and applications to logic programs. Journal of Logic Programming, 13(2–3):103–179, 1992.

    Article  Google Scholar 

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

    Google Scholar 

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

    Article  Google Scholar 

  16. M. Falaschi, G. Levi, M. Martelli, and C. Palamidessi. A model-theoretic reconstruction of the operational semantics of logic programs. Inf. & Comp., 102(1):86–113, 1993.

    Google Scholar 

  17. M. Gabbrielli and M. C. Meo. Fixpoint semantics for partial computed answer substitutions and call patterns. In Proc. ALP'92, LNCS 632, pp. 84–99, 1992.

    Google Scholar 

  18. D. Jacobs and A. Langen. Static analysis of logic programs for independent AND parallelism. Journal of Logic Programming, 13(2–3):291–314, 1992.

    Article  Google Scholar 

  19. N. D. Jones and H. Søndergaard. A semantics-based framework for the abstract interpretation of Prolog. In S. Abramsky and C. Hankin, eds., Abstract Interpretation of Declarative Languages, pp. 123–142. Ellis Horwood Ltd, 1987.

    Google Scholar 

  20. R. Kemp and G. Ringwood. Reynolds and Heyting models of logic programs. Technical report, Dept. of Computer Science, Queen Mary and Westfield College, 1991.

    Google Scholar 

  21. A. Mycroft and F. Nielson. Strong abstract interpretation using power domains. In J. Díaz, ed., Proc. ICALP'83, LNCS 154, pp. 536–547. 1983.

    Google Scholar 

  22. B. Steffen. Optimal data flow analysis via observational equivalence. In Proc. MFCS'89, LNCS 379, pp. 492–502, 1989.

    Google Scholar 

  23. M. H. van Emden and R. A. Kowalski. The semantics of predicate logic as a programming language. JACM, 23(4):733–742, 1976.

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Claude Puech Rüdiger Reischuk

Rights and permissions

Reprints and permissions

Copyright information

© 1996 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Giacobazzi, R. (1996). “Optimal” collecting semantics for analysis in a hierarchy of logic program semantics. In: Puech, C., Reischuk, R. (eds) STACS 96. STACS 1996. Lecture Notes in Computer Science, vol 1046. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-60922-9_41

Download citation

  • DOI: https://doi.org/10.1007/3-540-60922-9_41

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-60922-3

  • Online ISBN: 978-3-540-49723-3

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics