1

Prolog の学習を開始し、RIPTutorial PDF に従っています。Constraint Logic Programming CLP(Q)セクションでは、次のように述べています。

Constraint Logic Programming CLP(Q) は有理数の推論を実装します

例:

?- { 5/6 = X/2 + 1/3 }.
X = 1.

WindowsのSWI-Prologでこの行を試したところ、次のようになりました。

ERROR: Unknown procedure: {}/1 (DWIM could not correct goal)

macOS のコマンドライン SWI-Prolog-7.2.0 で同じ行を実行すると、次のようになります。

ERROR: toplevel: Undefined procedure: {}/1 (DWIM could not correct goal)

の期待される出力を取得する方法はX = 1.?

4

1 に答える 1

3

SWI-Prologを使用します。

コメントに記載されているように、最初にCLP(Q)のコードをロードする必要があります。

?- use_module(library(clpq)).
true

次に、例のようにクエリを入力します。

?- {5/6 = X/2 + 1/3}.
X = 1.
于 2021-07-25T09:55:08.523 に答える