all_lessons/数学的逻辑/15第 16 课 / 共 44 课

第五部分 · 数学回望自身

哥德尔不完备:数学永远证不完自己

上一课,希尔伯特许下数学史上最宏大的愿望:一套既完备又自洽、还能证明自己自洽的地基。1931 年,一位 25 岁的年轻人用一句会"谈论自己"的命题,把这个梦从内部炸开。这是数学回望自身这条线的终点——也是它最深刻的反转。但还不是整门课的终点:看清了边界的数学,接下来要转身去造一台会学习的机器

线性回顾
上一课:罗素悖论逼出了公理化集合论(ZFC),希尔伯特更进一步,梦想为整个数学找到一套完备且自洽、并且能证明自己自洽的公理地基,一劳永逸地终结危机。
留下的问题:这个梦能实现吗?
本课新增:哥德尔不完备定理第一定理:任何足够强(强到能表达基本算术)且自洽的形式系统,都存在"真,但在系统内无法证明"的命题——它不可能完备第二定理:这样的系统无法在自己内部证明自己的自洽。希尔伯特之梦,破灭。然后,我们沿着前五部分这条"思想史"的链,从头走回来一遍——它在这里收束,下一程则换一副面孔重新开始。
本课路线
(1) 哥德尔的奇招——给命题和证明编号,让数学能够"谈论自己";(2) 构造一句自指命题 G:"我没有证明";(3) 两条路推演:G 可证则系统矛盾,G 不可证则系统不完备——"自洽 ⇒ 不完备";(4) 第二定理:系统证不了自己不矛盾;(5) 它不是说数学错了、也不是说什么都不可知——它精确划出了形式证明的边界(与图灵停机问题同源);(6) 回望前五部分(数→形→变→广→己),看清这条思想史的引擎;(7) 数学的确定性是建出来的——而看清边界之后,它将转身去造一台会学习的机器。

哥德尔的奇招:让数学谈论自己

希尔伯特把数学变成了一台形式机器:所有命题都是按规则拼出的符号串,所有证明都是按规则一步步变形的符号串。库尔特·哥德尔(Kurt Gödel)盯着这台机器,看出了一个谁都没料到的破绽——既然命题和证明都只是符号串,那它们就都可以被编号

这就是著名的哥德尔编码:给每个符号配一个数,再把整串符号编成一个唯一的大数。于是每一个命题对应一个数,每一段证明也对应一个数。一旦如此,奇妙的事发生了:"某命题在系统里有没有证明"这件事,本身变成了一道关于数的算术问题。而算术,正是系统自己能谈论的东西。

关键一步:系统强到能做基本算术(加、乘、"整除"这类),就强到能在内部谈论自己的命题与证明。数学第一次照镜子——它可以用算术语言,写下"第几号命题是可证的"这样的句子。希尔伯特想让数学自证清白,反而把"自我指涉"这把钥匙,亲手交到了哥德尔手里。

那句要命的自指命题 G

有了这面镜子,哥德尔精心拼出一句特殊的命题。把它叫 G,它说的是:

G :「G 在本系统内不可证。」
读作"这句话 G 断言:它自己在这套公理系统里没有证明"。注意它的诡异——它谈论的对象,正是它自己有没有证明。这不是含糊的英语绕口令,而是用哥德尔编码严格写成的一句算术命题

这让人想起上一课罗素的 R:R 问的是"包不包含自己"(成员关系),G 问的是"能不能证明自己"(可证性)。罗素的回路炸毁的是朴素集合论;哥德尔的回路,要炸的是希尔伯特之梦。我们照样只问两条路,逐一推演——假设系统是自洽的(不会推出矛盾),看 G 会怎样。

第一条路:假设 G 可证。那么系统证明了 G。可 G 说的正是"G 不可证"。系统既证出了 G,又因此让 G 所断言的内容("不可证")成了假话——系统证明了一句假命题。一个会证明假命题的系统是不自洽的(它能推出矛盾)。这与我们的前提冲突。所以,只要系统自洽,G 就不可能被证明

第二条路:那就是 G 不可证。可 G 断言的恰恰就是"G 不可证"——于是 G 说的是真的。我们手上出现了一句为真、却在系统内永远证不出来的命题。这正是"不完备"的定义:有真理漏到了证明的网眼之外。

