Recursive Games for Compositional Program Synthesis
Recursive Games for Compositional Program Synthesis
复制标题
用于组合程序综合的递归博弈
DOI:
10.1007/978-3-319-29613-5_2
复制
发表时间:
2015
期刊:
影响因子:
--
通讯作者:
Rybalchenko
中科院分区:
文献类型:
--
作者:
Beyene;Chaudhuri;Popeea;Rybalchenko
Compositionality, i.e., the use of procedure summarization instead of code inlining, is key to scaling automated verification to large code bases. In this paper, we present a way to exploit compositionality in the context ofprogram synthesis.The goal in our synthesis problem is to instantiate missing expressions in a procedural program so that the resulting program satisfies a safety or termination requirement in spite of an adversarial environment. The problem is modeled as a game between two players — the program and the environment — that take turns changing the program’s state and stack. The objective of the program is to ensure that all executions of thisrecursive gamesatisfy the requirement. Synthesis involves the modular computation of a strategy under which the program meets this objective. Our solution is based on the notion ofgame summaries, which generalize traditional procedure summaries, and relate program states in a procedural context with sets of states at which the game can return from that context. Our method for compositional reasoning about game summaries is embodied in a set of deductive proof rules. We prove these rules sound and relatively complete. We also show that a sound approximation of these rules can be automated using a Horn constraint solver that utilizes SMT-solving, counterexample-guided abstraction refinement, and interpolation. An experimental evaluation over a set of systems code benchmarks demonstrates the practical promise of the approach.
登录
查看更多内容
DOI:
10.4230/lipics.csl.2011.428
发表时间:
2011
期刊:
2006 Formal Methods in Computer Aided Design
影响因子:
--
作者:
P. Madhusudan
通讯作者:
P. Madhusudan
DOI:
10.1007/11817963_33
发表时间:
2006
期刊:
Proceedings of the XXXV Brazilian Symposium on Software Engineering
影响因子:
--
作者:
Andreas Griesmayer;R. Bloem;B. Cook
通讯作者:
B. Cook
DOI:
--
发表时间:
2006
期刊:
International Conference on Computer Aided Verification
影响因子:
--
作者:
R. Alur;Swarat Chaudhuri;P. Madhusudan
通讯作者:
P. Madhusudan
DOI:
10.1007/978-3-642-39799-8_61
发表时间:
2013
期刊:
影响因子:
--
作者:
Tewodros A. Beyene;Corneliu Popeea;Andrey Rybalchenko
通讯作者:
Andrey Rybalchenko
DOI:
--
发表时间:
2006
期刊:
ACM-SIGACT Symposium on Principles of Programming Languages
影响因子:
--
作者:
R. Alur;Swarat Chaudhuri;P. Madhusudan
通讯作者:
P. Madhusudan