Arguments are not sufficiently instantiated
以下に示すように、私が書いた加算ルールによる乗算のエラーが発生し続けます。
mult(_, 0, 0). %base case for multiplying by 0
mult(X, 1, X). % another base case
mult(X, Y, Z) :-
Y > 1,
Y1 is Y - 1,
mult(X, Y1, Z1),
Z is X + Z1.
私は Prolog を初めて使用し、そのような単純な問題でさえ本当に苦労しています。
書籍やオンライン チュートリアルに関する推奨事項があれば、ぜひ参考にしてください。
Ubuntu Linux の SWI-Prolog で実行しています。