撞墙:自洽 ⇒ 不完备
两条路逼出同一个结论:只要系统自洽,G 就既不能被证明,又确实为真——系统必然不完备。希尔伯特要"完备",哥德尔回答:完备和自洽,你只能选一个。任何强到能做算术的自洽系统,永远存在它看得见为真、却够不着的真理。下面的开关让你亲手走这两条路。
自指命题循环:G 说"G 没有证明"
命题 G 断言"G 在本系统内不可证"。下面替它假设两种情况——按一个按钮,看从 G 的含义出发会推出什么。无论选哪头,都落到希尔伯特之梦破灭。(这和上一课罗素开关同形,但这里问的是"可证性",不是"成员关系"。)
当前假设
点上面的按钮 →
推论
结论

第二定理:连"我没矛盾"都证不出来

哥德尔还没收手。第一定理说"自洽 ⇒ 存在真而不可证的命题 G"。注意,这整段推理本身也能用算术语言写进系统内部。于是系统可以在内部陈述这样一句话:"如果我是自洽的,那么 G 不可证。"

现在假设系统真能在内部证明自己的自洽(这正是希尔伯特最想要的"自证清白")。把"我是自洽的"代进上面那句,系统就推出了"G 不可证"——可"G 不可证"恰恰就是 G 本身的内容,等于证明了 G。而第一定理已经告诉我们:自洽的系统证不出 G。矛盾。

哥德尔第二定理
任何足够强且自洽的形式系统,无法在自己内部证明自己的自洽性。换句话说,希尔伯特纲领里最关键的那块拼图——"用系统自己证明它永不矛盾"——原则上不可能完成。地基能不能信,系统自己说了不算。

到这里,希尔伯特那句"我们必须知道,我们终将知道"被温柔而彻底地驳回了。不是因为我们还不够聪明,而是因为这是任何足够强的形式系统逃不掉的内在宿命:它无法在内部既证明所有真理,又担保自己不会崩。

它到底说了什么——以及没说什么

不完备定理是被滥用得最厉害的数学结论之一,所以请把它说精确。它不是说"数学错了""数学自相矛盾"——恰恰相反,它假设系统自洽的,然后在这个前提下推出不完备。它也不是说"什么都不可知""没有真理可言"——它谈论的是一件非常具体的事:在一个固定的形式公理系统里,"能被形式证明"和"为真"是两回事,前者永远盖不满后者。

它真正做的,是给"形式证明"精确地画了一条边界:证明这台机器很强,但它够不到全部真理,也担保不了自己。这和图灵几年后的停机问题是同一件事的两张面孔——没有一个机械程序,能判定任意程序会不会停下来;同样,没有一套机械程序,能判定任意算术命题真假。不可判定性,是这条认识链共同的终点。这不是失败,而是人类第一次精确地知道了"机械的确定性"能走多远

回望:前五部分,一条思想史的链

前十八课,一个引擎。我们从"数得清"出发,被一道又一道解不了的问题逼着往前,最后逼到"数学证不完自己"。回头看,每一步都不是谁规定要学的,而是上一步那堵墙逼出来的。让我们沿着这条思想史的链,把它重新走一遍——

看清这条链,第 00 课那个钩子就有了答案。一把尺量不出 √2,不是因为尺子不好,而是因为"所有数"这个概念本身不够大,必须被扩张。整门课,就是人类一次次发现"现有的概念不够大、不够稳",然后亲手把它造大、造稳的故事。

一句话带走
哥德尔证明:任何强到能做算术、且自洽的形式系统,都存在"真却证不出"的命题,也无法证明自己不矛盾。希尔伯特之梦——完备、自洽、自证清白——破灭了。这是数学回望自身这条线的最后反转,也是它最深的启示:数学的确定性,是人类一砖一瓦『建』起来的,不是天上『给』的。正因为是建的——是被一个个危机逼着、小心翼翼亲手砌起来的——它才如此可信,也如此美。
下一步
哥德尔划清了"证明"的边界——这是数学回望自身的终点。可在转身去造东西之前,数学还欠着三块现代地基没补:连续(拓扑)、大小(测度)、计算(图灵)。它们既是二十世纪严格化的巅峰,也正是后半程那台学习机器要站的地面。先从最基本的一问开始:扔掉尺子之后,"连续"还剩下什么?→ 第 16 课《拓扑:没有距离的"连续"与"形状"》。