7、函数逻辑程序的纠错策略与实现

函数逻辑程序的纠错策略与实现

1. 示例集的生成

在对函数逻辑程序进行纠错时,首先要生成正例集和反例集。考虑缩减程序 $R^-$,由于它去除了错误规则,所以已经部分正确,但可能存在不完整的情况,即有些在规范 $I$ 中能覆盖的方程,在 $R^-$ 中无法覆盖。

通过应用特定的诊断方法,可以找出相对于预期语义抽象的未覆盖方程集 $E_1$ 和错误方程集 $E_2$。$E_1$ 中的方程可作为正例,代表程序 $R$ 应实现但缺失的证明;$E_2$ 中的方程则可作为反例,模拟错误行为。

由于 $E_1$ 和 $E_2$ 可能包含非基方程,为了进行基于项重写的标准优化,需要对它们进行实例化,得到基正例集 $E^+$ 和基反例集 $E^-$。同时,为了使归纳过程独立于规范 $I$ 中的额外辅助函数,只考虑形式为 $l = d$ 的基示例,其中 $l$ 是模式,$d$ 是构造项。为此,需要对实例化示例的右部项进行归一化处理,并忽略归一化后右部不是构造项的示例。

2. 特化算子
  • 展开操作 :展开程序 $R$ 相对于规则 $r$,会得到一个新的特化版本,其中规则 $r$ 被通过对 $r$ 的右部或条件部分进行缩小步骤得到的新规则所替换。
    • 定义 3(展开) :设 $R$ 是一个条件项重写系统(CTRS),$r \equiv (\lambda \to \rho \Leftarrow C) \in R$ 是一条规则。设 ${g_{\theta_i;\phi} (C’ i, \rho’_i = y)} {i = 1}^
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值