这是我的简单 Prolog 程序:
friend(X,Y):-
knows(X,Y).
friend(X,Z):-
friend(X,Y),
friend(Y,Z).
knows(brian,tom).
knows(tom,peter).
如果我键入以下查询
friend(brian,peter).
Prolog 将给出以下输出:
?- friend(brian,peter).
true
如果再输入一个分号,Prolog 会说:
ERROR: Out of local stack
我在这里做错了什么?