TRACER: A Symbolic Execution Tool for Verification. TRACER is a verification tool based on symbolic execution for finite-state C sequential programs developed at National University of Singapore . TRACER attempts at building a finite symbolic execution tree which overapproximates the set of all concrete reachable states. If the error location cannot be reached from any symbolic path then the program is reported as safe. Otherwise, either the program may contain a bug or it may not terminate. TRACER reports a false alarm only if the theorem prover fails to prove a valid claim. The most innovative features of TRACER stem from how it tackles the two fundamental limitations of symbolic execution: exponential number of paths on the number of program branches, and infinite-length symbolic paths due to unbounded loops. TRACER computes interpolants (using weakest preconditions among other methods) from infeasible paths and integrates a novel counterexample-guided refinement phase within the symbolic execution process.
References in zbMATH (referenced in 4 articles )
Showing results 1 to 4 of 4.
- De Angelis, Emanuele; Fioravanti, Fabio; Pettorossi, Alberto; Proietti, Maurizio: Specialization with constrained generalization for software model checking (2013)
- Gange, Graeme; Navas, Jorge A.; Schachte, Peter; Søndergaard, Harald; Stuckey, Peter J.: Failure tabled constraint logic programming by interpolation (2013)
- De Angelis, Emanuele: Software model checking by program specialization (2012)
- Jaffar, Joxan; Murali, Vijayaraghavan; Navas, Jorge A.; Santosa, Andrew E.: TRACER: a symbolic execution tool for verification (2012) ioport