Automatic discovery of linear restraints among variables of a program
POPL '78 Proceedings of the 5th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
POPL '77 Proceedings of the 4th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Introduction to Mathematical Theory of Computation
Introduction to Mathematical Theory of Computation
A Discipline of Programming
Polynomial Constants Are Decidable
SAS '02 Proceedings of the 9th International Symposium on Static Analysis
Non-linear loop invariant generation using Gröbner bases
Proceedings of the 31st ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Computing polynomial program invariants
Information Processing Letters
Ideals, Varieties, and Algorithms: An Introduction to Computational Algebraic Geometry and Commutative Algebra, 3/e (Undergraduate Texts in Mathematics)
Automatic generation of polynomial invariants of bounded degree using abstract interpretation
Science of Computer Programming
Generating all polynomial invariants in simple loops
Journal of Symbolic Computation
Certified result checking for polyhedral analysis of bytecode programs
TGC'10 Proceedings of the 5th international conference on Trustworthly global computing
Interprocedurally analyzing polynomial identities
STACS'06 Proceedings of the 23rd Annual conference on Theoretical Aspects of Computer Science
A complete invariant generation approach for p-solvable loops
PSI'09 Proceedings of the 7th international Andrei Ershov Memorial conference on Perspectives of Systems Informatics
A data driven approach for algebraic loop invariants
ESOP'13 Proceedings of the 22nd European conference on Programming Languages and Systems
Hi-index | 0.00 |
We propose a static analysis for computing polynomial invariants for imperative programs. The analysis is derived from an abstract interpretation of a backwards semantics, and computes pre-conditions for equalities like g=0 to hold at the end of execution. A distinguishing feature of the technique is that it computes polynomial loop invariants without resorting to Gröbner base computations. The analysis uses remainder computations over parameterized polynomials in order to handle conditionals and loops efficiently. The algorithm can analyse and find a large majority of loop invariants reported previously in the literature, and executes significantly faster than implementations using Gröbner bases.