Skip to main content
Log in

Widening operators for powerset domains

  • Regular contribution
  • Published:
International Journal on Software Tools for Technology Transfer Aims and scope Submit manuscript

A Publisher's Erratum to this article was published on 27 February 2007

Abstract

The finite powerset construction upgrades an abstract domain by allowing for the representation of finite disjunctions of its elements. While most of the operations on the finite powerset abstract domain are easily obtained by “lifting” the corresponding operations on the base-level domain, the problem of endowing finite powersets with a provably correct widening operator is still open. In this paper we define three generic widening methodologies for the finite powerset abstract domain. The widenings are obtained by lifting any widening operator defined on the base-level abstract domain and are parametric with respect to the specification of a few additional operators that allow all the flexibility required to tune the complexity/precision trade-off. As far as we know, this is the first time that the problem of deriving non-trivial, provably correct widening operators in a domain refinement is tackled successfully. We illustrate the proposed techniques by instantiating our widening methodologies on powersets of convex polyhedra, a domain for which no non-trivial widening operator was previously known.

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

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Abramsky, S., Jung, A.: Domain theory. In: Abramsky, S., Gabbay, D.M., Maibaum, T.S.E. (eds.) Handbook of Logic in Computer Science, vol. 3, Chapter 1, pp. 1–168. Clarendon Press, Oxford, UK (1994)

    Google Scholar 

  2. Bagnara, R.: A hierarchy of constraint systems for data-flow analysis of constraint logic-based languages. Sci. Comput. Program. 30(1–2), 119–155 (1998)

    Article  MathSciNet  MATH  Google Scholar 

  3. Bagnara, R., Hill, P.M., Mazzi, E., Zaffanella, E.: Widening operators for weakly-relational numeric abstractions. In: Hankin, C., Silveroni, I. (eds.) Static Analysis: Proceedings of the 12th International Symposium, London, UK. Lecture Notes in Computer Science, vol. 3672, pp. 3–18. Springer-Verlag, Berlin Heidelberg New York (2005)

    Google Scholar 

  4. Bagnara, R., Hill, P.M., Ricci, E., Zaffanella, E.: The Parma Polyhedra Library User’s Manual. Department of Mathematics, University of Parma, Parma, Italy, release 0.5 edition, April 2003. http://www.cs.unipr.it/ppl/

    Google Scholar 

  5. Bagnara, R., Hill, P.M., Ricci, E., Zaffanella, E.: Precise widening operators for convex polyhedra. In: Cousot, R. (ed.) Static Analysis: Proceedings of the 10th International Symposium, San Diego, California, USA. Lecture Notes in Computer Science, vol. 2694, pp. 337–354. Springer-Verlag, Berlin Heidelberg New York (2003)

    Google Scholar 

  6. Bagnara, R., Hill, P.M., Ricci, E., Zaffanella, E.: Precise widening operators for convex polyhedra. Sci. Comput. Program. 58(1–2), 28–56 (2005)

    Article  MathSciNet  MATH  Google Scholar 

  7. Bagnara, R., Ricci, E., Zaffanella, E., Hill, P.M.: Possibly not closed convex polyhedra and the Parma Polyhedra Library. In: Hermenegildo, M.V., Puebla, G. (eds.) Static Analysis: Proceedings of the 9th International Symposium, Madrid, Spain. Lecture Notes in Computer Science, vol. 2477, pp. 213–229. Springer-Verlag, Berlin Heidelberg New York (2002)

    Google Scholar 

  8. Besson, F., Jensen, T.P., Talpin, J.-P.: Polyhedral analysis for synchronous languages. In: Cortesi, A., Filé, G. (eds.) Static Analysis: Proceedings of the 6th International Symposium, Venice, Italy. Lecture Notes in Computer Science, vol. 1694, pp. 51–68. Springer-Verlag, Berlin Heidelberg New York (1999)

    Google Scholar 

  9. Birkhoff, G.: Lattice Theory, vol. XXV of Colloquium Publications, 3rd edn. American Mathematical Society, Providence, Rhode Island, USA (1967)

    Google Scholar 

  10. Bourdoncle, F.: Abstract interpretation by dynamic partitioning. J. Funct. Program. 2(4), 407–435 (1992)

    Article  MathSciNet  Google Scholar 

  11. Bultan, T., Gerber, R., Pugh, W.: Model-checking concurrent systems with unbounded integer variables: Symbolic representations, approximations, and experimental results. ACM Trans. Program. Lang. Syst. 21(4), 747–789 (1999)

    Article  Google Scholar 

  12. Cortesi, A., Filé, G., Winsborough, W.: Prop revisited: Propositional formula as abstract domain for groundness analysis. In: Proceedings of the Sixth Annual IEEE Symposium on Logic in Computer Science, pp. 322–327. IEEE Computer Society Press, Amsterdam, The Netherlands (1991)

    Google Scholar 

  13. Cortesi, A., Le Charlier, B., Van Hentenryck, P.: Combinations of abstract domains for logic programming: Open product and generic pattern construction. Sci. Comput. Program. 38(1–3), 27–71 (2000)

    Article  MATH  Google Scholar 

  14. Cousot, P., Cousot, R.: Static determination of dynamic properties of programs. In: Robinet, B. (ed.) Proceedings of the Second International Symposium on Programming, Dunod, Paris, France, pp. 106–130 (1976)

    Google Scholar 

  15. Cousot, P., Cousot, R.: Abstract interpretation: A unified lattice model for static analysis of programs by construction or approximation of fixpoints. In: Proceedings of the Fourth Annual ACM Symposium on Principles of Programming Languages, pp. 238–252. ACM Press, New York (1977)

    Google Scholar 

  16. Cousot, P., Cousot, R.: Systematic design of program analysis frameworks. In: Proceedings of the Sixth Annual ACM Symposium on Principles of Programming Languages, pp. 269–282. ACM Press, New York (1979)

    Google Scholar 

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

    Article  MathSciNet  MATH  Google Scholar 

  18. Cousot, P., Cousot, R.: Abstract interpretation frameworks. J. Logic Comput. 2(4), 511–547 (1992)

    Article  MathSciNet  MATH  Google Scholar 

  19. Cousot, P., Cousot, R.: Comparing the Galois connection and widening/narrowing approaches to abstract interpretation. In: Bruynooghe, M., Wirsing, M. (eds.) Proceedings of the 4th International Symposium on Programming Language Implementation and Logic Programming, Leuven, Belgium. Lecture Notes in Computer Science, vol. 631, pp. 269–295. Springer-Verlag, Berlin Heidelberg New York (1992)

    Google Scholar 

  20. Cousot, P., Halbwachs, N.: Automatic discovery of linear restraints among variables of a program. In: Proceedings of the Fifth Annual ACM Symposium on Principles of Programming Languages, Tucson, Arizona, pp. 84–96. ACM Press, New York (1978)

    Google Scholar 

  21. Delzanno, G., Podelski, A.: Model checking in CLP. In: Cleaveland, R. (ed.) Tools and Algorithms for Construction and Analysis of Systems, Proceedings of the 5th International Conference, TACAS ’99, Amsterdam, The Netherlands. Lecture Notes in Computer Science, vol. 1579, pp. 223–239. Springer-Verlag, Berlin Heidelberg New York (1999)

    Google Scholar 

  22. Dershowitz, N., Manna, Z.: Proving termination with multiset orderings. Commun. ACM 22(8), 465–476 (1979)

    Article  MathSciNet  MATH  Google Scholar 

  23. Filé, G., Ranzato, F.: The powerset operator on abstract interpretations. Theoret. Comput. Sci. 222, 77–111 (1999)

    Article  MathSciNet  MATH  Google Scholar 

  24. Granger, P.: Static analyses of congruence properties on rational numbers (extended abstract). In: Van Hentenryck, P. (ed.) Static Analysis: Proceedings of the 4th International Symposium, Paris, France. Lecture Notes in Computer Science, vol. 1302, pp. 278–292. Springer-Verlag, Berlin Heidelberg New York(1997)

    Google Scholar 

  25. Halbwachs, N.: Détermination Automatique de Relations Linéaires Vérifiées par les Variables d’un Programme. Thèse de 3ème cycle d’informatique, Université scientifique et médicale de Grenoble, Grenoble, France (March 1979)

  26. Halbwachs, N.: Delay analysis in synchronous programs. In: Courcoubetis, C. (ed.) Computer Aided Verification: Proceedings of the 5th International Conference, Elounda, Greece. Lecture Notes in Computer Science, vol. 697, pp. 333–346. Springer-Verlag, Berlin Heidelberg New York (1993)

    Google Scholar 

  27. Halbwachs, N., Proy, Y.-E., Roumanoff, P.: Verification of real-time systems using linear relation analysis. Formal Methods Syst. Des. 11(2), 157–185 (1997)

    Article  Google Scholar 

  28. Holzbaur, C.: OFAI clp(q,r) manual, edn. 1.3.3. Technical Report TR-95-09, Austrian Research Institute for Artificial Intelligence, Vienna (1995)

  29. Kelly, W., Maslov, V., Pugh, W., Rosser, E., Shpeisman, T., Wonnacott, D.: The ω Library Interface Guide. Technical Report CS-TR-3445, Department of Computer Science, University of Maryland, College Park, MD, USA (1995)

  30. Le Verge, H.: A note on Chernikova’s Algorithm. Publication interne 635, IRISA, Campus de Beaulieu, Rennes, France (1992)

    Google Scholar 

  31. Loechner, V.: PolyLib: A library for manipulating parameterized polyhedra. http://icps.u-strasbg.fr/loechner/polylib/. Cited March 1999 (Declares itself to be a continuation of Wilde93th).

  32. Pugh, W.: A practical algorithm for exact array dependence analysis. Commun. ACM 35(8), 102–114 (1992)

    Article  Google Scholar 

  33. Srivastava, D.: Subsumption and indexing in constraint query languages with linear arithmetic constraints. Ann. Math. Artif. Intell. 8(3–4), 315–343 (1993)

    Article  MATH  Google Scholar 

  34. Van Hentenryck, P., Cortesi, A., Le Charlier, B.: Type analysis of Prolog using type graphs. J. Logic Program. 22(3), 179–209 (1995)

    Article  MATH  Google Scholar 

  35. Wilde, D.K.: A library for doing polyhedral operations. Master’s thesis, Oregon State University, Corvallis, Oregon, December 1993 (also published as IRISA Publication interne 785, Rennes, France (1993))

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Roberto Bagnara.

Additional information

An erratum to this article is available at http://dx.doi.org/10.1007/s10009-007-0029-y.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Bagnara, R., Hill, P.M. & Zaffanella, E. Widening operators for powerset domains. Int J Softw Tools Technol Transfer 8, 449–466 (2006). https://doi.org/10.1007/s10009-005-0215-8

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10009-005-0215-8

Keywords

Navigation