计算机科学>编程语言
标题: 基于符号博弈语义和模型计数的概率分析
摘要: 概率程序分析旨在量化给定程序满足所需属性的概率。 它有许多潜在的应用,从程序理解和调试到计算程序可靠性、编译器优化和安全定量信息流分析。 在这些情况下,量化满足/违反给定属性的概率通常比仅评估此类事件发生的可能性更重要。 在这项工作中,我们介绍了一种基于游戏语义和模型计数的开放程序(即具有未定义标识符的程序)的概率分析方法。 我们使用算法游戏语义的符号表示来收集导致目标事件发生(例如满足/违反给定属性)的输入数据(上下文)的符号约束。 然后对这些约束进行分析,以量化输入满足这些约束的可能性。 我们使用模型计数技术来计算满足给定约束的解(来自有界整数域)的数量。 然后,这些计数用于为程序执行分配概率,并评估目标事件在期望置信水平下发生的概率。 最后,我们给出了将我们的方法应用于几个有趣示例的结果,并说明了它们可能带来的好处。