当前位置: X-MOL 学术Form. Methods Syst. Des. › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
Refutation-based synthesis in SMT
Formal Methods in System Design ( IF 0.8 ) Pub Date : 2017-02-16 , DOI: 10.1007/s10703-017-0270-2
Andrew Reynolds , Viktor Kuncak , Cesare Tinelli , Clark Barrett , Morgan Deters

We introduce the first program synthesis engine implemented inside an SMT solver. We present an approach that extracts solution functions from unsatisfiability proofs of the negated form of synthesis conjectures. We also discuss novel counterexample-guided techniques for quantifier instantiation that we use to make finding such proofs practically feasible. A particularly important class of specifications are single-invocation properties, for which we present a dedicated algorithm. To support syntax restrictions on generated solutions, our approach can transform a solution found without restrictions into the desired syntactic form. As an alternative, we show how to use evaluation function axioms to embed syntactic restrictions into constraints over algebraic datatypes, and then use an algebraic datatype decision procedure to drive synthesis. Our experimental evaluation on syntax-guided synthesis benchmarks shows that our implementation in the CVC4 SMT solver is competitive with state-of-the-art tools for synthesis.

中文翻译:

SMT 中基于反驳的综合

我们介绍了在 SMT 求解器中实现的第一个程序合成引擎。我们提出了一种从综合猜想的否定形式的不可满足性证明中提取解函数的方法。我们还讨论了用于量词实例化的新型反例引导技术,我们使用这些技术使找到此类证明切实可行。一类特别重要的规范是单调用属性,为此我们提出了一个专用算法。为了支持对生成的解决方案的语法限制,我们的方法可以将没有限制的解决方案转换为所需的语法形式。作为替代方案,我们展示了如何使用评估函数公理将句法限制嵌入代数数据类型的约束中,然后使用代数数据类型决策程序来驱动综合。
更新日期:2017-02-16
down
wechat
bug