{"title":"From Decision Procedures to Synthesis Procedures","authors":"R. Piskac","doi":"10.1109/SYNASC.2015.78","DOIUrl":null,"url":null,"abstract":"Software synthesis is a technique for automatically generating code from a given specification. The goal of software synthesis is to make software development easier while increasing both the productivity of the programmer and the correctness of the produced code. In this paper we present an approach to synthesis that relies on the use of automated reasoning and decision procedures. First we describe how to generalize decision procedures into predictable and complete synthesis procedures.Here completeness means that the procedure is guaranteed to find code that satisfies the given specification. We illustrate the process of turning a decision procedure into a synthesis procedure using linear integer arithmetic as an example.However, writing a complete specification can be a tedious task,sometimes even harder than writing the code itself. To over come this problem, ideally the user could provide a few input-output examples, and then the code should be automatically derived.We outline how to broaden usability and applications of current software synthesis techniques. We conclude with an outlook on possible future research directions and applications of synthesis procedures.","PeriodicalId":6488,"journal":{"name":"2015 17th International Symposium on Symbolic and Numeric Algorithms for Scientific Computing (SYNASC)","volume":"91 1","pages":"3-10"},"PeriodicalIF":0.0000,"publicationDate":"2015-09-21","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2015 17th International Symposium on Symbolic and Numeric Algorithms for Scientific Computing (SYNASC)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/SYNASC.2015.78","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0

Abstract

Software synthesis is a technique for automatically generating code from a given specification. The goal of software synthesis is to make software development easier while increasing both the productivity of the programmer and the correctness of the produced code. In this paper we present an approach to synthesis that relies on the use of automated reasoning and decision procedures. First we describe how to generalize decision procedures into predictable and complete synthesis procedures.Here completeness means that the procedure is guaranteed to find code that satisfies the given specification. We illustrate the process of turning a decision procedure into a synthesis procedure using linear integer arithmetic as an example.However, writing a complete specification can be a tedious task,sometimes even harder than writing the code itself. To over come this problem, ideally the user could provide a few input-output examples, and then the code should be automatically derived.We outline how to broaden usability and applications of current software synthesis techniques. We conclude with an outlook on possible future research directions and applications of synthesis procedures.
查看原文
分享 分享
微信好友 朋友圈 QQ好友 复制链接
本刊更多论文
从决策程序到综合程序
软件合成是一种根据给定规范自动生成代码的技术。软件合成的目标是使软件开发更容易,同时提高程序员的生产力和生成代码的正确性。在本文中,我们提出了一种依赖于使用自动推理和决策程序的合成方法。首先,我们描述了如何将决策过程概括为可预测的和完整的综合过程。在这里,完整性意味着过程能够保证找到满足给定规范的代码。以线性整数算法为例,说明了将决策过程转化为综合过程的过程。然而,编写完整的规范可能是一项乏味的任务,有时甚至比编写代码本身还要困难。为了克服这个问题,理想情况下,用户可以提供一些输入输出示例,然后代码应该自动派生。我们概述了如何扩大现有软件合成技术的可用性和应用。最后展望了今后可能的研究方向和合成方法的应用前景。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 去求助
来源期刊
自引率
0.00%
发文量
0
期刊最新文献
Incremental Reasoning on Strongly Distributed Multi-agent Systems Extensions over OpenCL for Latency Reduction and Critical Applications An Improved Upper-Bound Algorithm for Non-preemptive Task Scheduling Adaptations of the k-Means Algorithm to Community Detection in Parallel Environments Improving Malware Detection Response Time with Behavior-Based Statistical Analysis Techniques
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
已复制链接
已复制链接
快去分享给好友吧!
我知道了
×
扫码分享
扫码分享
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:604180095
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1