Пролог выдает ошибку «неопределенная процедура» при попытке использовать: - - PullRequest
13 голосов
/ 23 марта 2011

Я использую SWI-Prolog для Windows и получаю следующую ошибку:

14 ?- parent(X, Y) :- child(Y, X).
ERROR: toplevel: Undefined procedure: (:-)/2 (DWIM could not correct)

Я не совсем уверен, что происходит, так как это сработало на прошлой неделе, и я только начинаю учитьсяПролог.

Ответы [ 2 ]

20 голосов
/ 23 марта 2011

В FAQ все сказано: http://www.swi -prolog.org / FAQ / ToplevelMode.html

Вам нужно создать файл и написать там свою программу с правилами. Командная строка верхнего уровня позволяет только выдавать запросы.

6 голосов
/ 24 марта 2011

Вы можете попробовать это так

1 ?- assert(a(A,B):-A=B).
true.

2 ?- a(B,c).
B = c.
...