假设我们有以下谓词(这是Prolog中编程的一个例子):
[F0] isInteger(0).
[F1] isInteger(X):- isInteger(Y), X is Y+1.
Run Code Online (Sandbox Code Playgroud)
查询的第一个结果是Integer(R),标记位于F0,并返回R = 0
如果用户按下; ,标记放在F1,我们移动到subgoal(isInteger(Y),满足F0)和R = 1.
我理解上面的内容.现在我的问题是:
我正在寻找任何解释存在递归的回溯的教程,希望能够帮助我理解堆栈内容的图像.
提前谢谢Suzanne