Advertisement

A freeness and sharing analysis of logic programs based on a pre-interpretation

  • Maurice Bruynooghe
  • Bart Demoen
  • Dmitri Boulanger
  • Marc Denecker
  • Anne Mulkers
Contributed Papers
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1145)

Abstract

Recently, a technique was presented for using pre-interpretations for abstract interpretation of the correct answer set {ie128-01} of a logic program P. So far it was an open problem whether pre-interpretations could also be used for deriving non-downward closed properties of the computed answer set {ie128-02} such as definite freeness. This paper shows that it is possible to do so.

Keywords

Logic Program Abstract Interpretation Domain Relation Reference Variable 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. 1.
    D. Boulanger and M. Bruynooghe. A systematic construction of abstract domains. In B. Le Charlier, ed., Proceedings of the first International Static Analysis Symposium, SAS'94, pp. 61–77. LNCS 864, Springer-Verlag, Sept. 1994.Google Scholar
  2. 2.
    D. Boulanger, M. Bruynooghe, and M. Denecker. Abstracting S-semantics using a model-theoretic approach. In M. Hermenegildo and J. Penjam, ed., Proceedings of the Sixth International Symposium on Programming Language Implementation and Logic Programming, PLILP'94, pp. 432–446. LNCS 844, Springer-Verlag, Sept. 1994.Google Scholar
  3. 3.
    D. Boulanger. Complete Analysis for Definite Logic Programs. Proc. 11th Workshop Logische Programmierung, Technische Universität Wien, GMD-Studien Nr.270, September, 1995, 101–110.Google Scholar
  4. 4.
    M. Bruynooghe and M. Codish. Freeness, sharing, linearity and correctness — all at once. In P. Cousot, M. Falaschi, G. Filé, and A. Rauzy, ed., Proceedings of the Third International Workshop on Static Analysis, LNCS 724, pp. 153–164, Padova, Italy, Sept. 1993. Springer-Verlag.Google Scholar
  5. 5.
    M. Bruynooghe, M. Codish and A. Mulkers. Abstracting Unification: A key step in the design of logic program analyses. In Computer Science Today, Recent Trends and Developments, Jan van Leeuwen ed. LNCS Vol 1000, pp. 406–425, 1995. Springer-Verlag.Google Scholar
  6. 6.
    M. Bruynooghe, B. Demoen, D. Boulanger, M. Denecker and A. Mulkers. A Freeness and Sharing Analysis of Logic Programs Based on a Pre-interpretation. Report CW 233, Dept. Computer Science, KULEUVEN, May 1996.Google Scholar
  7. 7.
    F. Bueno, M. García de la Banda and M. Hermenegildo. Effectiveness of Global Analysis in Strict Independence-Based Automatic Program Parallelization. In International Logic Programming Symposium, pp320–336, 1994, MIT Press.Google Scholar
  8. 8.
    M. Codish and B. Demoen. Analysing logic programs using “prop∝-ositional logic programs and a magic wand. The Journal of Logic Programming, 25(2):249–274, Dec. 1995. A preliminary version appeared in proc. ILPS'93.Google Scholar
  9. 9.
    M. Codish and B. Demoen. Deriving polymorphic type dependencies for logic programs using multiple incarnations of Prop. In B. Le Charlier, ed., Proceedings of the first International Static Analysis Symposium, SAS'94, PP-281–296. LNCS 864, Springer-Verlag, Sept. 1994.Google Scholar
  10. 10.
    M. Codish, M. García de la Banda, M. Bruynooghe, and M. Hermenegildo. Goal dependent vs. goal independent analysis of logic programs. In Proceedings of the International Conference on Logic Programming and Automated Reasoning, LPAR'94, LNAI 822, pp. 305–319. Springer-Verlag, 1994.Google Scholar
  11. 11.
    M. Codish, A. Mulkers, M. Bruynooghe, M. García de la Banda and M. Hermenegildo. Improving Abstract Interpretation by Combining Domains. ACM Trans. Prog.Lang. Syst. 17(1):28–44, 1995.Google Scholar
  12. 12.
    A. Cortesi, G. Filé and W. Winsborough. Optimal groundness analysis using propositional formulas. The Journal of Logic Programming, 27(2):103–179, May 1996. A preliminary version appeared in ICALP92.Google Scholar
  13. 13.
    P. Cousot and R. Cousot. Abstract interpretation: A unified lattice model for static analysis of programs by construction or approximation of fixpoints. In Proceedings of the Fourth ACM Symposium on Principles of Programming Languages, pp. 238–252, Los Angeles, 1977.Google Scholar
  14. 14.
    P. Cousot and R. Cousot. Abstract interpretation and application to logic programs. The Journal of Logic Programming, 13(2 and 3):103–179, 1992.CrossRefGoogle Scholar
  15. 15.
    G. Filé and F. Ranzato. Improving abstract interpretations by systematic lifting to the powerset. In M. Bruynooghe, ed., Proceedings of the 1994 International Logic Programming Symposium, pp. 655–669, MIT Press.Google Scholar
  16. 16.
    J. Gallagher, D. Boulanger, and H. Saglam. Practical model-based static analysis for definite logic programs. In J. Lloyd ed., Proceedings of the 1995 International Symposium on Logic Programming, pp. 351–365, 1995, MIT Press.Google Scholar
  17. 17.
    R. Giacobazzi, S.K.Debray, and G. Levi. Generalized semantics and abstract interpretation for constraint logic programs. The Journal Logic Programming, 25(3):191–247, Dec.1995. A preliminary version appeared in Proc. FGCS92.Google Scholar
  18. 18.
    D. Jacobs and A. Langen. Static analysis of logic programs for independent AND-parallelism. The Journal of Logic Programming, 13(2 & 3):291–314, 1992.Google Scholar
  19. 19.
    G. Janssens, M. Bruynooghe, V. Dumortier. A blueprint for an abstract machine for abstract interpretation of (constraint) logic programs. In J. Lloyd ed., Proceedings of the 1995 International Symposium on Logic Programming, pp. 336–350, 1995, MIT Press.Google Scholar
  20. 20.
    J. W. Lloyd. Foundations of Logic Programming. Springer Series: Symbolic Computation — Artificial Intelligence. Springer-Verlag, second, extended edition, 1987.Google Scholar
  21. 21.
    A. Martelli and U. Montanari. An efficient unification algorithm. ACM Transactions on Programming Languages and Systems, 4(2):258–282, Apr. 1982.CrossRefGoogle Scholar
  22. 22.
    A. Mulkers, W. Simoens, G. Janssens, and M. Bruynooghe. On the practicality of abstract equation systems. In L. Sterling, editor, Proceedings of the International Conference on Logic Programming, pp. 781–795, Kanagawa, Japan, 1995. MIT Press.Google Scholar
  23. 23.
    K. Muthukumar and M. Hermenegildo. Combined determination of sharing and freeness of program variables through abstract interpretation. In K. Furukawa, editor, Proceedings of the Eighth International Conference on Logic Programming, pp. 49–63, Paris, France, 1991. MIT Press.Google Scholar
  24. 24.
    H. SØndergaard. An application of abstract interpretation of logic programs: Occur check reduction. In B. Robinet and R. Wilhelm, eds., ESOP'86 Proceedings European Symposium on Programming, Lecture Notes in Computer Science 213, pp. 327–338. Springer-Verlag, N.Y., 1986.Google Scholar
  25. 25.
    S. Sudarshan and R. Ramakrishnan. Optimizations of bottom-up evaluation with non-ground terms. In D. Miller, ed. Proceedings of the 1993 International Symposium on Logic Programming, pp. 557–574, 1993, MIT Press.Google Scholar
  26. 26.
    J. D. Ullman. Principles of Database Systems. Computer Science Press, 1982.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1996

Authors and Affiliations

  • Maurice Bruynooghe
    • 1
  • Bart Demoen
    • 1
  • Dmitri Boulanger
    • 2
  • Marc Denecker
    • 1
  • Anne Mulkers
    • 1
  1. 1.Department of Computer ScienceK.U.LeuvenHeverleeBelgium
  2. 2.CNUCE Istituto del CNRPisaItaly

Personalised recommendations