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

燃烧数:修订间差异

来自Googology Wiki
Zhy137036留言 | 贡献
无编辑摘要
Z留言 | 贡献
无编辑摘要
 
(未显示2个用户的6个中间版本)
第16行: 第16行:


* 在开始的时候(时刻为 <math>0</math>)点燃若干末端.
* 在开始的时候(时刻为 <math>0</math>)点燃若干末端.
* 在一根绳子燃尽时点燃若干末端.
*在一根绳子燃尽时点燃若干末端.


并有规定:若有绳子在 <math>t</math> 时刻燃尽,则 <math>t</math> 是燃烧数.
并有规定:若有绳子在 <math>t</math> 时刻燃尽,则 <math>t</math> 是燃烧数.
第27行: 第27行:
* 若 <math>a</math> 是燃烧数,则 <math>a+1</math> 是燃烧数.
* 若 <math>a</math> 是燃烧数,则 <math>a+1</math> 是燃烧数.
* 若 <math>a,b</math> 是燃烧数且 <math>|b-a|<1</math>,则 <math>(a+b+1)/2</math> 是燃烧数.
* 若 <math>a,b</math> 是燃烧数且 <math>|b-a|<1</math>,则 <math>(a+b+1)/2</math> 是燃烧数.
* 所有燃烧数都能通过以上三种方式产生.
*所有燃烧数都能通过以上三种方式产生.


从上面第三条可以看出,若 <math>a</math> 是燃烧数,取 <math>b=a</math>,则得到 <math>a+1/2</math> 也是燃烧数,进而 <math>a+1</math> 是燃烧数.这蕴含了上面第二条.所以上面的条件可以进一步精简为:
从上面第三条可以看出,若 <math>a</math> 是燃烧数,取 <math>b=a</math>,则得到 <math>a+1/2</math> 也是燃烧数,进而 <math>a+1</math> 是燃烧数.这蕴含了上面第二条.所以上面的条件可以进一步精简为:
第37行: 第37行:
【待补充一些具体计算的例子】
【待补充一些具体计算的例子】


== 伪燃烧数的递推式 ==
== 伪燃烧函数 ==


定义函数 <math>f:\R\to\R</math> 为:<math>f(x)</math> 表示 <math>x</math> 到下一个燃烧数的距离.例如,<math>1/3</math> 的下一个燃烧数是 <math>1/2</math>,所以 <math>f(1/3)=1/2-1/3=1/6</math>.
定义函数 <math>f:\R\to\R</math> 为:<math>f(x)</math> 表示 <math>x</math> 到下一个燃烧数的距离.例如,<math>1/3</math> 的下一个燃烧数是 <math>1/2</math>,所以 <math>f(1/3)=1/2-1/3=1/6</math>.
第55行: 第55行:
有了以上的分析,我们就可以算出 <math>f(x)</math> 了:
有了以上的分析,我们就可以算出 <math>f(x)</math> 了:


<math display=block>\begin{aligned}
<math display="block">\begin{aligned}
f(x)&{}=(a+b+1)/2-x\\
f(x)\,&=(a+b+1)/2-x\\
&=(a+2x-1-a+f(2x-1-a)+1)/2-x\\
&=(a+2x-1-a+f(2x-1-a)+1)/2-x\\
&=f(2x-1-a)/2\\
&=f(2x-1-a)/2\\
第63行: 第63行:
\end{aligned}</math>
\end{aligned}</math>


这就是“伪燃烧数”的递推公式.
综上,
 
<math display="block">f(x)=\begin{cases}-x&x<0\\ \dfrac 12 f(x-f(x-1))&x\ge 0\end{cases}</math>
 
这就是伪燃烧函数.
 
有了上述迭代公式,我们可以尝试直接计算较小的<math>f(n)</math>.我们有
 
<math>f(0)=\frac{1}{2}f(0-f(0-1))=\frac{1}{2}f(-f(-1))=\frac{1}{2}f(-1)=\frac{1}{2}\times1=\frac{1}{2}</math>,
 
<math>f(1)=\frac{1}{2}f(1-f(1-1))=\frac{1}{2}f(1-f(0))=\frac{1}{2}f(1-\frac{1}{2})=\frac{1}{2}f(\frac{1}{2})=\frac{1}{4}f(\frac{1}{2}-f(\frac{1}{2}-1))=\frac{1}{4}f(\frac{1}{2}-f(-\frac{1}{2}))=\frac{1}{4}f(\frac{1}{2}-\frac{1}{2})=\frac{1}{4}f(0)=\frac{1}{8}</math>.
 
对于<math>n=2</math>,可以算出
 
<math>f(2)=\frac{1}{1024}</math>
 
