Prolog gives error “undefined procedure” when trying to use :-
-
28-10-2019 - |
Question
I'm using SWI-Prolog on Windows and am getting the following error:
14 ?- parent(X, Y) :- child(Y, X).
ERROR: toplevel: Undefined procedure: (:-)/2 (DWIM could not correct)
I'm not entirely sure what's going on, as this worked last week and I am just starting to learn Prolog.
Solution
The FAQ says it all: http://www.swi-prolog.org/FAQ/ToplevelMode.html
You need to create a file and write your program with rules there. The top level command line will only allow you to issue queries.
OTHER TIPS
You can try it this way
1 ?- assert(a(A,B):-A=B).
true.
2 ?- a(B,c).
B = c.
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow