基于解释和排序的合流性反证方法
1. 非可合性自动化检查
可以利用线性多项式解释来自动化非可合性检查。具体操作如下:
- 选取整数集作为承载集。
- 对于每个 $n$ 元函数符号 $f \in F$,令 $f^A(x_1, \ldots, x_n) = a_{f,0} + a_{f,1}x_1 + \cdots + a_{f,n}x_n$,其中 $a_{f,0}, \ldots, a_{f,n}$ 从有限整数范围内选取。
- 将相关推论的准则编码为约束求解问题,为每个 $a_{f,i}$($f \in F$,$0 \leq i \leq \text{arity}(f)$)分配合适的值。
以下是两个利用推论证明非合流性的例子:
- 例 8 :
- 给定重写系统 $R$:
plaintext R = { (1) a → h(c), (2) a → h(f(c)), (3) h(x) → h(h(x)), (4) f(x) → f(g(x)) }
- 令 $s = h(c)$,$t = h(f(c))$。因为 $a \in (\stackrel{ }{\to})[s] \cap (\stackrel{ }{\to})[t]$,所以只需证明 $NJ(s, t)$ 即可反证 $R$ 的合流性。
- 选取 $F$-代数 $A = \langle {0, 1}, \langle f^A \rangle_{f \in F} \rangle$,其中 $a^A = c^A = 0$,$f^A(n) = 1 - n$,$h^A(n) = g^A(n) =
基于解释与排序的合流性反证法
超级会员免费看
订阅专栏 解锁全文
24

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



