当前位置: X-MOL 学术ACM Trans. Program. Lang. Syst. › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
Program Synthesis for Program Analysis
ACM Transactions on Programming Languages and Systems ( IF 1.5 ) Pub Date : 2018-05-29 , DOI: 10.1145/3174802
Cristina David 1 , Pascal Kesseli 1 , Daniel Kroening 1 , Matt Lewis 1
Affiliation  

In this article, we propose a unified framework for designing static analysers based on program synthesis . For this purpose, we identify a fragment of second-order logic with restricted quantification that is expressive enough to model numerous static analysis problems (e.g., safety proving, bug finding, termination and non-termination proving, refactoring). As our focus is on programs that use bit-vectors, we build a decision procedure for this fragment over finite domains in the form of a program synthesiser. We provide instantiations of our framework for solving a diverse range of program verification tasks such as termination, non-termination, safety and bug finding, superoptimisation, and refactoring. Our experimental results show that our program synthesiser compares positively with specialised tools in each area as well as with general-purpose synthesisers.

中文翻译:

程序分析的程序综合

在本文中,我们提出了一个统一设计静态分析器的框架程序综合. 为此,我们确定了一个具有有限量化的二阶逻辑片段,该片段足以表达大量静态分析问题(例如,安全证明、错误发现、终止和非终止证明、重构)。由于我们的重点是使用位向量的程序,因此我们以程序合成器的形式在有限域上为该片段构建决策程序。我们提供框架的实例化,以解决各种程序验证任务,例如终止、非终止、安全和错误发现、超优化和重构。我们的实验结果表明,我们的程序合成器与每个领域的专业工具以及通用合成器相比具有积极的意义。
更新日期:2018-05-29
down
wechat
bug