## 《柏拉图和技术呆子》7:哥德尔不完备性定理的世界观

今天咱们继续讲计算机的局限性。我们这几期一直在说“数字宇宙假设”，你知道这是一个不可证伪的假说，也许我们就是生活在一个有限分辨率的、可数的、可以完全用计算机模拟的数字宇宙之中。但是今天我要说明这种宇宙的一个本质缺陷 —— 而你会因此希望我们最好还是生活在一个实数世界之中。

这个关键思想就是“哥德尔不完备性定理”。你可能早就听说过这个名词了，哥德尔不完备性定理大概是我所知道的最让人感到震撼的数学定理。我们今天不是讲数学，我打算在十几分钟之内，给你一个未必准确、但是简明的解释 —— 目的是让你通过这个定理对世界有个深刻的理解……

当然，这是个不可能完成的任务。不过10分钟固然无法说透，可是按照哥德尔不完备性定理精神，长篇大论也说不透。

数学家研究问题的方法，跟科学家存在本质区别。科学家通过观察世界总结出来的规律常常有可能是错的 —— 但是数学家没有这种担心。数学家得出的结论都不是“总结”出来的，而是“证明”出来的，是建立在坚实的逻辑基础之上。

比如你考察了几个直角三角形，发现它们的直角边的平方和都正好等于斜边的平方，那你能据此就认为这是直角三角形的普遍性质吗？不能。你必须用严格的数学推导*证明*这个性质。证明了，才能把它称为勾股“定理”。

那证明定理的依据都是什么呢？有的是之前已经被人证明了的定理。那最初的定理是从哪来的呢？最初的定理就不叫定理了，叫“公理”。公理无需证明，是人们普遍认可的东西。

比如说，“两点之间只能有一条直线”，这就是一条公理。

数学家先认可几条公理，然后在公理的基础之上证明各种定理，数学大厦就算建立起来了。比如我们初中学的欧氏几何学，总共才只有五条公理。决定几何学大厦的不是那些五花八门的定理，而是这五条公理。

……好吧，以上这些都是初中数学。现在我们快进到20世纪的数学。你肯定记得，证明一个数学定理常常需要巧妙的构思，有时候非常困难。那么在20世纪初的时候，有些数学家就有一个野心，说我们能不能找到一个机械化的方法，能够从最基本的数学公理出发，自动证明所有的数学定理！

当时数学家重点考虑的是有关自然数的理论体系。比如哥德巴赫猜想就是有关自然数的一个论断，那数学家说，有没有一个机械化的方法，自动判断哥德巴赫猜想到底正不正确。如果这个方法找到了，那就没有后来的陈景润、也没有其他数学家什么事儿了，什么漂亮的证明都会被机械化方法无情碾压！等于是这帮人要抢后世所有数学家的风头。

数学家们努力了一番，貌似也取得了一些进展，人们充满雄心壮志。

可是1931年的一次会议上，一个25岁的年轻人，哥德尔，做了一个报告，说他证明了一个有关自然数公理系统的定理。据说当时冯·诺依曼就在报告现场，冯·诺依曼听完哥德尔的报告之后说了一句话：“全完蛋啦（It’s all over）！”

下面这张图是一本漫画书（Logicomix）中的一页，表现了当时哥德尔报告的情景 ——

