Abstract Interpretation with Higher-Dimensional Ellipsoids and Conic Extrapolation

The inference and the verification of numerical relationships among variables of a program is one of the main goals of static analysis. In this paper, we propose an Abstract Interpretation framework based on higher-dimensional ellipsoids to automatically discover symbolic quadratic invariants within loops, using loop counters as implicit parameters. In order to obtain non-trivial invariants, the diameter of the set of values taken by the numerical variables of the program has to evolve (sub-)linearly during loop iterations. These invariants are called ellipsoidal cones and can be seen as an extension of constructs used in the static analysis of digital filters. Semidefinite programming is used to both compute the numerical results of the domain operations and provide proofs (witnesses) of their correctness.

[1]  Stephen P. Boyd,et al.  Semidefinite Programming , 1996, SIAM Rev..

[2]  Kristopher L. Kuhlman,et al.  mpmath: a Python library for arbitrary-precision floating-point arithmetic , 2017 .

[3]  Jamal Daafouz,et al.  Stability analysis and control synthesis for switched systems: a switched Lyapunov function approach , 2002, IEEE Trans. Autom. Control..

[4]  Pierre Roux,et al.  Computing Quadratic Invariants with Min- and Max-Policy Iterations: A Practical Comparison , 2014, FM.

[5]  Bertrand Jeannet,et al.  Apron: A Library of Numerical Abstract Domains for Static Analysis , 2009, CAV.

[6]  Eric Feron,et al.  A generic ellipsoid abstract domain for linear time invariant systems , 2012, HSCC '12.

[7]  Leonid Khachiyan,et al.  On the Complexity of Semidefinite Programs , 1997, J. Glob. Optim..

[8]  Jérôme Feret,et al.  Static Analysis of Digital Filters , 2004, ESOP.

[9]  Arkadi Nemirovski,et al.  Lectures on modern convex optimization - analysis, algorithms, and engineering applications , 2001, MPS-SIAM series on optimization.

[10]  Gaël Varoquaux,et al.  The NumPy Array: A Structure for Efficient Numerical Computation , 2011, Computing in Science & Engineering.

[11]  E. Alper Yildirim,et al.  On the Minimum Volume Covering Ellipsoid of Ellipsoids , 2006, SIAM J. Optim..

[12]  Arnaud Venet,et al.  The Gauge Domain: Scalable Analysis of Linear Inequality Invariants , 2012, CAV.

[13]  Rekha R. Thomas,et al.  Semidefinite Optimization and Convex Algebraic Geometry , 2012 .

[14]  Patrick Cousot,et al.  Abstract Interpretation Frameworks , 1992, J. Log. Comput..

[15]  Federico Thomas,et al.  An ellipsoidal calculus based on propagation and fusion , 2002, IEEE Trans. Syst. Man Cybern. Part B.

[16]  Jérôme Feret Numerical Abstract Domains for Digital Filters ⋆ , 2007 .

[17]  Patrick Cousot,et al.  Abstract interpretation: a unified lattice model for static analysis of programs by construction or approximation of fixpoints , 1977, POPL.