古德斯坦定理

古德斯坦定理是数理逻辑中的一个关于自然数的叙述，是在 1944 年由鲁本·古德斯坦所证明。其主要是在说明「古德斯坦序列」最终会结束于 0 。柯比和柏丽斯 证明它在皮亚诺算术中是不可证明的（但它可以在一个更强的系统如二阶算术中被证明）。这是继哥德尔不完备定理构造的命题（）和 1943 年格哈德·根岑直接证明皮亚诺算术中 ε0-induction 不可被证明之后，第三个（对自然数为真的）命题被证明在皮亚诺算术中不可证明。之后的例子是柏丽斯–哈灵顿定理。
劳伦斯·柯比和杰夫·柏丽斯介绍了一个图论中的九头蛇游戏，其行为类似古德斯坦序列：「九头蛇」是一棵有根的树，而序列每一步是砍掉它的一颗头（即树的分支），然后九头蛇则对应地会依据某些规则来增加有限数量的头。柯比和柏丽斯则证明，不管赫拉克勒斯使用何种策略来砍头，九头蛇最终会被斩杀（尽管这个过程可能会非常漫长）。如古德斯坦序列，柯比和柏丽斯证明其在皮亚诺算术中是不可证明的。

**以n为基底的瓜瓞式基底表示法**
古德斯坦序列是由一种「以n为基底的瓜瓞式表示法」的概念来定义的。这个表示法与平常的 n 进位制表示法很像，但一般的进位表示法无法达到古德斯坦定理的目的。在原本的 n 进位表示法，n 是一个大于 1 的自然数，而任一个自然数 m 则被改写为一些由 n 的幂次的乘积的相加之和：

其中，每个系数 ai 满足0 ≤ ai k ≠ 0。如在 2 进位中，

所以， 35 的二进位是 100011（25 + 2 + 1）。类似地，由 3 进位表示的 100 是 10201:

然而需注意的是，这些指数仍非是基于 n 的表述法。如上述表示式中的 25 和 34 。
将一个 n 进位表示转换为瓜瓞式n基底表示法，首先要将每个指数改为 n 基底表示法。然后改写指数中的指数，持续这个动作直到每个数都被改为以 n 为基底表示法。
譬如， 2 进位的 35 为 100011 ，将它改写成以 n 为基底的瓜瓞式表示法为：

(1=5 = 22 + 1.) 。类似的，以3为基底的瓜瓞式表示法的 100 为


**古德斯坦序列**
古德斯坦序列 G(m) 是一个自然数的序列。第一项为 m 本身。第二项则是先将 m 以 2 为基底得出其的瓜瓞式表示法，再将所有的 2 改为 3，再减去 1。更一般地，第 (n + 1) 项的 G(m)(n + 1) 为：- 将 G(m)(n) 转为以 n + 1 为基底的瓜瓞式表示法。- 将所有的 n + 1 改为 n + 2 。- 减 1。- 重复这个过程，直到结果为 0 则停止。
前几个古德斯坦序列会很快地终止，如 G(3) 结束于第 6 步：
之后的古德斯坦序列则成长到很庞大的数字，如 G(4) id=A056193 开始如下：
G(4) 会一直递增，直到基底为  时，会达到最大值  ，并在这里停留  步后，然后开始递减。
这个序列到达 0 时，当时的基底为 。（有趣的是，这是个胡道尔数：。而且，对于所有起始值大于 4 的数，都是如此。date=October 2009）
不过，G(4) 仍无法很好地展示古德斯坦序列的项数是如何快速地成长。G(19) 成长更迅速，其开头几项如下：
尽管其成长如此迅速，古德斯坦定理说明了无论起始值为何，每个古德斯坦最终会终止于 0。

