我对以下两个列表的区别感到困惑:
K = [1,2,3 | X].
和
K = [1,2,3,X].
Bratko 书中的问题实际上是在conc
.
浓度定义为:
conc([], L, L).
conc([X|L1], L2, [X|L3]) :- conc(L1, L2, L3).
现在的实际问题是
conc([1,2,3], [X], L2).
L2 与查询中的 K 相同的列表 K = [1,2,3|X].
我不认为 L2 和 K 是相同的,但我不太确定如何解释它。L2 是两个列表的串联。K 是我不确定的东西与可以由列表填充的变量 X 的串联......
仍在学习 Prolog,如果这是一个“愚蠢”的问题,请原谅我。