Prolog在尝试使用时给出错误“未定义的过程”: -

时间:2011-03-23 10:56:33

标签: prolog prolog-toplevel

我在Windows上使用SWI-Prolog并收到以下错误:

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

我不完全确定发生了什么事,因为这在上周有效,我刚刚开始学习Prolog。

2 个答案:

答案 0 :(得分:20)

常见问题解答说明了一切:http://www.swi-prolog.org/FAQ/ToplevelMode.html

您需要创建一个文件并在那里编写带有规则的程序。 顶级命令行只允许您发出查询。

答案 1 :(得分:6)

你可以这样试试

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

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