Пролог-модульные тесты для недетерминированных предикатов - PullRequest
0 голосов
/ 01 октября 2018

Я пытаюсь использовать Пролог-модульные тесты из http://www.swi -prolog.org / pldoc / doc_for? Object = section% 28% 27packages / plunit.html% 27% 29 Это дает примердля недетерминированных предикатов как

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:?

1 Ответ

0 голосов
/ 01 октября 2018

Вы хотите вместо:

test(member, set(X == [a,b,c])) :-
    member(X, [a,b,c,d]).
...