Integer Polyhedra for Program Analysis

Polyhedra are widely used in model checking and abstract interpretation. Polyhedral analysis is effective when the relationships between variables are linear, but suffers from imprecision when it is necessary to take into account the integrality of the represented space. Imprecision also arises when non-linear constraints occur. Moreover, in terms of tractability, even a space defined by linear constraints can become unmanageable owing to the excessive number of inequalities. Thus it is useful to identify those inequalities whose omission has least impact on the represented space. This paper shows how these issues can be addressed in a novel way by growing the integer hull of the space and approximating the number of integral points within a bounded polyhedron.

[1]  Laure Petrucci,et al.  FAST: Fast Acceleration of Symbolikc Transition Systems , 2003, CAV.

[2]  Jesús A. De Loera,et al.  Effective lattice point counting in rational convex polytopes , 2004, J. Symb. Comput..

[3]  William J. Cook,et al.  On integer points in polyhedra , 1992, Comb..

[4]  David K. Smith Theory of Linear and Integer Programming , 1987 .

[5]  Henny B. Sipma,et al.  Constraint-Based Linear-Relations Analysis , 2004, SAS.

[6]  Brian Campbell,et al.  Amortised Memory Analysis Using the Depth of Data Structures , 2009, ESOP.

[7]  Nicolas Halbwachs,et al.  Automatic discovery of linear restraints among variables of a program , 1978, POPL.

[8]  Gilles Dowek,et al.  Principles of programming languages , 1981, Prentice Hall International Series in Computer Science.

[9]  Huei Chuen Huang,et al.  Finding the exact volume of a polyhedron , 2003 .

[10]  Peter Huggins iB4e: A Software Framework for Parametrizing Specialized LP Problems , 2006, ICMS.

[11]  Patrick Cousot,et al.  The ASTREÉ Analyzer , 2005, ESOP.

[12]  Alexander I. Barvinok,et al.  Computing the volume, counting integral points, and exponential sums , 1992, SCG '92.

[13]  Doran Wilde,et al.  A LIBRARY FOR DOING POLYHEDRAL OPERATIONS , 2000 .

[14]  Benoît Meister Periodic Polyhedra , 2004, CC.

[15]  Matthias Ko¨ppe A Primal Barvinok Algorithm Based on Irrational Decompositions , 2007 .

[16]  Andrés Iglesias,et al.  Mathematical Software - ICMS 2006, Second International Congress on Mathematical Software, Castro Urdiales, Spain, September 1-3, 2006, Proceedings , 2006, ICMS.

[17]  Axel Simon Value-Range Analysis of C Programs: Towards Proving the Absence of Buffer Overflow Vulnerabilities , 2008 .

[18]  Alexander I. Barvinok,et al.  A Polynomial Time Algorithm for Counting Integral Points in Polyhedra when the Dimension Is Fixed , 1993, FOCS.

[19]  David A. Cox,et al.  Ideals, Varieties, and Algorithms , 1997 .

[20]  R. Lougee-Heimer,et al.  The Common Optimization INterface for Operations Research: Promoting open-source software in the operations research community , 2003 .

[21]  Vincent Loechner,et al.  Counting Integer Points in Parametric Polytopes Using Barvinok's Rational Functions , 2007, Algorithmica.

[22]  Patrice Quinton,et al.  On Manipulating Z-Polyhedra Using a Canonical Representation , 1997, Parallel Process. Lett..

[23]  Maurice Bruynooghe,et al.  Experiences with Enumeration of Integer Projections of Parametric Polytopes , 2005, CC.

[24]  Vincent Loechner,et al.  Memory optimization by counting points in integer transformations of parametric polytopes , 2006, CASES '06.

[25]  F. Eisenbrand Gomory-Chvátal cutting planes and the elementary closure of polyhedra , 2000 .

[26]  Mark Evan Hartmann,et al.  Cutting planes and the complexity of the integer hull , 1989 .