TRACER [8] is a tool for verifying safety properties of sequential C programs. TRACER attempts at building a finite symbolic execution graph which over-approximates the set of all concrete reachable states and the set of feasible paths. We present an abstract framework for TRACER and similar CEGAR-like systems [2,3,5,6,9]. The framework provides (1) a graphtransformation based method for reducing the feasible paths in control-flow graphs, (2) a model for symbolic execution, subsumption, predicate abstraction and invariant generation. In this framework we formally prove two key properties: correct construction of the symbolic states and preservation of feasible paths. The framework focuses on core operations, leaving to concrete prototypes to “fit in” heuristics for combining them.
CITATION STYLE
Aissat, R., Voisin, F., & Wolff, B. (2016). Infeasible paths elimination by symbolic execution techniques: Proof of correctness and preservation of paths. In Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) (Vol. 9807 LNCS, pp. 36–51). Springer Verlag. https://doi.org/10.1007/978-3-319-43144-4_3
Mendeley helps you to discover research relevant for your work.