Maude 条件排序重写理论的一致性检查工具解析
1. 引言
传统上,重写系统是一组有向方程,用于通过重复将给定公式的子项替换为相等项,直到得到(通常唯一的)最简单形式来计算值。这种对重写系统的解释赋予了它等式语义,也是通过重写执行函数式程序的一种方式。同时,重写对于指定非等式关系(如状态之间的转换)也很有用。重写逻辑建议将所有具有等式解释的规则作为一个特殊的等式集合 E,而将其余规则 R 视为定义模 E 的等价类上的状态转换步骤。
重写理论既有规则又有方程,重写是模这些方程进行的。例如,Maude 对系统模块中的重写理论有如下要求:
- 方程分为结构公理集合 A(存在匹配算法)和方程集合 E(模 A 是(地面)丘奇 - 罗斯性质且终止的)。对于某些方程 E,可以使用 Maude 终止工具(MTT)检查模 A 的终止性,使用丘奇 - 罗斯检查器检查丘奇 - 罗斯性质。
- 模块中的规则 R 与方程 E 模 A 是(地面)一致的。这意味着规则和方程之间可以填充适当的关键对,允许我们混合使用规则重写和方程重写,而不会因在方程推导步骤之前未能执行可能的重写而丢失规则计算的完整性。这样,仅使用 A 的匹配算法就能获得模 E ∪ A 重写的效果。Maude 解释器采用的策略是在应用 R 中的任何规则之前,始终使用 E 将项归约为规范形式。
因此,确定给定的丘奇 - 罗斯且终止的规范是否确实是地面一致的非常重要。现有的一致性检查方法存在诸多限制,如仅限于 AC 或自由情况、假设方程和规则都是无条件的、要求方程的左右两边都是线性的以及无类型等。我们需要处理更具表达力的规范,即广义重写理论 R = (Σ, E ∪ A, R, φ),它具有初始模型语义,方程 E 和规则 R 可
超级会员免费看
订阅专栏 解锁全文
2857

被折叠的 条评论
为什么被折叠?



