Prolog - 最大谓词切割的解释?

时间:2015-10-11 01:07:14

标签: prolog

目前试图让我的头脑切入prolog。我正在阅读LPN书并通过实例进行处理。

剪辑的一​​个例子是:

max(X,Y,Z) :- X =< Y, !, Y = Z.
max(X,Y,X).

我很困惑为什么max(2,3,2)通过匹配第二条规则而无法返回true。尝试将Y与Z统一后,它失败了第一条规则,因为3 /= 2。但在第二条规则X = 2Y = 3中,它应匹配。我觉得自己错过了切割工作的方法,并且一直坐在这里绘制搜索树,试图弄清楚究竟发生了什么,但都无济于事。

如果有人能为我解释为什么max(2,3,2)无效,那会很棒。感谢。

0 个答案:

没有答案