我目前有一个关系定义为:
relation2(relation(['Course', 'Prof', 'Local'],
[['COMP232', 'Tim W.', 'H6010'],
['COMP248', 'Louise L.', 'H5605'],
['COMP348', 'Mohamed T.', 'H7610']])).
我还有一个功能:
member(X, [X|_]).
member(X, [_|Rest]) :- member(X, Rest).
我如何能够在成员函数中使用关系 2 中的列表。所以,使用列表:
[['Course', 'Prof', 'Local'], [...] ]
我的目标是在关系中使用列表并验证列表中的第一个元素(让我们将其命名为 header = ['Course', 'Prof', 'Local'])是否是该列表的成员。所以,
?- member('Name', [header]).
会返回真。
编辑:
我似乎能够得到我的标题,
?- relation2(relation(X,_)).
X = ['Course', 'Prof', 'Local'].
但是如果我使用
?- member('Course',relation2(relation(X,_))).
false.
为什么??