Invariant Generation for P-Solvable Loops with Assignments

  • Laura Kovács
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5010)


We discuss interesting properties of a general technique for inferring polynomial invariants for a subfamily of imperative loops, called the P-solvable loops, with assignments only. The approach combines algorithmic combinatorics, polynomial algebra and computational logic, and it is implemented in a new software package called Aligator. We present a collection of examples illustrating the power of the framework.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Adams, W.W., Loustaunau, P.: An Introduction to Gröbner Bases. Graduate Studies in Math. 3. AMS (1994)Google Scholar
  2. 2.
    Buchberger, B.: An Algorithm for Finding the Basis Elements of the Residue Class Ring of a Zero Dimensional Polynomial Ideal. Journal of Symbolic Computation 41(3-4), 475–511 (2006); Phd thesis 1965, University of Innsbruck, Austria (1965)CrossRefMathSciNetzbMATHGoogle Scholar
  3. 3.
    Cousot, P., Cousot, R.: Automatic Synthesis of Optimal Invariant Assertions: Mathematical Foundations. In: Proc. of the 1977 Symposium on Artificial Intelligence and Programming Languages, pp. 1–12 (1977)Google Scholar
  4. 4.
    Everest, G., van der Poorten, A., Shparlinski, I., Ward, T.: Recurrence Sequences. Mathematical Surveys and Monographs, vol. 104. American Mathematical Society, Providence, RI (2003)zbMATHGoogle Scholar
  5. 5.
    German, S.M., Wegbreit, B.: A Synthesizer of Inductive Assertions. IEEE Transactions on Software Engineering 1, 68–75 (1975)Google Scholar
  6. 6.
    Gosper, R.W.: Decision Procedures for Indefinite Hypergeometric Summation. Journal of Symbolic Computation 75, 40–42 (1978)MathSciNetzbMATHGoogle Scholar
  7. 7.
    Graham, R.L., Knuth, D.E., Patashnik, O.: Concrete Mathematics, 2nd edn. Addison-Wesley Publishing Company, Reading (1989)zbMATHGoogle Scholar
  8. 8.
    Kapur, D.: A Quantifier Elimination based Heuristic for Automatically Generating Inductive Assertions for Programs. Journal of Systems Science and Complexity 19(3), 307–330 (2006)CrossRefMathSciNetzbMATHGoogle Scholar
  9. 9.
    Karr, M.: Affine Relationships Among Variables of Programs. Acta Informatica 6, 133–151 (1976)CrossRefMathSciNetzbMATHGoogle Scholar
  10. 10.
    Kauers, M., Zimmermann, B.: Computing the Algebraic Relations of C-finite Sequences and Multisequences. Technical Report 2006-24, SFB F013 (2006)Google Scholar
  11. 11.
    Knuth, D.E.: The Art of Computer Programming. In: Seminumerical Algorithms, 3rd edn., vol. 2, Addison-Wesley, Reading (1998)Google Scholar
  12. 12.
    Kovács, L.: Automated Invariant Generation by Algebraic Techniques for Imperative Program Verification in Theorema. PhD thesis, RISC, Johannes Kepler University Linz (2007)Google Scholar
  13. 13.
    Kovacs, L.: Reasoning Algebraically About P-Solvable Loops. In: Proc. of TACAS, Budapest, Hungary. LNCS, vol. 4963, pp. 249–264 (to appear, 2008)Google Scholar
  14. 14.
    Müller-Olm, M., Seidl, H.: Computing Polynomial Program Invariants. Indormation Processing Letters 91(5), 233–244 (2004)CrossRefGoogle Scholar
  15. 15.
    Müller-Olm, M., Seidl, H.: Precise Interprocedural Analysis through Linear Algebra. In: Proc. of the 31st POPL, pp. 330–341 (2004)Google Scholar
  16. 16.
    Paule, P., Schorn, M.: A Mathematica Version of Zeilberger’s Algorithm for Proving Binomial Coefficient Identities. Journal of Symbolic Computation 20(5-6), 673–698 (1995)CrossRefMathSciNetzbMATHGoogle Scholar
  17. 17.
    Petter, M.: Berechnung von polynomiellen Invarianten. Master’s thesis, Technical University Münich, Germany (2004)Google Scholar
  18. 18.
    Rodriguez-Carbonell, E., Kapur, D.: Automatic Generation of Polynomial Loop Invariants: Algebraic Foundations. In: Proc. of ISSAC 2004 (2004)Google Scholar
  19. 19.
    Rodriguez-Carbonell, E., Kapur, D.: Automatic Generation of Polynomial Invariants of Bounded Degree using Abstract Interpretation. Science of Computer Programming 64(1) (2007)Google Scholar
  20. 20.
    Rodriguez-Carbonell, E., Kapur, D.: Generating All Polynomial Invariants in Simple Loops. J. of Symbolic Computation 42(4), 443–476 (2007)CrossRefMathSciNetzbMATHGoogle Scholar
  21. 21.
    Sankaranaryanan, S., Sipma, H.B., Manna, Z.: Non-Linear Loop Invariant Generation using Gröbner Bases. In: Proc. of POPL 2004 (2004)Google Scholar
  22. 22.
    Stanley, R.P.: Enumerative Combinatorics. Cambridge Studies in Advanced Mathematics, vol. 1. Cambridge University Press, Cambridge (1997)zbMATHGoogle Scholar
  23. 23.
    Winkler, F.: Polynomial Algorithms in Computer Algebra. Springer, Heidelberg (1996)zbMATHGoogle Scholar
  24. 24.
    Zeilberger, D.: A Holonomic System Approach to Special Functions. Journal of Computational and Applied Mathematics 32, 321–368 (1990)CrossRefMathSciNetzbMATHGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2008

Authors and Affiliations

  • Laura Kovács
    • 1
  1. 1.EPFLSwizterland

Personalised recommendations