![图片](https://piccdn3.umiwi.com/img/201807/18/201807182134484074678353.jpg)

简单地说，哥德尔证明了，在自然数的公理系统中，不但你们想要的那种机械化的证明不存在 —— 而且对有些命题来说，连“证明”本身，都根本就不存在！

这就是“哥德尔不完备性定理”。这个定理说，只要自然数的公理系统只有有限条公理，那么就一定存在一些命题，你既不能用这些公理证明它是对的，也不能判断它是错的。

也就是自然数的公理系统是*不完备*的。数学家的整个世界观都崩塌了。

在大幅度地引申这个定理的含义之前，咱们先小心一点，澄清一下人们对哥德尔不完备性定理的误解。有些人认为哥德尔证明了*一切*有限的公理系统都是不完备的 —— 这可就错了。不完备性定理只限于自然数系统。

事实上，有一个数学家叫阿尔弗雷德·塔斯基（Alfred Tarski），他在1948年就证明了，如果是一个封闭的*实数*系统，那它就有可能是完备的、也是自洽的。比如欧氏几何就是一个关于实数的系统，塔斯基已经证明，欧氏几何系统 —— 虽然仅有五条公理 —— 是完备的和自洽的。

所以我们千万不要滥用哥德尔不完备性定理。

但是哥德尔不完备性定理的确说了，对自然数这个领域来说，你真的不能从有限的几条公理出发，推导出整个大厦。自然数世界里永远都有新东西等着你。

2002年，霍金在北京参加一个物理学家的大会，他在会上做了个领导讲话式的报告，就叫《哥德尔与M理论》[1]。我们知道物理学家都在追求一个“统一理论”，希望能够一举揭示这个宇宙的终极秘密。但是在这个报告里，霍金把物理学理论和哥德尔不完备性定理做了一个类比，他说“也许要以有限数量的命题来阐述宇宙终极理论是不可能的。这和哥德尔不完备性定理非常相似。”

换句话说，霍金觉得，也许物理定律就好像自然数的公理集合一样，有多少条都不够。当然物理定律跟自然数的公理系统还是不一样的，为什么物理定律不是像欧氏几何一样是个完备系统呢？所以霍金这里只不过是表达了一种可能性而已。

但是这种可能性也许是个好消息。如果没有终极理论，我们对世界的探索就永远都不会停止。

既然霍金都说了，那我们也可以做一点推广。

我们前面说了，所有可数的系统都等价于自然数系统。那么哥德尔不完备性定理的本质就是说，一个可数系统自己，是说明不了自己的。

咱们打个比方，假设你作为新员工入职了一家公司。老板说我们是一家成熟的公司，一切行为都有章可循。这里有一本手册，你拿回去好好学习。以后不管遇到什么情况都要对照手册行动：手册说该做的你就做，手册说不该做的你就不做。

你一看这本手册非常厚，上面密密麻麻写了好几千条规定。老板非常得意。

要是哥德尔遇到这家公司，他马上就会告诉老板 —— 总会有一些行动是既属于你们公司的活动范畴，又是你这本手册无法判断它是对是错的！

（事实上，哥德尔加入美国国籍的时候，官员让他谈谈对美国宪法的看法，他就指出了宪法中的逻辑缺陷……）

有些事情，你必须得跳出手册之外，才能判断它对不对。

计算机算法是可数的。那仅用计算机算法的各种规则，能对所有算法做出判断吗？不能。有时候你必须跳出算法之外去看算法。可是如果宇宙就是个计算机，你又怎么可能跳出算法之外呢？

哥德尔不完备性定理给学术界开一个巨大的脑洞。后来有人证明了一个类似的理论 ，说任何一个可以写下来的语言系统，其中总会有一些语句，你用这个语言系统本身是无法判断其对错的，你必须得跳出这个语言才能判断。

也就是说，如果你全部的思考都被限制一种语言里的话，有些事儿对你来说就永远不知道怎么做决定。你得跳出这个语言才行。你得有一些在这种语言之外的意思才行。

所以不管多么精细的语言，都是不完备的。

好，我们上一讲说了，如果大脑是个实数系统，那我们有些思维就是不可数的，就不能完全用任何一种语言描述。那如此说来，我们就有可能跳出这个语言，用“只可意会不可言传”的思维做出高级的判断。

这就是为什么实数宇宙比数字宇宙好。

任何一个语言的句子都是可数的，所以每个语言都是不完备的。文字是可数的，但文字背后的意思可以是不可数的。但如果你的思维是不可数的，你就总是可以创造一个新的语言去描写那些可以感知到、但无法用旧的语言描写的东西。而 Lee 认为，新语言的种类也许是不可数的。

当一台盯着手册看的 AI 不知道怎么办好的时候，因为你的思维不可数，你可以跳出手册做决定。

考虑到哥德尔不完备性定理，我拒绝接受有可能让我盯着手册看不知道怎么办好的设定。

***

现在我们总结一下。计算机系统本质上是一些可数的东西，符合哥德尔不完备性定理的条件。

哥德尔不完备性定理说，在这样一个封闭系统中，总有一些语句是这个系统本身所无法判断对错的。这就意味着如果我们身处的是一个数字宇宙，如果我们的大脑都是计算机，那迟早有一天，我们会发现对这个系统我们能想明白的东西都已经想明白了，剩下的都是永远都不可能想明白的。

从那一天开始，我们将永远浑浑噩噩地活着。

但如果真实世界是实数的，人脑不是计算机，那我们就有可能随时跳出任何能写成文字的认知系统。我们永远都有一个只能意会、不可言传的思路。

我们可以不断地跳出旧系统，探索新知识、发明新语言，建立新系统。科学家永远可以琢磨新的物理定律，艺术家永远可以创造新的意境，工程师永远可以发明新的模型。

实数的世界是我们用语言所无法穷尽的。这大约有点像咱们中国人说的“道可道非常道”。

写到这里我又想起来一句中国话叫“纸短情长”，似乎也符合哥德尔不完备性定理的精神：不管我写多长都无法表达对你的……知识服务，那就把这本书的解读暂时停在这里，剩下的都尽在不言中吧。

### 💡 精华要点
- 计算机系统本质上是一些可数的东西，符合哥德尔不完备性定理的条件。
- 如果真实世界是实数的，人脑不是计算机，那我们就有可能随时跳出任何能写成文字的认知系统。我们永远都有一个只能意会、不可言传的思路。
- 实数的世界是我们用语言所无法穷尽的。

![图片](https://piccdn3.umiwi.com/img/201807/18/201807182138212674146351.jpg)
