相关疑难解决方法(0)

Prolog - 红色切割和绿色切割之间的差异

我开始学习prolog,并希望让整个切割更加清晰.我已经读到"绿色切割不会改变程序的声明性含义,而红切不会".但是,程序的意义并不是真正纯粹的声明(仅仅是因为prolog实际上是为所有选项回溯).

这是一个例子:

p(1).
p(2) :- !.
p(3).
Run Code Online (Sandbox Code Playgroud)

据说这是绿色切割.但如果我运行这个:

p(X), X =:= 3.
Run Code Online (Sandbox Code Playgroud)

我会在没有剪辑的情况下获得"真实",并且在剪切时获得"假".所以,我错过了什么?

提前致谢.

prolog prolog-cut

15
推荐指数
1
解决办法
7638
查看次数

标签 统计

prolog ×1

prolog-cut ×1