在谓词逻辑中,为什么p(x(和p(f(x((没有unifier?我的一个解决方案是用f(x(代替x,但我不确定为什么我错了。
让我们看看如果用f(x)
:替换x
会发生什么
P(x)
变为P(f(x))
P(f(x))
变为P(f(f(x)))
结果不一样;所以它不是一个统一体。
一般来说,当差项涉及到它自己时(即x
不同于f(x)
(,你不能将它们统一起来,因为无论你用什么代替x
,都会以不相等的方式改变这两个项,假设它们一开始就不相等。
另一种思考方式是所谓的发生检查。由于x
出现在f(x)
中,您无法将这两个术语统一起来。您可以在此处阅读有关发生检查的信息:https://en.wikipedia.org/wiki/Occurs_check