我正在尝试使用来自http://www.swi-prolog.org/pldoc/doc_for?object=section%28%27packages/plunit.html%27%29的 Prolog 单元测试 它给出了一个非确定性谓词的例子作为
test(member, all(X == [a,b,c])) :-
member(X, [a,b,c]).
我认为它只是测试列表 X == [a,b,c] 中的所有元素,测试它是否在列表 [a,b,c] 中。但是为什么会
test(member, all(X == [a,b,c])) :-
member(X, [a,b,c,d]).
报告wrong "all" answer:
?