web-dev-qa-db-ja.com

使用しようとすると、Prologは「未定義の手順」というエラーを出します:-

WindowsでSWI-Prologを使用していますが、次のエラーが発生します。

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

これは先週うまくいき、Prologを学び始めたばかりなので、何が起こっているのか完全にはわかりません。

13
Ross

FAQすべてを言います: http://www.swi-prolog.org/FAQ/ToplevelMode.html

ファイルを作成し、そこにルールを使用してプログラムを作成する必要があります。トップレベルのコマンドラインでは、クエリの発行のみが許可されます。

20
horsh

あなたはそれをこのように試すことができます

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

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