Skip to main content

Efficient Structural Information Analysis for Real CLP Languages

  • Conference paper
  • First Online:
Logic for Programming and Automated Reasoning (LPAR 2000)

Abstract

We present the rational construction of a generic domain for structural information analysis of CLP languages called Pattern(D), where the parameter D is an abstract domain satisfying certain properties. Our domain builds on the parameterized domain for the analysis of logic programs Pat(ℜ), which is due to Cortesi et al. However, the formalization of our CLP abstract domain is independent from specific implementation techniques: Pat(ℜ) (suitably extended in order to deal with CLP systems omitting the occur-check) is one of the possible implementations. Reasoning at a higher level of abstraction we are able to appeal to familiar notions of unification theory. This higher level of abstraction also gives considerable more latitude for the implementer. Indeed, as demonstrated by the results summarized here, an analyzer that incorporates structural information analysis based on our approach can be highly competitive both from the precision and, contrary to popular belief, from the efficiency point of view.

This work has been partly supported by MURST project “Certificazione automatica di programmi mediante interpretazione astratta.” Some of this work was done during a visit of the first and third authors to Leeds, funded by EPSRC under grant M05645.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. R. Bagnara. Data-Flow Analysis for Constraint Logic-Based Languages. PhD thesis, Dipartimento di Informatica, Università di Pisa, Italy, March 1997. 190, 195, 197, 202

    Google Scholar 

  2. R. Bagnara.A hierarchy of constraint systems for data-flow analysis of constraint logicbased languages. Science of Computer Programming, 30(1-2):119–155, 1998. 195

    Google Scholar 

  3. R. Bagnara, P. M. Hill, and E. Zaffanella. Efficient structural information analysis for real CLP languages. Quaderno 229, Dipartimento di Matematica, Università di Parma, 2000. Available at http://www.cs.unipr.it/~bagnara. 198, 198, 199, 199, 200, 200, 201, 201

  4. R. Bagnara, P. M. Hill, and E. Zaffanella. Set-sharing is redundant for pair-sharing. Theoretical Computer Science, 2000. To appear. 202

    Google Scholar 

  5. R. Bagnara and P. Schachte. Factorizing equivalent variable pairs in ROBDD-based implementations of Pos. In A. M. Haeberer, editor, Proc. of the “7th Int'l Conf. on Algebraic Methodology and Software Technology”, vol. 1548 of Lecture Notes in Computer Science, pages 471–485, Amazonia, Brazil, 1999. Springer-Verlag, Berlin. 202

    Google Scholar 

  6. R. Bagnara, E. Zaffanella, and P. M. Hill. Enhancing Sharing for precision. In M. C. Meo and M. Vilares Ferro, editors, Proc. of the “AGP’99 Joint Conf. on Declarative Programming”, pages 213–227, L’Aquila, Italy, 1999. 202

    Google Scholar 

  7. M. Bruynooghe, M. Codish, and A. Mulkers. Abstract unification for a composite domain deriving sharing and freeness properties of program variables. In F. S.de Boer and M. Gabbrielli, editors, Verification and Analysis of Logic Languages, Proc. of the W2 Post-Conference Workshop, Int'l Conf. on Logic Programming, pages 213–230, Santa argherita igure, Italy, 1994. 205

    Google Scholar 

  8. M. Codish, K. Marriott, and C. Taboch. Improving program analyses by structure untupling. Journal of Logic Programming, 43(3):251–263, 2000. 192, 206, 206, 206

    Article  MATH  MathSciNet  Google Scholar 

  9. A. Colmerauer. Prolog and infinite trees. In K. L. Clark and S. Å. Tärnlund, editors, Logic Programming, APIC Studies in Data Processing, vol. 16, pages 231–251. Academic Press, New York, 1982. 190, 191

    Google Scholar 

  10. A. Cortesi, B. Le Charlier, and P. Van Hentenryck. Conceptual and software support for abstract domain design: Generic structural domain and open product. Technical Report CS-93-13, Brown University, Providence, RI, 1993. 191, 206 a]11._A. Cortesi, B. Le Charlier, and P. Van Hentenryck. Combinations of abstract domains for logic programming: Open product and generic pattern construction. Science of Computer Programming, 38(1-3), 2000. 191, 191, 191, 198, 206, 206

    Google Scholar 

  11. P. Cousot and R. Cousot. Abstract interpretation frameworks. Journal of Logic and Computation, 2(4):511–547, 1992. 194, 196, 197

    Article  MATH  MathSciNet  Google Scholar 

  12. P. Cousot and R. Cousot. Comparing the Galois connection and widening/narrowing approaches to abstract interpretation. In M. Bruynooghe and M. Wirsing, editors, Proc. of the 4th Int'l Symp. on Programming Language Implementation and Logic Programming, vol. 631 of Lecture Notes in Computer Science, pages 269–295, Leuven, lgium, 1992. Springer-Verlag, Berlin. 201

    Google Scholar 

  13. R. Giacobazzi, S. K. Debray, and G. Levi. Generalized semantics and abstract interpretation for constraint logic programs. Journal of Logic Programming, 25(3):191–247, 1995. 195

    Article  MATH  MathSciNet  Google Scholar 

  14. P. M. Hill, R. Bagnara, and E. Zaffanella. The correctness of set-sharing. In G. Levi, editor, Static Analysis: Proc. of the 5th Int'l Symp., vol. 1503 of Lecture Notes in Computer Science, pages 99–114, Pisa, Italy, 1998. Springer-Verlag, Berlin. 202

    Google Scholar 

  15. J. Jaffar and M. Maher. Constraint logic programming: A survey. Journal of Logic Programming, 19&amt;20:503–582, 1994. 190, 191, 193, 195, 198

    Article  MathSciNet  Google Scholar 

  16. J. Jaffar, S. Michaylov, P. Stuckey, and R. Yap. The CLP(R) language and system. ACM Transactions on Programming Languages and Systems, 14(3):339–395, 1992. 193

    Article  Google Scholar 

  17. J.-L. Lassez, M. J. Maher, and K. Marriott. Unification revisited. In J. Minker, editor, Foundations of Deductive Databases and Logic Programming, pages 587–625. Morgan Kaufmann, Los Altos, Ca., 1988. 191, 194

    Google Scholar 

  18. A. Mulkers, W. Simoens, G. Janssens, and M. Bruynooghe. On the practicality of abstract equation systems. Report CW 198, Department of Computer Science, K. U. Leuven, Belgium, 1994. 205

    Google Scholar 

  19. A. Mulkers, W. Simoens, G. Janssens, and M. Bruynooghe. On the practicality of abstract equation systems. In L. Sterling, editor, Logic Programming: Proc. of the 12th Int'l Conf. on Logic Programming, MIT Press Series in Logic Programming, pages 781–795, Kanagawa, Japan, 1995. The MIT Press. 205

    Google Scholar 

  20. K. Musumbu. Interprétation Abstraite des Programmes Prolog. PhD thesis, Institut d'Informatique, Facultés Univ. Notre-Dame de la Paix, Namur, Belgium, 1990. 191

    Google Scholar 

  21. E. Zaffanella, R. Bagnara, and P. M. Hill. Widening Sharing. In G. Nadathur, editor, Principles and Practice of Declarative Programming, vol. 1702 of Lecture Notes in Computer Science, pages 414–431, Paris, 1999. Springer-Verlag, Berlin. 202

    Chapter  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2000 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Bagnara, R., Hill, P.M., Zaffanella, E. (2000). Efficient Structural Information Analysis for Real CLP Languages. In: Parigot, M., Voronkov, A. (eds) Logic for Programming and Automated Reasoning. LPAR 2000. Lecture Notes in Artificial Intelligence(), vol 1955. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-44404-1_13

Download citation

  • DOI: https://doi.org/10.1007/3-540-44404-1_13

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-41285-4

  • Online ISBN: 978-3-540-44404-6

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics