私は機能を持っています
test(X, Y, Z) :-
{ Z = Y+X },!.
クエリを実行すると
test(1,X,8), test(X,4,8), test(1,5,X)
X の値を取得できますが、そうすると
test(X, Y, Z) :-
{ Z = Y**X },!.
次のようなクエリごとにエラーが発生します
未処理の例外: 不明なメッセージ: type_error(nf(_G353**1,_G351),1,数値式,_G353**1)
私は他の演算子を試してみましたが、それらはすべて機能します。** は特別だと思いますが、正確にはどのように処理すればよいのでしょうか?