Thursday, March 08, 2012
Speaker: Laura Kovacs
Venue: TU Vienna
Interpolation is an important technique in verification and static analysis of programs. In particular, interpolants extracted from proofs of various properties are used in invariant generation and bounded model checking. A number of recent papers studies interpolation in various theories and also extraction of smaller interpolants from proofs. In particular, there are several algorithms for extracting of interpolants from so-called local proofs.
In this talk we describe a technique of minimising interpolants based on transformations of what we call the “grey area” of local proofs. We also present how to translate arbitrary proofs, under certain common conditions, into local ones.
Unlike many other interpolation techniques, our technique is very general and applies to arbitrary theories. Our approach is implemented in the theorem prover Vampire and evaluated on a large number of benchmarks coming from first-order theorem proving and bounded model checking using logic with equality, uninterpreted functions and linear arithmetic. Our experiments demonstrate the power of the new techniques: for example, it is not unusual that our proof transformation gives more than a tenfold reduction in the size of interpolants.
This is a joint work with Krystof Hoder and Andrei Voronkov (The University of Manchester).