Statistical Symbolic Execution with Informed Sampling

被引:23
作者
Filieri, Antonio [1 ]
Pasareanu, Corina S. [2 ]
Visser, Willem [3 ]
Geldenhuys, Jaco [3 ]
机构
[1] Univ Stuttgart, Stuttgart, Germany
[2] Carnegie Mellon Silicon Valley, NASA Ames, Moffett Field, CA USA
[3] Stellenbosch Univ, Stellenbosch, South Africa
来源
22ND ACM SIGSOFT INTERNATIONAL SYMPOSIUM ON THE FOUNDATIONS OF SOFTWARE ENGINEERING (FSE 2014) | 2014年
关键词
Statistical Symbolic Execution; MODEL CHECKING;
D O I
10.1145/2635868.2635899
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Symbolic execution techniques have been proposed recently for the probabilistic analysis of programs. These techniques seek to quantify the likelihood of reaching program events of interest, e.g., assert violations. They have many promising applications but have scalability issues due to high computational demand. To address this challenge, we propose a statistical symbolic execution technique that performs Monte Carlo sampling of the symbolic program paths and uses the obtained information for Bayesian estimation and hypothesis testing with respect to the probability of reaching the target events. To speed up the convergence of the statistical analysis, we propose Informed Sampling, an iterative symbolic execution that first explores the paths that have high statistical significance, prunes them from the state space and guides the execution towards less likely paths. The technique combines Bayesian estimation with a partial exact analysis for the pruned paths leading to provably improved convergence of the statistical analysis. We have implemented statistical symbolic execution with informed sampling in the Symbolic PathFinder tool. We show experimentally that the informed sampling obtains more precise results and converges faster than a purely statistical analysis and may also be more efficient than an exact symbolic analysis. When the latter does not terminate symbolic execution with informed sampling can give meaningful results under the same time and memory limits.
引用
收藏
页码:437 / 448
页数:12
相关论文
共 37 条
  • [1] [Anonymous], 2013, Bayesian data analysis, third edition
  • [2] [Anonymous], 1990, Statistical Science, DOI DOI 10.1214/SS/1177012262
  • [3] [Anonymous], 2013, ESEC SIGSOFT FSE
  • [4] [Anonymous], 2010, MONTE CARLO STAT MET
  • [5] Balasubramanian D, 2013, LECT NOTES COMPUT SC, V7795, P523, DOI 10.1007/978-3-642-36742-7_36
  • [6] Borges M, 2014, ACM SIGPLAN NOTICES, V49, P123, DOI [10.1145/2594291.2594329, 10.1145/2666356.2594329]
  • [7] Boyapati C., 2002, Software Engineering Notes, V27, P123, DOI 10.1145/566171.566191
  • [8] Burnim Jacob, 2008, 2008 23rd IEEE/ACM International Conference on Automated Software Engineering, P443, DOI 10.1109/ASE.2008.69
  • [9] Chaganty Arun, 2013, Artificial Intelligence and Statistics, P153
  • [10] Chambers R., 2012, OXFORD STAT SCI SERI