打开/关闭菜单
打开/关闭外观设置菜单
打开/关闭个人菜单
未登录
未登录用户的IP地址会在进行任意编辑后公开展示。

Kirby-Paris Hydra:修订间差异

来自Googology Wiki
GaoKao留言 | 贡献
创建页面,内容为“'''Kirby-Paris Hydra(KP-Hydra)''' 是在一棵树上进行的单人游戏,需要很长时间才能终止。由此游戏导出的函数<math>\rm{Hydra(n)}</math>的增长率超过了皮亚诺公理体系可证明停机的一切递归函数。它与Beklemishev's worm密切相关。 == 规则 == KP-Hydra 游戏的规则如下: * 游戏从一棵有根树T开始; * 第n回合,选择T的一个叶子节点a,设a的父节点为b…”
 
GaoKao留言 | 贡献
无编辑摘要
第1行: 第1行:
'''Kirby-Paris Hydra(KP-Hydra)''' 是在一棵树上进行的单人游戏,需要很长时间才能终止。由此游戏导出的函数<math>\rm{Hydra(n)}</math>的增长率超过了[[皮亚诺公理体系]]可证明停机的一切递归函数。它与[[Beklemishev's Worm|Beklemishev's worm]]密切相关。
'''Kirby-Paris Hydra(KP-Hydra)''' 是在一棵树上进行的单人游戏,需要很长时间才能终止<ref>Kirby, L.; Paris, J. (1982), "Accessible independence results for Peano arithmetic", ''Bulletin of the London Mathematical Society'' '''14''': 285–293.</ref>。由此游戏导出的函数<math>\rm{Hydra(n)}</math>的增长率超过了[[皮亚诺公理体系]]可证明停机的一切递归函数。它与[[Beklemishev's Worm|Beklemishev's worm]]密切相关。


== 规则 ==
== 规则 ==
第8行: 第8行:
*# 删除a;
*# 删除a;
*# 若b不是根节点,取以b为根的子树T',将其复制n次,连接到b的父节点上。
*# 若b不是根节点,取以b为根的子树T',将其复制n次,连接到b的父节点上。
* 如果某步操作后只剩下根节点,游戏结束。
*如果某步操作后只剩下根节点,游戏结束。


我们可以用括号表示树:每一对括号表示一个节点,最外层的括号表示根节点,每个括号内层的括号表示它的子节点。
我们可以用括号表示树:每一对括号表示一个节点,最外层的括号表示根节点,每个括号内层的括号表示它的子节点。
第23行: 第23行:
其证明概要如下:
其证明概要如下:


我们给每一个非空树对应一个序数:
我们给每个非空树对应一个序数:


* 只含根节点的树<math>()</math>对应0;
* 只含根节点的树<math>()</math>对应0;
* 若树<math>T_1,T_2,\cdots,T_n</math>分别对应序数<math>H_1,H_2,\cdots,H_n</math>,则<math>(T_1T_2\cdots T_n)</math>对应<math>\omega^{H_1}+\omega^{H_2}+\cdots+\omega^{H_n}</math>。
* 若树<math>T_1,T_2,\cdots,T_n</math>分别对应序数<math>H_1,H_2,\cdots,H_n</math>(通过重新排列,不妨设<math>H_1\ge H_2\ge\cdots\ge H_n</math>),则<math>(T_1T_2\cdots T_n)</math>对应<math>\omega^{H_1}+\omega^{H_2}+\cdots+\omega^{H_n}</math>;
* 例如,<math>(((()))(()()()))
=\omega^{\omega^{\omega^0}}+\omega^{\omega^0+\omega^0+\omega^0}
=\omega^\omega+\omega^3</math>。
对树的深度归纳可知,每棵树对应的序数都小于<math>\varepsilon_0</math>。
 
设初始的树为<math>T</math>。我们证明:砍树操作后,树对应的序数严格减小。
 
* 若选取节点的父节点为根节点,则<math>T=(T_1())</math>,其对应的序数形如<math>H+1</math>,砍树操作后变为<math>H</math>,严格减小;
* 否则,设其父节点所在的子树为<math>(T_1(T_3{\color{red}()})T_2)</math>,其对应序数<math>H_1+\omega^{H_3+1}+H_2</math>。进行砍树操作后,该子树变为<math>(T_1(T_3)(T_3)\cdots(T_3)T_2)</math>,对应序数<math>H_1+\omega^{H_3}(n+1)+H_2</math>,严格减小。
 
假设游戏从<math>T</math>开始可以无限地进行下去,我们可以得到一系列树<math>T_1,T_2,\cdots</math>,它们对应的序数满足<math>\varepsilon_0>H_1>H_2>\cdots</math>,这与<math>\varepsilon_0</math>的良序性矛盾。故游戏总会在有限步内终止。
 
