Prolog附加/ 3
示例
append([], Bs, Bs). append([A|As], Bs, [A|Cs]) :- append(As, Bs, Cs).
append/3是最知名的Prolog关系之一。它定义了三个参数之间的关系和为真,如果在第三个参数是表示在第一和第二参数指定的列表的级联列表。
值得注意的是,和是典型的好Prolog的代码,append/3可以在使用几个方向:它可用于:
追加两个完全或部分实例化的列表:
?-A=[1,2,3],B=[4,5,6],append(A,B,Y)
Output:
A=[1,2,3],
B=[4,5,6],
Y=[1,2,3,4,5,6].
检查的关系是否是三个完全实例名单属实:
?-A=[1,2,3],B=[4,5],C=[1,2,3,4,5,6],append(A,B,C)
Output:
false
生成所有可能的方式,以两个列表追加到给定的列表:
?-append(A,B,[1,2,3,4]).
Output:
A=[],
B=[1,2,3,4];
A=[1],
B=[2,3,4];
A=[1,2],
B=[3,4];
A=[1,2,3],
B=[4];
A=[1,2,3,4],
B=[];
false.