**证明**
古德斯坦定理的证明（需要使用皮亚诺算术以外的技巧）如下：
对于每个给定的古德斯坦序列 G(m) ，我们可以建造一个由序数所组成的平行序列 P(m) ，而且是严格递减和终止。所以G(m) 也必将停止，并且它只在达到 0 时才会终止。
对这个证明的常见的误解在于认 G(m) 达到 0 是「因为」它被 P(m) 所支配。事实是，P(m) 对支配 G(m) 毫无作用。其重点在于： G(m)(k) 存在当且仅当 P(m)(k) 存在。于是，如果 P(m) 终止，则 G(m) 也如此。而 G(m) 只有在到逹 0 时才会终止。
我们可以定义函数 f(x)，将 x 改为以k为基底的表示法，并将每个 k 换成第一个无穷序数 ω。
而序列 P(m) 中的每一项 P(m)(n) 则定义为 f(G(m)(n),n+1)。譬如，1=G(3)(1) = 3 = 21 + 20 和 1=P(3)(1) = f(21 + 20,2) = ω1 + ω0 = ω + 1 。序数的加法、乘法和指数都是良好定义的。
我们可声明  。在古德斯坦序列中，将 G(m)(n) 改换基底后，将其记为  。明显的， ，现在我们套用 -1 运算后，因为 ，所以 。
譬如，  乃 ，所以  和  是严格变小。需注意的是，若要计算 f(G(m)(n),n+1) ，我们要先将 G(m)(n) 改为以 n+1 为基底的表示法。所以如  等的表示式，既不会是无意义的也非等同  。
P(m) 是严格递减的。而标准排序运算元 1, b2, b3, … 为任意整数列，然后让第 n+1 项的 G(m)(n+1) 变成：
将 G(m)(n) 改为 bn 的表示法，将 bn 改为 bn+1 再减 1 。
我们仍可断言这个序列仍会终止。
扩展的证明则将 1 = P(m)(n) = f(G(m)(n), n) 定义为如下：
将 G(m)(n) 改为 bn 表示法，再将所有的 bn 改为第一个无限序数 ω。
古德斯坦序列中，从G(m)(n)到G(m)(n+1)的换底运算并不会改变 f 的值。
譬如，如果 1=bn = 4 且 1=bn+1 = 9，
则
。因此，序数  是
严格大于序数 。

**起始点为变量的序列长度函数**
古德斯坦函数  定义为由 n 为起始值的古德斯坦序列的长度。因为古德斯坦序列会终止，所以这是一个完全函数。要测定  的快速成长，可由多种借由标准基于序数体系中的函数，如Hardy hierarchy 中的  函数，和 Löb and Wainer 的  高成长体系  函数。- Kirby and Paris (1982) 证明
 有着和  近似的成长速度（等同于 ）; 更精确地说，对每个 ， 控制 ，且  控制 。
(对两个函数 ，我们说  控制  是指，如果对于所有足够大的  ，都有 。）- Cichon (1983) 证明

其中  是将 n 改为以 2 为基底的瓜瓞式表示法，并将所有 2 改为 ω 的结果（即古德斯坦定理的证明中所做的事）。- Caicedo (2007) 证明如果  且有  then
.
一些例子如下：
（对于阿克曼函数和葛立恒数的界限，请参考高成长体系。）

**可计算函数的应用**
古德斯坦定理可用于构造一个全可计算函数，但皮亚诺算术却不能证明它是全函数。图灵机可以有效地列举古德斯坦序列；所以存在一个特殊的图灵机来计算古德斯坦函数。这个图灵机只需列举出 n 的古德斯坦序列，并在遇到 0 时结束，并传回其长度。因为每个古德斯坦序列终将结束，所以这个函数是完全的。但因为皮亚诺算术不能证明古德斯坦序列会终止，皮亚诺算术不能证明这个图灵机计算了一个完全函数。

**另见**
 Non-standard model of arithmetic- 高成长体系- Paris–Harrington theorem- Kanamori–McAloon theorem- Kruskal's tree theorem

**参考资料**

**Bibliography**
 Citation |last=Goodstein |first=R. |authorlink=Reuben Goodstein |jstor=2268019 |title= On the restricted ordinal theorem |journal=Journal of Symbolic Logic |volume=9 |issue=2 |year=1944 |pages=33–41 |doi=10.2307/2268019.- doi=10.2307/2043364.- dead-url=no .

**外部连结**
 Goodstein Sequence- Some elements of a proof that Goodstein's theorem is not a theorem of PA, from an undergraduate thesis by Justin T Millerdate=20110521132707 -   A Classification of non standard models of Peano Arithmetic by Goodstein's theorem - Thesis by Dan Kaplan, Franklan and Marshall College Library- Definitions of Goodstein sequences in the programming languages Ruby and Haskell, as well as a large-scale plot date=20201106232517 -  The Hydra game implemented as a Java applet date=20210216221621 -  Javascript implementation of a variant of the Hydra game date=20200127192338 -  Goodstein Sequences: The Power of a Detour via Infinitydate=20120521004508  - 对古德斯坦序列和九头蛇游戏有很好的解译。