0%

如何推翻“所有自然数都可以唯一地用不超过23个汉字表达”的反证法证明

“所有自然数都可以唯一地用不超过 23 个汉字表达” 当然是个伪命题,但是,在一个段子中,它居然被用反证法证实了。证实这个问题的反证法肯定有问题,然而段子里面的反证法听起来太过合理以至于找不出漏洞。最终,我曾经花了坐火车的晚上的时间找出了反证法的漏洞,现在把这些内容整理在这里吧。

问题背景

通常来说,自然数(Natural Number)指非负整数,即 \(0, 1, 2, 3 \dots\)。如果严谨一些的话,也可以参考佩亚诺公理(Peano axioms)来定义自然数,不过此公理由于过于严谨超出了本文章的讨论范围。在定义了自然数之后,我们给出如下命题: \[ 对于 \ \forall a \in N,存在长度不超过 \ 23 \ 的汉字字符串,能够唯一地描述自然数 \ a \]

具体解释一下,即给出任意地自然数,我们可以使用一句长度不超过 23 个字的汉语来唯一地描述这个数。例如,给出自然数 1,我们将它描述为 ”一“,或 “第二个自然数”;而对于自然数 97,我们可以将它描述为 “九十七”,也可以描述为 “小于一百最大素数”。对于一个自然数,我们可以用很多种方式把它描述出来,而这个命题的意思是,对于所有的自然数,我们都可以找到一句长度不超过 23 个字的汉语来唯一地描述这个数。

没错,这个命题看起来就是在放 P,我们可以明显地感觉到这个命题是在胡扯,不过接下来的反证法会有些让人感到智商掉线。

通过反证法的证明

反证法(Proof by Contradiction)是一种通过假设在原命题的条件下结论不成立,继而以命题条件为基础推理,获得明显错误的结论,从而说明原假设不成立,命题成立的证明方法。对于上一部分提出的命题,有人提出了一个乍一看无法找出漏洞的反证法。相应的假设如下: \[ 假设存在 \ b \in N,b \ 无法被唯一地通过长度不超过 \ 23 \ 的汉字字符串描述 \] 在这一假设下,使用反证法可推导出如下过程。 \[ \begin{split} & 令这些无法表示的数字构成集合 \ B = \{b_0, b_1, b_2, \dots \} \\ & \because 根据自然数的全序关系,B \ 中存在最小元素 \ b_{min} \\ & \therefore \ b_{min} \ 可用 “最小的不可用不超过二十三个汉字唯一表示的自然数” 来表示 \\ & \therefore 由于 \ b_{min} \ 来自无法表示的集合,这一结论与我们的假设相违背 \\ & \therefore 假设不成立,命题成立,即 “\exists b \in N,b \ 无法被唯一地通过长度不超过 \ 23 \ 的汉字字符串描述” \end{split} \] 至此,我们在原命题的条件下依据我们的假设推出了矛盾,因此原命题成立,即所有自然数都可以背长度不超过 23 的汉字字符串唯一地描述。这个反证法看起来真是太正确了。

推翻反证法

当然,凭着做人的良心,即便这个反证法说的再有道理,我们依然应该认为如上的命题是不成立的,否则,这个被证明的命题说明了可以建立一个从自然数(无限个)到长度不超过 23 的汉字字符串(有限)个的一一映射(Injective function)。也许众多已故数学家会掘开自己的坟跑出来,同时,诸如阿列夫数(Aleph Number)或者连续统假设(Continuum Hypothesis)这样酷酷的东西也都不存在了。为了不让以上的可怕情景发生,我们必须做点什么,以阻止上一部分中的反证法成立。

通过上一段中的内容,我们也大概清楚了,问题出在 “无限” 上,建立一个从无限集合到有限集合的一一映射是荒谬的,这也就成了推翻上一小节中反证法的突破口。汉字是有限的,我们不妨给这个 ”有限“ 来一个量化。 \[ 假设共存在 \ c \ 个汉字,则共存在 \ t = \frac{c^{24} - c}{c - 1} \ 种唯一的长度不超过 \ 23 \ 的汉字字符串 \] 在我们的 ”有限“ 被量化之后,我们的任务就是提供尽可能多的自然数,从而突破这个限制,令之前的反证法产生矛盾。 \[ \begin{split} & 对于反证法中构造的集合 \ B \ 的最小元素 \ b_{min},考虑 \ b_{min} > t \ 的情况 \\ & \because B \ 包含了所有“无法被唯一地通过长度不超过 \ 23 \ 的汉字字符串表示的数” \\ & \therefore 对于 \ \forall a < b_{min}, a \in N,a \ 都可以被唯一地表示 \\ & \therefore 共消耗了 \ t \ 个长度不超过 23 的汉字字符串来表示 \ b_{min} \ 之前的所有自然数 \\ & \therefore 若使用“最小的不可用不超过二十三个汉字唯一表示的自然数”表示 \ b_{min},则定与之前冲突 \\ & \therefore 对于 \ b_{min} \ 的表示违背了唯一性的原则,反证法被推翻 & \end{split} \] 虽然否定了此反证法的正确性并不能说明原命题的正确性,但是在此反证法推翻之后,建立一个从无限集合到有限集合的一一映射的一种 ”可行“ 做法被废除了,现代数学的基本得到了暂时的守护。

Highest respect to the mathematicians of our human race.