== Hydra 函数<ref>[https://googology.fandom.com/wiki/Kirby-Paris_hydra Kirby-Paris hydra | Googology Wiki | Fandom]</ref> ==
我们用<math>\rm{Hydra(n)}</math>表示以下特殊的 KP-Hydra 游戏终止所需要的步数:
 
* 初始树为含<math>n</math>个节点的链,即形如<math>((\cdots()\cdots))</math>的树;
* 每次操作总选取最右边的节点。
 
下面列出<math>n</math>较小时<math>\rm{Hydra(n)}</math>的值:
 
<math>\rm{Hydra(0)}=0</math>
 
<math>\rm{Hydra(1)}=1</math>


<math>\rm{Hydra(2)}=3</math>


例如,<math>(((()))(()()()))
<math>\rm{Hydra(3)}=37</math>
=\omega^{\omega^{\omega^0}}+\omega^{\omega^0+\omega^0+\omega^0}
 
=\omega^\omega+\omega^3</math>
<math>{\rm Hydra(4)}>f_{\omega 2+4}(5)</math>,其中<math>f</math>为[[增长层级#快速增长层级|快速增长层级]];
 
<math>{\rm Hydra(5)}>f_{\omega^{\omega 2+4}}(5)</math>


我们证明:砍树操作后,树对应的序数严格减小。
一般地,记<math>\alpha_n=\omega^{\omega^{\cdots^{\omega 2+4}}}</math>,其中有<math>n-3</math>个<math>\omega</math>,则<math>f_\alpha(5)<{\rm Hydra(n)}<f_\alpha(6)</math>。因此,<math>{\rm Hydra(n)}</math>的增长率为<math>\varepsilon_0</math>。

2025年7月6日 (日) 22:53的版本

Kirby-Paris Hydra(KP-Hydra) 是在一棵树上进行的单人游戏,需要很长时间才能终止[1]。由此游戏导出的函数Hydra(n)的增长率超过了皮亚诺公理体系可证明停机的一切递归函数。它与Beklemishev's worm密切相关。

规则

KP-Hydra 游戏的规则如下:

  • 游戏从一棵有根树T开始;
  • 第n回合,选择T的一个叶子节点a,设a的父节点为b,依次执行以下操作(称为一次砍树):
    1. 删除a;
    2. 若b不是根节点,取以b为根的子树T',将其复制n次,连接到b的父节点上。
  • 如果某步操作后只剩下根节点,游戏结束。

我们可以用括号表示树:每一对括号表示一个节点,最外层的括号表示根节点,每个括号内层的括号表示它的子节点。

例如:设n=3,考虑这样的一棵树(((()))(()()()))

将红色的括号删除后,树的变化如下:(((()))(()()()))(((()))(()()))(((()))(()())(()())(()())(()()))

停机性证明

Kirby 和 Paris 证明了以下定理:无论初始的树T怎样选取,KP-Hydra 游戏总会在有限步内终止。

其证明概要如下:

我们给每个非空树对应一个序数:

  • 只含根节点的树()对应0;
  • 若树T1,T2,,Tn分别对应序数H1,H2,,Hn(通过重新排列,不妨设H1H2Hn),则(T1T2Tn)对应ωH1+ωH2++ωHn
  • 例如,(((()))(()()()))=ωωω0+ωω0+ω0+ω0=ωω+ω3

对树的深度归纳可知,每棵树对应的序数都小于ε0

设初始的树为T。我们证明:砍树操作后,树对应的序数严格减小。

  • 若选取节点的父节点为根节点,则T=(T1()),其对应的序数形如H+1,砍树操作后变为H,严格减小;
  • 否则,设其父节点所在的子树为(T1(T3())T2),其对应序数H1+ωH3+1+H2。进行砍树操作后,该子树变为(T1(T3)(T3)(T3)T2),对应序数H1+ωH3(n+1)+H2,严格减小。

假设游戏从T开始可以无限地进行下去,我们可以得到一系列树T1,T2,,它们对应的序数满足ε0>H1>H2>,这与ε0的良序性矛盾。故游戏总会在有限步内终止。

Hydra 函数[2]

我们用Hydra(n)表示以下特殊的 KP-Hydra 游戏终止所需要的步数:

  • 初始树为含n个节点的链,即形如((()))的树;
  • 每次操作总选取最右边的节点。

下面列出n较小时Hydra(n)的值:

Hydra(0)=0

Hydra(1)=1

Hydra(2)=3

Hydra(3)=37

Hydra(4)>fω2+4(5),其中f快速增长层级

Hydra(5)>fωω2+4(5)

一般地,记αn=ωωω2+4,其中有n3ω,则fα(5)<Hydra(n)<fα(6)。因此,Hydra(n)的增长率为ε0

  1. Kirby, L.; Paris, J. (1982), "Accessible independence results for Peano arithmetic", Bulletin of the London Mathematical Society 14: 285–293.
  2. Kirby-Paris hydra | Googology Wiki | Fandom