2012/01/23 by Jiří Slabý, Slabý, Jiří, Jan Strejček +3
Chemistry · Computer Science · #Advanced Malware Detection Techniques #FOS: Computer and information sciences #Mass Spectrometry Techniques and Applications #Programming Languages (cs.PL) #Software Testing and Debugging Techniques #cs.PL
paper · pdf · doi:10.48550/arxiv.1201.4719
arxiv created 2012/01/23 · openalex publication_date 2012/01/23 · arxiv updated 2012/01/24 · openalex created_date 2025/10/10 · openalex updated_date 2026/07/28
We introduce a novel technique for finding real errors in programs. The technique is based on a synergy of three well-known methods: metacompilation, slicing, and symbolic execution. More precisely, we instrument a given program with a code that tracks runs of state machines representing various kinds of errors. Next we slice the program to reduce its size without affecting runs of state machines. And then we symbolically execute the sliced program. Depending on the kind of symbolic execution, the technique can be applied as a stand-alone bug finding technique, or to weed out some false positives from an output of another bug-finding tool. We provide several examples demonstrating the practical applicability of our technique.