{"title":"Experience report on automated procedure construction for deductive synthesis","authors":"S. Roach, J. V. Baalen","doi":"10.1109/ASE.2002.1114996","DOIUrl":null,"url":null,"abstract":"Deductive program synthesis systems based on automated theorem proving offer the promise of \"correct by construction\" software. However, the difficulty encountered in constructing usable deductive synthesis systems has prevented their widespread use. Amphion is a real-world, domain-independent program synthesis system. It is specialized to specific applications through the creation of an operational domain theory and a specialized deductive engine. This paper describes an experiment aimed at making the construction of usable Amphion applications easier. The software system Theory Operationalization for Program Synthesis (TOPS) has a library of decision procedures with a theory template for each procedure. TOPS identifies axioms in the domain theory that are an instance of a library of procedure and uses partial deduction to augment the procedure with the capability to construct ground terms for deductive synthesis. Synthesized procedures are interfaced to a resolution theorem prover. Axioms in the original domain theory that are implied by the synthesized procedures are removed. During deductive synthesis, each procedure is invoked to test conjunctions of literals in the language of the theory of that procedure. When possible, the procedure generates ground terms and binds them to variables in a problem specification. These terms are program fragments. Experiments show that the procedures synthesized by TOPS can reduce theorem proving search at least as much as hand tuning of the deductive synthesis system.","PeriodicalId":163532,"journal":{"name":"Proceedings 17th IEEE International Conference on Automated Software Engineering,","volume":"15 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2002-09-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"3","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings 17th IEEE International Conference on Automated Software Engineering,","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/ASE.2002.1114996","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 3
Abstract
Deductive program synthesis systems based on automated theorem proving offer the promise of "correct by construction" software. However, the difficulty encountered in constructing usable deductive synthesis systems has prevented their widespread use. Amphion is a real-world, domain-independent program synthesis system. It is specialized to specific applications through the creation of an operational domain theory and a specialized deductive engine. This paper describes an experiment aimed at making the construction of usable Amphion applications easier. The software system Theory Operationalization for Program Synthesis (TOPS) has a library of decision procedures with a theory template for each procedure. TOPS identifies axioms in the domain theory that are an instance of a library of procedure and uses partial deduction to augment the procedure with the capability to construct ground terms for deductive synthesis. Synthesized procedures are interfaced to a resolution theorem prover. Axioms in the original domain theory that are implied by the synthesized procedures are removed. During deductive synthesis, each procedure is invoked to test conjunctions of literals in the language of the theory of that procedure. When possible, the procedure generates ground terms and binds them to variables in a problem specification. These terms are program fragments. Experiments show that the procedures synthesized by TOPS can reduce theorem proving search at least as much as hand tuning of the deductive synthesis system.
基于自动定理证明的演绎程序综合系统提供了“构造修正”软件的前景。然而,在构建可用的演绎综合系统时遇到的困难阻碍了它们的广泛应用。Amphion是一个真实世界的、独立于领域的程序合成系统。通过创建一个操作领域理论和一个专门的演绎引擎,它专门用于特定的应用。本文描述了一个实验,旨在使可用的Amphion应用程序的构建更容易。程序综合理论操作化(Theory Operationalization for Program Synthesis, TOPS)软件系统有一个决策程序库,每个程序都有一个理论模板。TOPS识别领域理论中的公理,这些公理是过程库的一个实例,并使用部分演绎来增强过程的能力,以构建演绎综合的基本项。合成程序接口到一个分辨率定理证明器。原领域理论中由合成过程所隐含的公理被删除。在演绎综合过程中,每个过程都被调用来测试该过程理论语言中的字面连词。在可能的情况下,该过程生成基本术语,并将它们绑定到问题规范中的变量。这些术语是程序片段。实验表明,由TOPS合成的程序可以减少定理证明搜索,至少与演绎综合系统的手动调谐一样多。