Advertisement

Invariant Generation for P-Solvable Loops with Assignments

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

Abstract

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.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  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