如何在prolog中使用前缀列表

时间:2015-05-16 07:56:11

标签: prolog

我试着理解这段代码是如何工作的,但我不能。

prefix(P,L) :- append(P,_,L).

我使用prefix(X,[a,b,c,d]).这样的查询如果你有时间,可以向我解释它是如何运作的吗?谢谢。

1 个答案:

答案 0 :(得分:2)

查看append,您可以看到

  当列表L3是将列表L1和L2连接在一起的结果时,

追加(L1,L2,L3)将成立(连接意味着将列表连接在一起,端到端)

所以上面的谓词说某事物是prefix的东西,如果你可以将任何(即_)附加到前者并获得后者。

很有道理,不是吗? Prolog很不错。