Polynomial Invariant Generation for Non-deterministic Recursive Programs
We present a sound and complete method to generate inductive invariants consisting of polynomial inequalities for programs with polynomial updates. Our method is based on Positivstellensaetze and an algorithm of Grigor'ev and Vorobjov for solving systems of polynomial inequalities. To the best of our knowledge, this is the first method to guarantee completeness for polynomial inequality invariants. The worst-case complexity of our approach is subexponential, whereas the worst-case complexity of the previously-known complete method (Colon et al, CAV 2003), which could only handle linear invariants, is exponential. We also present experimental results on several academic examples that require polynomial invariants.
READ FULL TEXT