Probabilistic software analysis aims at quantifying the probability of a target event occurring during the execution of a program processing uncertain incoming data or written itself using probabilistic programming constructs. Recent techniques combine symbolic execution with model counting or solution space quantification methods to obtain accurate estimates of the occurrence probability of rare target events, such as failures in a mission-critical system. However, they face several scalability and applicability limitations when analyzing software processing with high-dimensional and correlated multivariate input distributions. In this paper, we present SYMbolic Parallel Adaptive Importance Sampling (SYMPAIS), a new inference method tailored to analyze path conditions generated from the symbolic execution of programs with high-dimensional, correlated input distributions. SYMPAIS combines results from importance sampling and constraint solving to produce accurate estimates of the satisfaction probability for a broad class of constraints that cannot be analyzed by current solution space quantification methods. We demonstrate SYMPAIS's generality and performance compared with state-of-the-art alternatives on a set of problems from different application domains.
翻译:最新技术结合了模拟执行和模型计算或解决方案空间量化方法,以获得对罕见目标事件的发生概率的准确估计,例如任务临界系统失灵;然而,在用高维和相关多变量输入分布分析软件处理时,它们面临若干可缩放性和适用性限制;在本文件中,我们介绍了SYMBolic平行适应重要性抽样(SYPAIS),这是一种新的推论方法,专门用来分析以高维、相关输入分布符号执行程序所产生的路径条件。 SYMPAIS结合了重要取样和限制解决结果,以准确估计目前解决方案空间量化方法无法分析的广泛限制类别的满意度。我们展示了SYMPIS与不同应用领域问题中最先进的替代方法相比的一般性和性及性能。