Function Summarization Modulo Theories

Sepideh Asadi, Martin Blicha, Grigory Fedyukovich, Antti Hyyvarinen, Karine Even Mendoza, Natasha Sharygina, Hana Chockler

Research output: Chapter in Book/Report/Conference proceedingConference paperpeer-review

6 Citations (Scopus)
157 Downloads (Pure)

Abstract

SMT-based program verification can achieve high precision using bit-precise models or combinations of different theories. Often such approaches suffer from problems related to scalability due to the complexity of the underlying decision procedures. Precision is traded for performance by increasing the abstraction level of the model. As the level of abstraction increases, missing important details of the program model becomes problematic. In this paper we address this problem with an incremental verification approach that alternates precision of the program modules on demand. The idea is to model a program using the lightest possible (i.e., less expensive) theories that suffice to verify the desired property. To this end, we employ safe over-approximations for the program based on both function summaries and light-weight SMT theories. If during verification it turns out that the precision is too low, our approach lazily strengthens all affected summaries or the theory through an iterative refinement procedure. The resulting summarization framework provides a natural and light-weight approach for carrying information between different theories. An experimental evaluation with a bounded model checker for C on a wide range of benchmarks demonstrates that our approach scales well, often effortlessly solving instances where the state-of-the-art model checker CBMC runs out of time or memory.
Original languageEnglish
Title of host publicationLPAR-22
Subtitle of host publication22nd International Conference on Logic for Programming, Articial Intelligence and Reasoning
Pages56-75
Volume57
DOIs
Publication statusPublished - 16 Nov 2018

Publication series

NameEPiC Series in Computing
ISSN (Print)2398-7340

Fingerprint

Dive into the research topics of 'Function Summarization Modulo Theories'. Together they form a unique fingerprint.

Cite this