前言
今天聊一个比较严肃的话题,和身边的人交流很多,听过很多关于哥德尔不完全定理的过度解读。学一个东西不会不要紧,最怕的就是一知半解,只学了前半段不了解后半段,所以有时候理解会和作者原意差很远。哥德尔是一个数学家,哥德尔不完全定理也是关于数学方面的定理,我要讲的不是数学,我是尽量给你一个未必准确但是简明的解释,让你通过这个定理对世界有一个深刻的理解。
正文
数学家研究问题的方法是通过逻辑证明出来的,这个和科学家通过观察世界总结规律的方法有着本质的区别。什么意思?比如你考察几个直角三角形,发现他们的直角边的平方和都正好等于斜边的平方,那你能据此就认为这是直角三角形的普遍性吗?不能。你必须通过严格的数学推导证明这个性质,证明了,这个才能称为勾股定理。
问题来了,那证明这个定理的依据是什么呢?有的是已经被别人证明过的定理。那最初的定理是从哪里来的?最初的定理不叫定理,叫公理。公理就是逻辑极点,不需要证明的,是人们普遍认可的东西。比如常见的两点之间只能有一条直线,这就是一条公理。
数学家先认可几条公理,然后在公理的基础上证明各种定理,数学理论大厦就此建立起来。比如我们初中学的欧氏几何,总共才五条公理。决定整个几何学大厦的不是那些定理,而是这五条公理。在初中的时候,我们为了证明一个结论,往往会巧妙构思,而且有时候还比较难。
在20世纪初的时候,有一些数学家想找到一个机械的方法,从最基本的数学公理出发,自动证明所有的数学定理。当时的数学家主要考虑的是有关自然数的理论体系。数学家经过一番努力,貌似有了一些进展。但是在1931年的一个会议上,25岁的哥德尔做了一个报告,说他证明了一个有关自然数公理系统的定理。哥德尔证明了,在自然数的公理系统中,不但你想要的那种机械化的证明不存在,而且对有些命题来说,连证明本身都不存在。这个就是著名的哥德尔不完全定理。什么意思?用大白话说,只要自然数的公理系统只有有限条公理,那就一定存在一些命题,你既不能说它对,也不能说它错。也就是自然数的公理系统是不完全的。
请注意上面所说的哥德尔不完全定理是有条件的。很多人把哥德尔不完全定理做引申,认为哥德尔证明了一切有限的公理系统都是不完备的。这个就错了,哥德尔不完全定理只限于自然数系统。事实上,有一个数学家在1948年就证明了如果一个封闭的实数系统,那它就有可能是完备的和自洽的。比如欧氏几何就是一个关于实数的系统,塔斯基就已经证明欧氏几何系统是完备和自洽的。因此不要滥用哥德尔不完全定理。
哥德尔不完全定理的确说了,对自然数这个领域来说,你不能从有限的几个公理出发推导出整个自然数论系统大厦。自然数的世界里永远有新东西等着你。
启示
所有可数的系统都等价于自然数系统。那依照哥德尔不完全定理,一个可数的自己,是说明不了自己的。比如某些人迷信炒股宝典,总希望有一个方法,对照方法操作就能在股市上赚钱。宝典上说该做的你就做,不该做的你就不做。如果是哥德尔,他会说总有一些事情,是你的宝典里面没办法判断它对和错的。有时候你得跳出宝典之外,才能判断它对不对。
哥德尔不完全定理给学术界开了脑洞。后来有人证明了一个类似的理论,说任何一个可以写下来的语言系统,总会有些语句,你用这个语言本身无法判断对和错,你必须跳出这个语言才能判断。也就是说,如果你的全部思考被限制在一种语言里,有些事情对你来说永远不知道怎么做决定。你得跳出这个语言才行,得有一些在这个语言之外的意思才行。
从计算机的视角看,计算机系统本质上是一个可数的系统,符合哥德尔不完备定理的条件。依照哥德尔不完全定理,在这样的封闭系统内,总有一些语句是这个系统无法判断对错的。如果真实的世界是数字的,我们的大脑都是计算机,那迟早有一天,人类会对这个系统能想明白的全想明白了,剩下的都是永远不可能想明白的。从那天起,人类将浑浑噩噩的活着。
如果真实的世界不是可数的,是实数,人脑不是计算机,那我们就有可能随时跳出任何能写成文字的认知系统,我们永远都有一个只可意会不可言传的思路。人类可以不断跳出旧系统,探索新知识,发明新语言,建立新系统,科学家可以永远琢磨新的物理定律,艺术家可以永远创造新意境,工程师永远可以发明新模型。