让我们假设有带有 dif/2 的 pure_2 Prolog 和没有 dif/2 的 pure_1 Prolog。我们能否意识到 值的 Peano apartness,即 Peano 数,不使用 dif/2?因此,假设我们在 pure_2 Prolog 中有这样的 Peano 分离度:
/* pure_2 Prolog */
neq(X, Y) :- dif(X, Y).
我们能否用更纯粹的定义替换 neq(X,Y),即来自不使用 dif/2 的 pure_1 Prolog?这样我们就有了一个终止 neq/2 谓词来决定 Peano 数的不等式?那么它的定义是什么?
/* pure_1 Prolog */
neq(X, Y) :- ??
最佳答案
使用来自 this comment 的 less
:
less(0, s(_)).
less(s(X), s(Y)) :- less(X, Y).
neq(X, Y) :- less(X, Y); less(Y, X).
关于prolog - Pure Prolog Peano Number Apartness,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65427391/