【24h】

Comfusy: A Tool for Complete Functional Synthesis (Tool Presentation)

机译:Comfusy:完整功能综合的工具(工具演示)

获取原文
获取外文期刊封面目录资料

摘要

Synthesis of program fragments from specifications can make programs easier to write and easier to reason about. We present Comfusy, a tool that extends the compiler for the general-purpose programming language Scala with (non-reactive) functional synthesis over unbounded domains. Comfusy accepts expressions with input and output variables specifying relations on integers and sets. Comfusy symbolically computes the precise domain for the given relation and generates the function from inputs to outputs. The outputs are guaranteed to satisfy the relation whenever the inputs belong to the relation domain. The core of our synthesis algorithm is an extension of quantifier elimination that generates programs to compute witnesses for eliminated variables. We present examples that demonstrate software synthesis using Comfusy and illustrate how synthesis simplifies software development.
机译:根据规范对程序片段进行综合可以使程序更易于编写和推理。我们介绍了Comfusy,它是一种工具,它扩展了通用编程语言Scala的编译器,并在无界域上进行了(非反应式)功能综合。 Comfusy接受带有输入和输出变量的表达式,这些表达式指定了整数和集合之间的关系。 Comfusy象征性地计算给定关系的精确域,并生成从输入到输出的函数。只要输入属于关系域,就保证输出满足关系。我们的综合算法的核心是量词消除的扩展,它生成了程序来计算消除变量的见证。我们提供了一些示例,这些示例演示了使用Comfusy进行软件合成的过程,并说明了合成如何简化软件开发。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号