When Regression Verification Meets CEGAR

06/13/2018
by   Fei He, et al.
0

Software systems evolve throughout their life cycles. Many revisions are produced over time. Model checking each revision of the software is impractical. Regression verification suggests reusing intermediate results from the previous verification runs. This paper proposes a fully automatic regression verification technique in the context of CEGAR. Procedure summaries, which describe the input/output behaviors of a procedure, are proposed as the intermediate results to be reused. Procedure summaries are reasonably small to store, technically easy to process, and do not require much extra computation effort to be reused. Reusing procedure summaries saves much analysis effort on the corresponding procedures. By combining regression verification and CEGAR, we propose a technique that is able to reuse procedure summaries across different abstract precisions and different program revisions. We performed extensive experiments on a large number of industrial programs (534 revisions of 89 Linux kernel device drivers). The results show that our approach can significantly improve the performance of regression verification.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
04/12/2019

Boost the Impact of Continuous Formal Verification in Industry

Software model checking has experienced significant progress in the last...
research
08/24/2017

Verification of Programs via Intermediate Interpretation

We explore an approach to verification of programs via program transform...
research
02/14/2019

Checking Observational Purity of Procedures

Verifying whether a procedure is observationally pure is useful in many ...
research
05/31/2018

From Model Checking to Runtime Verification and Back

We describe a novel approach for adapting an existing software model che...
research
11/25/2019

Abstract Compilation for Verification of Numerical Accuracy Properties

Verification of numerical accuracy properties in modern software remains...
research
05/08/2018

Robustness Testing of Intermediate Verifiers

Program verifiers are not exempt from the bugs that affect nearly every ...
research
04/01/2021

Solver-Aided Constant-Time Circuit Verification

We present Xenon, a solver-aided method for formally verifying that Veri...

Please sign up or login with your details

Forgot password? Click here to reset