对于更大的<math>n</math>,为了简化计算,我们需要定义以下概念:
 
设<math>A_\alpha</math>是从小到大第<math>\alpha</math>个燃烧数(0是第1个),<math>d(\alpha)=-log_2f(A_\alpha)</math>,规定<math>d(0)=0</math>.
 
我们可以证明<ref>https://zhuanlan.zhihu.com/p/1908578056337076774</ref><math>d(\alpha)</math>满足如下递推关系:
 
# <math>d(\alpha+1)=1+d(\alpha)</math>
# <math>d(\omega^\alpha\times{(k+1)}+\beta)=k+d(\omega^\alpha+\beta)</math>,<math>\beta<\omega^\alpha</math>
# <math>d(\omega^{\alpha+1}+\beta)=2+d(\omega^\alpha+\beta)</math>,<math>\beta<\omega^{\alpha+1}</math>
# <math>d(\omega^\alpha+\beta)=1+d(\omega^{\alpha[\chi(\alpha)]}+\beta)</math>,<math>\beta<\omega^\alpha</math>
 
其中<math>\chi(\alpha)</math>满足如下递推关系:
 
# <math>\chi(\omega^\alpha\times{(k+1)}+\beta)=\chi(\omega^\alpha+\beta)</math>,<math>k\geq1</math>,<math>\beta<\omega^\alpha</math>为极限序数
#<math>\chi(\omega^\alpha+\beta)=\chi(\omega^{\alpha[\chi(\alpha)]}+\beta)</math>,<math>\alpha</math>,<math>\beta</math>为极限序数,<math>\beta<\omega^\alpha</math>,<math>\beta\neq\omega^{\alpha[\chi(\alpha)]+1}</math>
#<math>\chi(\omega^\alpha+\omega^{\alpha[\chi(\alpha)]+1})=\chi(\omega^{\alpha[\chi(\alpha)]+1})-1</math>,<math>\alpha</math>为极限序数
# <math>\chi(\omega^{\alpha+1}+\beta)=\chi(\omega^\alpha\times2+\beta)</math>,<math>\beta<\omega^{\alpha+1}</math>为极限序数
# <math>\chi(\omega^{\alpha+1}\times{(k+1)})=\chi(\omega^{\alpha+1})-2</math>,<math>k\geq1</math>
# <math>\chi(\omega^{\alpha+1})=d(\omega^{\alpha+1})-d(\alpha)+1</math>
#<math>\chi(\omega^\alpha\times{k})=d(\omega^\alpha)-d(\alpha)+\chi(\alpha)</math>,<math>k\geq1</math>,<math>\alpha</math>为极限序数
 
其中<math>\alpha[n]</math>代表其基本列.据此可以计算<ref>https://www.zhihu.com/question/36464952/answer/2912411355</ref><math>f(3)</math>的取值:
 
<math>f(3)=\frac{1}{2^{1541023937}}</math>。
 
通过一些技巧,也可以不使用序数直接计算出<math>f(3)</math><ref>https://zhuanlan.zhihu.com/p/26493979529</ref>.


