Title
Tests from Witnesses - Execution-Based Validation of Verification Results.
Abstract
The research community made enormous progress in the past years in developing algorithms for verifying software, as shown by international competitions. Unfortunately, the transfer into industrial practice is slow. A reason for this might be that the verification tools do not connect well to the developer work-flow. This paper presents a solution to this problem: We use verification witnesses as interface between verification tools and the testing process that every developer is familiar with. Many modern verification tools report, in case a bug is found, an error path as exchangeable verification witness. Our approach is to synthesize a test from each witness, such that the developer can inspect the verification result using familiar technology, such as debuggers, profilers, and visualization tools. Moreover, this approach identifies the witnesses as an interface between formal verification and testing: Developers can use arbitrary (witness-producing) verification tools, and arbitrary converters from witnesses to tests; we implemented two such converters. We performed a large experimental study to confirm that our proposed solution works well in practice: Out of 18 966 verification results obtained from 21 verifiers, 14 727 results were confirmed by witness-based result validation, and 10 080 of these results were confirmed alone by extracting and executing tests, meaning that the desired specification violation was effectively observed. We thus show that our approach is directly and immediately applicable to verification results produced by software verifiers that adhere to the international standard for verification witnesses.
Year
DOI
Venue
2018
10.1007/978-3-319-92994-1_1
Lecture Notes in Computer Science
Field
DocType
Volume
Programming language,Computer science,Theoretical computer science
Conference
10889
ISSN
Citations 
PageRank 
0302-9743
3
0.38
References 
Authors
0
4
Name
Order
Citations
PageRank
Dirk Beyer11736100.85
Matthias Dangl2604.53
Thomas Lemberger3173.59
Michael Tautschnig442525.84