我想在miniKaren中运行一个完全声明性的mtak,在Prolog中的内容如下:
fun(X, Y, Z, A) :-
X =< Y, !,
Z = A.
fun(X, Y, Z, A) :-
X1 is X-1,
fun(X1, Y, Z, A1),
Y1 is Y-1,
fun(Y1, Z, X, A2),
Z1 is Z-1,
fun(Z1, X, Y, A3),
fun(A1, A2, A3, A).
但以上内容有所削减。该解决方案不应使用任何剪切方式,并且该解决方案应具有逻辑变量和一些数字库,以便可以向后运行。