Improving Scalability of Compositional Symbolic Execution Through Parameterized Summary

Ting Xue,Ying Shi,Xiangyang Jia
2016-01-01
Abstract:Summary-based compositional symbolic execution is able to merge the paths of target method into one logic formula, so that to eliminate path explosion due to inter-procedural paths. However, constraints in such summary-base method are always more complex than classical symbolic execution. When the con- straints are complex enough, it will cost a lot of time in constraint solving, so as lead to worse scalability. In order to improve the scalability of compositional symbolic execution, we propose a more flexible summary- based approach named DEMPS, which introduces parameterization mechanism into summary, so that a summary specification is able to be instantiated with different calling context, as well as to be composed with each other in hierarchical way. DEMPS improves the scalability though on-demand path expanding and merging of summary. On-demand expanding selectively expands the paths of summary instances which con- tribute to the target, and keeps the useless summary instances abstract. On-demand merging is able to selec- tively merge or expand paths of specific summary instances, so as to support the trade-off between path ex- ploration and constraint solving. We implement DEMPS in Symbolic JPF, and experimental results show that, when we choose a reasonable decision of merging and expanding, DEMPS has better scalability than both classical symbolic execution and classical summary-based approach.
What problem does this paper attempt to address?