是否可以在Prolog中使用惰性列表?类似于以下内容:
ones([1 | Y]) :- ones(Y).
Run Code Online (Sandbox Code Playgroud)
虽然这显然不起作用.
我对统一的理解有点不完整.我理解基本的统一,但是我遇到了一些问题,但是我的问题并非一致.
我正在观看关于统一的youtube教程,该教程说明如果变量试图与包含该变量的术语进行统一,那么它就不是统一的.
然而,当我输入?- f(X) = Xprolog时,它返回的内容符合......f(f(f(f(f(f(...)))))) ?
我明白为什么会这样......但是我不明白这是否意味着它是不可统一的,正如我所预料的那样,如果它不是可以统一的话,它就会返回'不'.我是否正确地认为尝试统一f(X)= X会失败发生检查,从而使它们不能统一?