Termination Analysis of Integer Linear Loops

  • Aaron R. Bradley
  • Zohar Manna
  • Henny B. Sipma
Part of the Lecture Notes in Computer Science book series (LNCS, volume 3653)


Usually, ranking function synthesis and invariant generation over a loop with integer variables involves abstracting the loop to have real variables. Integer division and modulo arithmetic must be soundly abstracted away so that the analysis over the abstracted loop is sound for the original loop. Consequently, the analysis loses precision. In contrast, we introduce a technique for handling loops over integer variables directly. The resulting analysis is more precise than previous analyses.


Feasible Region Ranking Function Integer Variable Synthesis Template Invariant Generation 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Bradley, A.R., Manna, Z., Sipma, H.B.: Linear ranking with reachability. In: CAV (2005) (to appear)Google Scholar
  2. 2.
    Colón, M., Sankaranarayanan, S., Sipma, H.: Linear invariant generation using non-linear constraint solving. In: CAV, pp. 420–433 (2003)Google Scholar
  3. 3.
    Colón, M., Sipma, H.: Synthesis of linear ranking functions. In: TACAS, pp. 67–81 (2001)Google Scholar
  4. 4.
    Colón, M., Sipma, H.: Practical methods for proving program termination. In: CAV, pp. 442–454 (2002)Google Scholar
  5. 5.
    Cooper, D.C.: Theorem proving in arithmetic without multiplication. Machine Intelligence 7, 91–100 (1972)zbMATHGoogle Scholar
  6. 6.
    Cousot, P.: Proving program invariance and termination by parametric abstraction, lagrangian relaxation and semidefinite programming. In: VMCAI, pp. 1–24 (2005)Google Scholar
  7. 7.
    Cousot, P., Cousot, R.: Abstract Interpretation: A unified lattice model for static analysis of programs by construction or approximation of fixpoints. ACM Principles of Programming Languages, 238–252 (1977)Google Scholar
  8. 8.
    Cousot, P., Halbwachs, N.: Automatic discovery of linear restraints among the variables of a program. ACM Principles of Programming Languages, 84–97 (January 1978)Google Scholar
  9. 9.
    Sipma, H.B., Uribe, T.E., Manna, Z.: Deductive model checking. In: CAV, pp. 209–219 (1996)Google Scholar
  10. 10.
    Hennessy, J.L., Patterson, D.A.: Computer organization and design, 2nd edn. the hardware/software interface. Morgan Kaufmann Publishers Inc, San Francisco (1998)zbMATHGoogle Scholar
  11. 11.
    Hentenryck, P.V., Michel, L., Benhamou, F.: Newton - constraint programming over nonlinear constraints. Sci. Comput. Program, 83–118 (1998)Google Scholar
  12. 12.
    Manna, Z., Browne, A., Sipma, H., Uribe, T.E.: Visual abstractions for temporal verification. Algebraic Methodology and Software Technology, 28–41 (1998)Google Scholar
  13. 13.
    Podelski, A., Rybalchenko, A.: A complete method for the synthesis of linear ranking functions. In: VMCAI (2004), pp. 239–251 (2004)Google Scholar
  14. 14.
    Podelski, A., Rybalchenko, A.: Transition invariants. In: LICS (2004), pp. 32–41 (2004)Google Scholar
  15. 15.
    Presburger, M.: Ueber die vollstaendigkeit eines gewissen systems der arithmetic ganzer zahlen, in welchem die addition als einzige operation hervortritt. Comptes Rendus du I congrs de Mathmaticiens des Pays Slaves, 92–101 (1929)Google Scholar
  16. 16.
    Pugh, W.: The Omega test: a fast and practical integer programming algorithm for dependence analysis. Communications of the ACM 35, 102–114 (1992)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2005

Authors and Affiliations

  • Aaron R. Bradley
    • 1
  • Zohar Manna
    • 1
  • Henny B. Sipma
    • 1
  1. 1.Computer Science DepartmentStanford UniversityStanfordUSA

Personalised recommendations