Abstract
We present practical algorithms for computing exact least solutions of equation systems over the reals with addition, multiplication by positive constants, minimum and maximum. The algorithms are based on strategy iteration. Our algorithms can, for instance, be used for the analysis of recursive stochastic games. In the present article we apply our techniques for computing abstract least fixpoint semantics of affine programs over the relational template polyhedra domain. In particular, we thus obtain practical algorithms for computing abstract least fixpoint semantics over the abstract domains of intervals, zones, and octagons.
Supplemental Material
Available for Download
Online appendix to solving systems of rational equations through strategy iteration on article 11.
- Aceto, L., Damgård, I., Goldberg, L. A., Ralldórsson, M. M., Ingólfsdóttir, A., and Walukiewicz, I., Eds. 2008. Proceedings of the 35th International Colloquium on Automata, Languages and Programming (ICALP '08), Part I: Track A: Algorithms, Automata, Complexity, and Games. Lecture Notes in Computer Science, vol. 5125, Springer Verlag. Google Scholar
Digital Library
- Adjé, A., Gaubert, S., and Goubault, E. 2010. Coupling policy iteration with semi-definite relaxation to compute accurate numerical invariants in static analysis. In Proceedings of the European Symposium on Programming. A. D. Gordon Ed., Lecture Notes in Computer Science, vol. 6012. Springer Verlag, 23--42. Google Scholar
Digital Library
- Björklund, R., Sandberg, S., and Vorobyov, S. 2002. Optimization on completely unimodal hypercubes. Tech. rep. 2002-18, Department of Information Technology, Uppsala University.Google Scholar
- Björklund, R., Sandberg, S., and Vorobyov, S. 2003. Complexity of model checking by iterative improvement: The pseudo-Boolean framework. In Proceedings of the Ershov Memorial Conference. M. Broy and A. V. Zamulin Eds., Lecture Notes in Computer Science, vol. 2890, Springer Verlag, 381--394.Google Scholar
- Cochet-Terrasson, J., Gaubert, S., and Gunawardena, J. 1999. A constructive fixed point theorem for min-max functions. Dyn. Stab. Syst. 14, 4, 407--433.Google Scholar
Cross Ref
- Colón, M., Sankaranarayanan, S., and Sipma, R. 2003. Linear invariant generation using non-linear constraint solving. In Proceedings of the International Conference on Computer-Aided Verification. W. A. Hunt Jr. and F. Somenzi Eds., Lecture Notes in Computer Science, vol. 2725, Springer Verlag, 420--432.Google Scholar
- Costan, A., Gaubert, S., Goubault, E., Martel, M., and Putot, S. 2005. A policy iteration algorithm for computing fixed points in static analysis of programs. In Proceedings of the International Conference on Computer-Aided Verification. K. Etessami and S. K. Rajamani Eds., Lecture Notes in Computer Science, vol. 3576, Springer Verlag, 462--475. Google Scholar
Digital Library
- Cousot, P. 2005. Proving program invariance and termination by parametric abstraction, Lagrangian relaxation and semi definite programming. In Proceedings of the International Conference on Verification, Model Checking and Abstract Interpretation. R. Cousot Ed., Lecture Notes in Computer Science, vol. 3385, Springer Verlag, 1--24. Google Scholar
Digital Library
- Cousot, P. and Cousot, R. 1976. Static determination of dynamic properties of programs. In Proceedings of the 2nd International Symposium on Programming. 106--130.Google Scholar
- Cousot, P. and Cousot, R. 1979. Systematic design of program analysis frameworks. In Proceedings of the 6th ACM Symposium on Principles of Programming Languages. 238--352. Google Scholar
Digital Library
- Cousot, P. and Ralbwachs, N. 1978. Automatic discovery of linear restraints among variables of a program. In Proceedings of the ACM Symposium on Principles of Programming Languages. 84--96. Google Scholar
Digital Library
- Erne, M., Koslowski, J., Melton, A., and Strecker, G. 1992. A primer on Galois connections. Ann. N. Y. Acad. Sci 704, 103--125.Google Scholar
Cross Ref
- Esparza, J., Gawlitza, T., Kiefer, S., and Seidl, R. 2008a. Approximative methods for monotone systems ofmin-max-polynomial equations. In Proceedings of the 35th International Colloquium on Automata, Languages and Programming (ICALP '08), Part I: Track A: Algorithms, Automata, Complexity, and Games. Lecture Notes in Computer Science, vol. 5125, Springer Verlag, 698--710. Google Scholar
Digital Library
- Esparza, J., Kiefer, S., and Luttenberger, M. 2008b. Convergence thresholds of Newton's method for monotone polynomial equations. In Proceedings of the Annual Symposium on Theoretical Aspects of Computer Science. 289--300.Google Scholar
- Etessami, K., Wojtczak, D., and Yannakakis, M. 2008. Recursive stochastic games with positive rwards. In Proceedings of the 35th International Colloquium on Automata, Languages and Programming (ICALP '08), Part I: Track A: Algorithms, Automata, Complexity, and Games. Lecture Notes in Computer Science, vol. 5125, Springer Verlag, 711--723. Google Scholar
Digital Library
- Etessami, K. and Yannakakis, M. 2005a. Recursive Markov chains, stochastic grammars, and monotone systems of nonlinear equations. In Proceedings of the Annual Symposium on Theoretical Aspects of Computer Science. V Diekert and B. Durand Eds., Lecture Notes in Computer Science, vol. 3404, Springer Verlag, 340--352. Google Scholar
Digital Library
- Etessami, K. and Yannakakis, M. 2005b. Recursive Markov decision processes and recursive stochastic games. In Proceedings of the International Colloquium on Automata, Languages and Programming. L. Caires, G. F. Italiano, L. Monteiro, C. Palamidessi, and M. Yung Eds., Lecture Notes in Computer Science, vol. 3580, Springer Verlag, 891--903. Google Scholar
Digital Library
- Etessami, K. and Yannakakis, M. 2006. Recursive concurrent stochastic games. In Proceedings of the International Colloquium on Automata, Languages and Programming, M. Bugliesi, B. Preneel, V Sassone, and 1. Wegener Eds., Lecture Notes in Computer Science, vol. 4052, Springer Verlag, 324--335. Google Scholar
Digital Library
- Gaubert, S., Goubault, E., Taly, A., and Zennou, S. 2007. Static analysis by policy iteration on relational domains. In Proceedings of the European Symposium on Programming. R. D. Nicola Ed., Lecture Notes in Computer Science, vol. 4421, Springer Verlag, 237--252. Google Scholar
Digital Library
- Gawlitza, T., Leroux, J., Reineke, J., Seidl, H., Sutre, G., and Wilhelm, R. 2009. Polynomial precise interval analysis revisited. In Efficient Algorithms, S. Albers, H. Alt, and S. Naher Eds., Lecture Notes in Computer Science, vol. 5760, Springer Verlag, 422--437. Google Scholar
Digital Library
- Gawlitza, T. and Seidl, H. 2007. Precise relational invariants through strategy iteration. In Proceedings of the International Workshop on Computer Science Logic, J. Duparc and T. A. Henzinger Eds., Lecture Notes in Computer Science, vol. 4646, Springer Verlag, 23--40. Google Scholar
Digital Library
- Gonnord, L. 2007. Acceleration abstraite pour l'amelioration de la precision en analyse des relations lineaires. Ph.D. thesis, Université Joseph Fourier.Google Scholar
- Gonnord, L. and Halbwachs, N. 2006. Combining widening and acceleration in linear relation analysis. In Proceedings of the International Static Analysis Symposium. K. Yi Ed., Lecture Notes in Computer Science, vol. 4134, Springer Verlag, 144--160. Google Scholar
Digital Library
- Hoffman, A. and Karp, R. 1966. On nonterminating stochastic games. Manage. Sci. 12, 359--370.Google Scholar
Digital Library
- Howard, R. 1960. Dynamic Programming and Markov Processes. Wiley, New York.Google Scholar
- Karmarkar, N. 1984. A new polynomial-time algorithm for linear programming. Combinatorica 4, 4, 373--396. Google Scholar
Digital Library
- Kiefer, S., Luttenberger, M., and Esparza, J. 2007. On the convergence of Newton's method for monotone systems of polynomial equations. In Proceedings of the Annual ACM Symposium on Theory of Computing. D. S. Johnson and U. Feige Eds., 217--226. Google Scholar
Digital Library
- Klee, V. and Minty, G. J.. 1972. How good is the simplex algorithm? Inequalities III, 159--175.Google Scholar
- Leconte, J., Roux, S. L., Liberti, L., and Marinelli, F. 2009. Code verification by static analysis: A mathematical programming approach. Tech. rep., LIX, Ecole Polytechnique, Palaiseau.Google Scholar
- Leroux, J. and Sutre, G. 2007. Accelerated data-flow analysis. In Proceedings of the International Static Analysis Symposium. Lecture Notes in Computer Science, vol. 4634, Springer Verlag, 184--199. Google Scholar
Digital Library
- Miné, A. 2001a. A new numerical abstract domain based on difference-bound matrices. In Proceedings of the 2nd Symposium on Programs as Data Objects. O. Danvy and A. Filinski Eds., Lecture Notes in Computer Science, vol. 2053, Springer Verlag, 155--172. Google Scholar
Digital Library
- Miné, A. 2001b. The octagon abstract domain. In Proceedings of the IEEE Working Conference on Reverse Engineering. 310--319. Google Scholar
Digital Library
- Monniaux, D. 2008. A quantifier elimination algorithm for linear real arithmetic. In Proceedings of the International Conference on Logic Programming, Artificial Intelligence and Reasoning. I. Cervesato, H. Veith, and A. Voronkov Eds., Lecture Notes in Computer Science, vol. 5330, Springer Verlag, 243--257. Google Scholar
Digital Library
- Monniaux, D. 2009. Automatic modular abstractions for linear constraints. In Proceedings of the ACM Symposium on Principles of Programming Languages. Z. Shao and B. C. Pierce Eds., 140--151. Google Scholar
Digital Library
- Müller-Olm, M. and Seidl, H. 2004. Precise interprocedural analysis through linear algebra. In Proceedings of the ACM Symposium on Principles of Programming Languages. N. D. Jones and X. Leroy Eds., 330--341. Google Scholar
Digital Library
- Puri, A. 1995. Theory of hybrid and discrete systems. Ph.D. thesis, University of California, Berkeley. Google Scholar
Digital Library
- Puterman, M. L. 1994. Markov Decision Processes: Discrete Stochastic Dynamic Programming. Wiley, New York. Google Scholar
Digital Library
- Sankaranarayanan, S., Sipma, H. B., and Manna, Z. 2004. Constraint-based linear-relations analysis. In Proceedings of the International Workshop on Computer Science Logic. R. Giacobazzi Ed., Lecture Notes in Computer Science, vol. 3148, Springer Verlag, 53--68.Google Scholar
- Sankaranarayanan, S., Sipma, H. B., and Manna, Z. 2005. Scalable analysis oflinear systems using mathematical programming. In Proceedings of the Conference on Verification, Model-Checking and Abstract Interpretation. R. Cousot Ed., Lecture Notes in Computer Science, vol. 3385, Springer Verlag, 25--41. Google Scholar
Digital Library
- Schrijver, A. 1986. Theory of Linear and Integer Programming. Wiley, New York. Google Scholar
Digital Library
- Shaham, R., Kolodner, E. K., and Sagiv, S. 2000. Automatic removal of array memory leaks in Java. In Proceedings of the International Conference on Compiler Construction. D. A. Watt Ed., Lecture Notes in Computer Science, vol. 1781, Springer Verlag, 50--66. Google Scholar
Digital Library
- Tarski, A. 1955. A lattice-theoretical fixpoint theorem and its appications. Pac. J Math. 5, 285--309.Google Scholar
Cross Ref
- Vöge, J. and Jurdziński, M. 2000. A discrete strategy improvement algorithm for solving parity games. In Proceedings of the 12th International Conference onComputer-Aided Verification. Springer Verlag, 202--215. Google Scholar
Digital Library
- Wojtczak, D. and Etessami, K. 2007. PReMo: An analyzer for probabilistic recursive models. In Proceedings of the Workshop on Tools and Algorithms for the Construction and Analysis of Systems. V O. Grumberg and M. Huth Eds., Lecture Notes in Computer Science, vol. 4424, Springer Verlag, 66--71. Google Scholar
Digital Library
- Wright, S. J. 1997. PrimalṡDual InteriorṡPoint Methods. SIAM, Philadelphia, PA. Google Scholar
Digital Library
- Wright, S. J. 1999. Recent developments in interior-point methods. In System Modelling and Optimization, M. J. D. Powell and S. Scholtes Eds., IFIP Conference Proceedings Series, vol. 174. Kluwer, Amsterdam, Netherlands, 311--334. Google Scholar
Digital Library
Index Terms
Solving systems of rational equations through strategy iteration
Recommendations
Abstract interpretation meets convex optimization
Numerical static program analyses by abstract interpretation, e.g., the problem of inferring bounds for the values of numerical program variables, are faced with the problem that the abstract domains often contain infinite ascending chains. In order to ...
How to combine widening and narrowing for non-monotonic systems of equations
PLDI '13Non-trivial analysis problems require complete lattices with infinite ascending and descending chains. In order to compute reasonably precise post-fixpoints of the resulting systems of equations, Cousot and Cousot have suggested accelerated fixpoint ...
Abstract interpretation of resolution-based semantics
We extend the abstract interpretation point of view on context-free grammars by Cousot and Cousot to resolution-based logic programs and proof systems. Starting from a transition-based small-step operational semantics of Prolog programs (akin to the ...








Comments