(等待更新)
(等待更新)
第71行: 第112行:
[https://www.zhihu.com/question/36464952/answer/2912411355 Achatinidae 的知乎回答]
[https://www.zhihu.com/question/36464952/answer/2912411355 Achatinidae 的知乎回答]


<references />{{默认排序:相关问题}}
[[分类:记号]]
[[分类:记号]]

2025年8月20日 (三) 16:25的最新版本

燃烧数(Fusible number),是一系列序型为ε0的正有理数.

定义

考虑以下的数学问题:一个人处于一个封闭的房间之中.他想要测量一段时间,但是房间之中没有钟表,只有一系列恰好能够在一小时内燃尽的绳索.这些绳索的燃烧速度是不均匀的,因此不能通过其长度来判断时间,但是可以通过将其两端全部点燃的方式测量一半的时间.现在想问:仅靠这些绳索,这个人可以在房间之中测量哪些时间?

这里所有能够测量出来的时间称为燃烧数

可以证明: 如果ab均为燃烧数,那么(a+b+1)/2也是燃烧数,并且由这个规则可以从0生成所有的燃烧数.

建立数学模型

【待补充一些具体操作的例子】

为了研究燃烧数的问题,我们首先需要对其抽象,建立数学模型.每根绳子有两个末端.我们只允许以下两种操作:

  • 在开始的时候(时刻为 0)点燃若干末端.
  • 在一根绳子燃尽时点燃若干末端.

并有规定:若有绳子在 t 时刻燃尽,则 t 是燃烧数.

如果一根绳子的两端都被点燃,设其第一个末端的点燃时刻为 t1,第二个末端的点燃时刻为 t2,其中 t1,t2 都是燃烧数,且有 0t2t1<1,那么不难算出这根绳子燃尽的时刻是 (t1+t2+1)/2.如果这根绳子只有一个末端被点燃,点燃时刻是 t,那么它燃尽的时刻就是 t+1

综上,我们对燃烧数建立了清晰的认识:

  • 0 是燃烧数.
  • a 是燃烧数,则 a+1 是燃烧数.
  • a,b 是燃烧数且 |ba|<1,则 (a+b+1)/2 是燃烧数.
  • 所有燃烧数都能通过以上三种方式产生.

从上面第三条可以看出,若 a 是燃烧数,取 b=a,则得到 a+1/2 也是燃烧数,进而 a+1 是燃烧数.这蕴含了上面第二条.所以上面的条件可以进一步精简为:

  • 0 是燃烧数.
  • a,b 是燃烧数且 |ba|<1,则 (a+b+1)/2 是燃烧数.
  • 所有燃烧数都能通过以上两种方式产生.

【待补充一些具体计算的例子】

伪燃烧函数

定义函数 f: 为:f(x) 表示 x 到下一个燃烧数的距离.例如,1/3 的下一个燃烧数是 1/2,所以 f(1/3)=1/21/3=1/6

显然,若 x<0,则 x 的下一个燃烧数是 0,所以 f(x)=x

x0,则 x 的下一个燃烧数是 (a+b+1)/2>x,其中 a,b 是燃烧数,且 |ba|<1

所以 2x<a+b+1a+(a+1)+1=2(a+1),即 a>x1

然而,a 是否就是 x1 之后的第一个燃烧数呢?其实不一定,不过我们假设如此.这样得到的结果其实已经不是真实的燃烧数,我们叫它“伪燃烧数”.我们假设 a=x1+f(x1)

接下来考虑 b.现在对 b 有两个限制,其一是 b>a1,其二是 (a+b+1)/2>x.后者即为 b>2x1a.因为 a<x,所以 2x1a>2a1a=a1,也就是说第二条比第一条更强,我们只需考虑第二条限制 b>2x1a 即可.

在确定了 a 之后,为了找到大于 x 的最小燃烧数,我们应该让 b 尽可能小,让 b2x1a 后的第一个燃烧数,即 b=2x1a+f(2x1a)

有了以上的分析,我们就可以算出 f(x) 了:

f(x)=(a+b+1)/2x=(a+2x1a+f(2x1a)+1)/2x=f(2x1a)/2=f(2x1(x1+f(x1)))/2=f(xf(x1))/2

综上,

f(x)={xx<012f(xf(x1))x0

这就是伪燃烧函数.

有了上述迭代公式,我们可以尝试直接计算较小的f(n).我们有

f(0)=12f(0f(01))=12f(f(1))=12f(1)=12×1=12

f(1)=12f(1f(11))=12f(1f(0))=12f(112)=12f(12)=14f(12f(121))=14f(12f(12))=14f(1212)=14f(0)=18

对于n=2,可以算出

f(2)=11024

对于更大的n,为了简化计算,我们需要定义以下概念:

Aα是从小到大第α个燃烧数(0是第1个),d(α)=log2f(Aα),规定d(0)=0

我们可以证明[1]d(α)满足如下递推关系:

  1. d(α+1)=1+d(α)
  2. d(ωα×(k+1)+β)=k+d(ωα+β)β<ωα
  3. d(ωα+1+β)=2+d(ωα+β)β<ωα+1
  4. d(ωα+β)=1+d(ωα[χ(α)]+β)β<ωα

其中χ(α)满足如下递推关系:

  1. χ(ωα×(k+1)+β)=χ(ωα+β)k1β<ωα为极限序数
  2. χ(ωα+β)=χ(ωα[χ(α)]+β)αβ为极限序数,β<ωαβωα[χ(α)]+1
  3. χ(ωα+ωα[χ(α)]+1)=χ(ωα[χ(α)]+1)1α为极限序数
  4. χ(ωα+1+β)=χ(ωα×2+β)β<ωα+1为极限序数
  5. χ(ωα+1×(k+1))=χ(ωα+1)2k1
  6. χ(ωα+1)=d(ωα+1)d(α)+1
  7. χ(ωα×k)=d(ωα)d(α)+χ(α)k1α为极限序数

其中α[n]代表其基本列.据此可以计算[2]f(3)的取值:

f(3)=121541023937

通过一些技巧,也可以不使用序数直接计算出f(3)[3]

(等待更新)

参见

Achatinidae 的知乎回答