6、函数逻辑程序的修正:混合方法与实践

函数逻辑程序的修正:混合方法与实践

1. 引言

在函数逻辑编程领域,开发先进的调试和修正工具至关重要。尽管当前已有辅助程序设计、开发和调试的现代环境,但缺乏将调试与程序综合集成到统一框架的理论基础。本文旨在提出一种新方法,用于自动合成正确的函数逻辑程序,将调试和合成有效结合,以提高编程效率。

此前已提出一种通用诊断方法,可对急切求值(按值调用)和惰性求值(按名调用)的集成语言进行诊断。该方法基于连续的直接后果运算符,通过与程序关联的单一步骤检查程序相对于预期规范的正确性。预期规范可以有多种表达方式,如另一个函数逻辑程序、断言语言或方程集。

本文提出的方法基于抽象解释,构建过近似和欠近似规范 (I^+) 和 (I^-),通过简单的静态测试确定程序子句是否有误。调试系统 Buggy 是该方法的实验性实现,允许用户通过函数逻辑程序指定具体语义。此外,还提出了一种基于示例引导展开的初步修正算法,但该纯演绎学习器在原错误程序过度特化时无法应用。因此,本文开发了一种新的程序修正器,结合了自上而下和自下而上的合成技术。

2. 预备知识
  • 重写系统和函数逻辑编程 :为简化定义,考虑单排序情况,可轻松扩展到多排序签名。(V) 表示可数无限的变量集,(\Sigma) 表示具有固定元数的函数符号集。(\tau(\Sigma \cup V)) 和 (\tau(\Sigma)) 分别表示非基词(或项)代数和基于 (\Sigma \cup V) 和 (\Sigma) 构建的词代数。(\tau(\Sigma)) 通常称为 Herbrand 全域 (H_{\Sigma}),记为 (H),(B) 表示 Herbrand
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值