Sciweavers

VSTTE
2012
Springer

Infeasible Code Detection

12 years 8 months ago
Infeasible Code Detection
A piece of code in a computer program is infeasible if it cannot be part of any normally-terminating execution of the program. We develop an algorithm for the automatic detection of all infeasible code in a program. We first translate the task of determining all infeasible code into the problem of finding all statements that can be covered by a feasible path. We prove that in order to identify all coverable statements, it is sufficient to find all coverable statements within a certain minimal subset. For this, our algorithm repeatedly queries an oracle, asking for the infeasibility of specific sets of control-flow paths. We present a sound implementation of the proposed algorithm on top of the Boogie program verifier utilizing a theorem prover to provide the oracle required by the algorithm. We show experimentally a drastic decrease in the number of theorem prover queries compared to existing approaches, resulting in an overall speedup of the entire computation.
Cristiano Bertolini, Martin Schäf, Pascal Sch
Added 25 Apr 2012
Updated 25 Apr 2012
Type Journal
Year 2012
Where VSTTE
Authors Cristiano Bertolini, Martin Schäf, Pascal Schweitzer
Comments (0)