DocumentCode :
561364
Title :
Interpolants from Z3 proofs
Author :
McMillan, Kenneth L.
Author_Institution :
Microsoft Research
fYear :
2011
fDate :
Oct. 30 2011-Nov. 2 2011
Firstpage :
19
Lastpage :
27
Abstract :
Interpolating provers have a number of applications in formal verification, including abstraction refinement and invariant generation. It has proved difficult, however, to construct efficient interpolating provers for rich theories. We consider the problem of deriving interpolants from proofs generated by the highly efficient SMT solver Z3 in the quantified theory of arrays, uninterpreted function symbols and linear integer arithmetic (AUFLIA) a theory that is commonly used in program verification. We do not directly interpolate the proofs from Z3. Rather, we divide them into small lemmas that can be handled by a secondary interpolating prover for a restricted theory. We show experimentally that the overhead of this secondary prover is negligible. Moreover, the efficiency of Z3 makes it possible to handle problems that are beyond the reach of existing interpolating provers, as we demonstrate using benchmarks derived from bounded verification of sequential and concurrent programs.
Keywords :
computability; concurrency control; formal verification; interpolation; theorem proving; Z3 SMT proof; abstraction refinement; concurrent program; formal verification; function symbol; interpolating prover; invariant generation; linear integer arithmetic theory; program verification; satisfiability modulo theory; sequential program; Calculus; Cognition; Equations; Interpolation; Silicon; Syntactics; Vocabulary;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Formal Methods in Computer-Aided Design (FMCAD), 2011
Conference_Location :
Austin, TX
Print_ISBN :
978-1-4673-0896-0
Type :
conf
Filename :
6148898
Link To Document :
بازگشت