pith. sign in

arxiv: 1205.6527 · v1 · pith:HBKMUA3Xnew · submitted 2012-05-30 · 💻 cs.PL · cs.LO

Towards Bounded Infeasible Code Detection

classification 💻 cs.PL cs.LO
keywords feasiblemethodalgorithmformulapathprogramsboundedcode
0
0 comments X
read the original abstract

A first step towards more reliable software is to execute each statement and each control-flow path in a method once. In this paper, we present a formal method to automatically compute test cases for this purpose based on the idea of a bounded infeasible code detection. The method first unwinds all loops in a program finitely often and then encodes all feasible executions of the loop-free programs in a logical formula. Helper variables are introduced such that a theorem prover can reconstruct the control-flow path of a feasible execution from a satisfying valuation of this formula. Based on this formula, we present one algorithm that computes a feasible path cover and one algorithm that computes a feasible statement cover. We show that the algorithms are complete for loop-free programs and that they can be implemented efficiently. We further provide a sound algorithm to compute procedure summaries which makes the method scalable to larger programs.

This paper has not been read by Pith yet.

discussion (0)

Sign in with ORCID, Apple, or X to comment. Anyone can read and Pith papers without signing in.