Summary-Guided Incremental Symbolic Execution

Symbolic execution is a powerful technique for systematically exploring program paths, but scaling symbolic execution to practical programs remains challenging. State-of-the-art techniques face the challenge to efficiently explore incremental behaviors, especially for highly coupled programs with co...

Full description

Saved in:
Bibliographic Details
Published in2020 IEEE/ACM 42nd International Conference on Software Engineering: Companion Proceedings (ICSE-Companion) pp. 310 - 311
Main Authors Yi, Qiuping, Wen, Junye, Yang, Guowei
Format Conference Proceeding
LanguageEnglish
Published ACM 01.10.2020
Subjects
Online AccessGet full text

Cover

Loading…
More Information
Summary:Symbolic execution is a powerful technique for systematically exploring program paths, but scaling symbolic execution to practical programs remains challenging. State-of-the-art techniques face the challenge to efficiently explore incremental behaviors, especially for highly coupled programs with complex control and data dependency. In this paper, we present a novel approach for incremental symbolic execution based on an iteration loop between path exploration and path suffixes summarization. On one hand, the explored paths are summarized to enable more precise identification of affected paths; on the other hand, the summary guides path exploration to prune paths that have no incremental behaviors. We implemented the prototype of our approach and conducted experiments on a set of real-world applications. The results show that it is efficient and effective in exploring incremental behaviors.
DOI:10.1145/3377812.3390895