基本递归函数的类别是否与Fetus证明终止的函数的类别等效?
如果您还没有听说过Foetus,可以在这里继续阅读。它使用“调用矩阵”和“调用图”系统查找函数中所有递归调用的“递归行为”。为了表明函数终止,它表明对函数进行的递归调用的所有递归行为都遵循一定的“字典顺序”。它的终止检查器允许所有原始递归函数以及诸如Ackermann函数之类的函数。基本上,它允许多参数原始递归。这基本上也是Agda的终止检查器;我相信Coq也有一些类似的功能,尽管也许更通用。 通过阅读DA Turner的论文“ Total Functional Programming”。他解释说,他提出的语言将能够表达Godel研究的System T中看到的所有“原始递归功能”。他继续说,该系统“已知包括每个递归函数,其整体可以通过一阶逻辑证明”。 胎儿剂量允许所有原始递归功能吗?如果可以,那么是否允许不是原始递归函数的函数?可以提供答案吗?(因为我只是感兴趣,所以这实际上不是必需的;只是一些阅读有关此事的婚姻会很好) 额外的问题:基本递归函数在组合器方面有一个非常简洁的定义:类型S和K(不能表示定点组合器),零,后继函数和迭代函数;而已。还有其他更通用的语言,它们的定义如此简洁,并且所有表达式都以这些语言终止吗?