Prolog预感关系

时间:2017-10-30 03:43:16

标签: prolog

我学习了prolog,我遇到了解决这个问题的问题:

我需要创建一个我称之为Relation(Variable,List of List)的方法

EX:

list(a,b) 
list(c,b)
list(c,h)

返回应该是包含变量Relation(c,X)

的所有列表
X= [[c,b],[c,h]]

提前感谢您的帮助

1 个答案:

答案 0 :(得分:0)

以下是问题的答案:

check(_,[],X). 
check(Var,[H|T],[H|X]):-member(Var,H),check(Var,T,X). 
check(Var,[_|T],X):-check(Var,T,X).  

只有我不确定如何使用setof / 3过程,因为我需要加载像这样的谓词

list(a,b)
list(b,c)
list(c,t)