Tennenbaum's theorem states that the only countable model of Peano arithmetic (PA) with computable arithmetical operations is the standard model of natural numbers. In this paper, we use constructive type theory as a framework to revisit, analyze and generalize this result. The chosen framework allows for a synthetic approach to computability theory, exploiting that, externally, all functions definable in constructive type theory can be shown computable. We then build on this viewpoint, and furthermore internalize it by assuming a version of Church's thesis, which expresses that any function on natural numbers is representable by a formula in PA. This assumption provides for a conveniently abstract setup to carry out rigorous computability arguments, even in the theorem's mechanization. Concretely, we constructivize several classical proofs and present one inherently constructive rendering of Tennenbaum's theorem, all following arguments from the literature. Concerning the classical proofs in particular, the constructive setting allows us to highlight differences in their assumptions and conclusions which are not visible classically. All versions are accompanied by a unified mechanization in the Coq proof assistant.
翻译:Tennenbaum定理指出,具有可计算算术运算的皮亚诺算术(PA)的唯一可数模型是自然数的标准模型。本文以构造类型理论为框架,重新审视、分析并推广了这一结论。所选框架支持对可计算性理论采用综合方法,利用外部性质,即构造类型理论中所有可定义的函数均可证明为可计算的。我们在此基础上进一步内化这一观点,通过假设Church论题的一个版本——该论题断言自然数上的任何函数都可由PA中的公式表示——来构建一个方便抽象的环境,从而即使在定理的机械化过程中也能进行严格的可计算性论证。具体而言,我们将若干经典证明构造化,并提出一种构造论意义上本真的Tennenbaum定理表述,所有论证均源自文献。尤其针对经典证明,构造性框架能够凸显出其在经典视角下不可见的假设与结论差异。所有版本均附带Coq证明助手中的统一机械化实现。