K. Rustan M. Leino and Francesco Logozzo
November 2005
This paper describes a sound technique that combines the precision of theorem proving with the loop-invariant inference of abstract interpretation. The loop-invariant computations are invoked on demand when the need for a stronger loop invariant arises, which allows a gradual increase in the level of precision used by the abstract interpreter. The technique generates loop invariants that are specific to a subset of a program's executions, achieving a dynamic and automatic form of value-based trace partitioning. Finally, the technique can be incorporated into a lemmas-on-demand theorem prover, where the loop-invariant inference happens after the generation of verification conditions.
![]() PDF file |
In Proceedings of the the 3rd Asian Symposium on Programming Languages and Systems (APLAS'05)
Publisher Springer Verlag
All copyrights reserved by Springer 2007.
| Type | Inproceedings |
| Volume | 3780 |