从前有座山

小时候想听故事,但是又嫌故事短,很快就讲完了。因此大人们就讲了一个不会结束的故事,故事是这样的:

从前有座山,山上有座庙,庙里有两个和尚,大和尚对小和尚说:“从前有座山,山上有座庙,庙里有两个和尚,大和尚对小和尚说:“从前有座山,山上有座庙,庙里有两个和尚,大和尚对小和尚说:…..”“”

反正我是很烦这个故事,因为翻来覆去都那么几句话,但是却没完没了。

上小学时候发现,其实不光是我家大人给我讲这个故事,同学家的家长也都讲过这个故事,我不禁怀疑他们是不是从同一个人那里听到的版本。

山上有座庙

其实从递归的角度来讲,可以很容易将这个故事写出来:

两个和尚的故事 :从前有座山,山上有座庙,庙里有两个和尚,大和尚对小和尚说两个和尚的故事。

故事持续到这里已经可以结局了。其实抬头看看,类似的东西有很多,也都很奇妙,例如自由软件里面鼎鼎大名的 GNU,他是一个缩写,缩写的内容是 Gnu is Not Unix。 《GEB》的作者候世达,总结了一条候世达定律:

候世达定律 :“做事情的时间永远比预计的时间要长很多,即使在预计时已经考虑了候世达定律”。

这类故事,或者描述的共同特征其实很明显,就是自己的描述中又包含了自己。这个,就叫做自指。

庙里没有和尚,庙塌了

上面的自指也就是奇怪一点,至少也带来很多趣味性。但是有一类自指,却给逻辑,或者数学带来了灾难。 原本大家以为这个世界很美好,至少数学足够简单和美好,在数学的体系中,是就是是,否就是否,一切都是这么严格,一切都是这么有序。于是就有大神跳出来了,希尔伯特,提出了一个希尔伯特方案,其中核心就是,将数学完全形式化,详尽的列出基本概念和公理,其他所有一些定理啊,什么的就从这个系统中直接证明得了,定理的发现,再也不需要一些羚羊挂角的思维灵感,也不需要一些讲不出来道理的直觉。

理想既崇高又美好,理想也足够吸引人。但是理想毕竟是理想,理想被现实给打脸了。打脸的核心就是这个自指。打脸的外衣叫哥德尔不完备性定理。哥德尔不完备性定理的核心是说,我能构造一个形式化系统中为真的描述,这个描述是不可证的。

其实很奇怪,是吧,数学系统里面,我们只放那些确定的公理,不放直接构造的自指,那自指是怎么跑进去的?嗯,一下跳到数学有点步子大,我们先看简单的集合论和逻辑吧。

经典的说谎者悖论是说,有个人说:”我说的这句话是假话”。那这到底是真还是假?《攻壳机动队》中,塔奇克马就是用这个成功将一个人工智能妹子卡死的。但其实看起来,这句话就活生生写在这里了,也没引起所有人的任何不适或者世界毁灭。很简单,一句话的意义和一句话的编码实际上是两回事,他们存在两个系统中,一个是符号的表达,一个是意义的表达,将意义的表达在深入到符号层面去的时候,悖论就产生了。额,比较绕,通俗一点吧,在一个逻辑系统里面如何表达这样的悖论?也就是,先看简单系统,比如,命题逻辑,怎么表达?

额,命题逻辑是没戏了。如果 G 表示“这句话是假的”,那么实际上要表达的变成了 “G 是假的“, 假设叫 G1, 啊,不对,这句话又变成了 “G1 是假的”,我们又看到了山上的和尚。

这时候,哥德尔出手了,他证明了,任何一个只要包含算数公理的一阶系统,都可以构造一个这样的悖论出来。不过悖论的两端并不是真或假,而是真和无法证明。

华丽丽的庙塌掉了。

小说中的自指桥段

《银河系漫游指南》中的黄金之心号飞船,是由”无限非概率“驱动的,这个驱动器怎么发明的?

他们所不能忍受的另一件事就是,他们制造一台能够产生无限非概率的仪器的尝试一再失败。这样的仪器如果用在飞船上,就能够跨越哪怕是最远的星球之间的距离。最终,他们恼怒地宣称这样的一台仪器根本就是不可能的。

此后的一天,一个学生留下来打扫实验室,他这样推理:如果,他对自己说,这样的一台仪器事实上是不可能的,那么它就必定是一种有限非概率。因此,如果我要造出一台来的话,所要做的全部事情就是算出它如何不可能的精确数值,把这个数值输入有限非概率发生装置,再来上一杯热茶……然后,打开它!

他这样做了,于是震惊地发现自己成功地凭空造出了人们苦苦寻求已久的珍贵的无限非概率发生装置。

熟不熟悉,也是这样一个纠缠不清的悖论,结果造就了最强大的引擎,虽然作者在一本正经的胡说八道,不得不说,说的漂亮。

《银河系漫游指南》还有一个奇特的点子,讲的是宇宙不可知:

有一种理论宣称,如果任何一个人真正发现了宇宙存在的原因、宇宙存在的目的,宇宙就会立刻消失,被某种更为怪异、更难以理解的玩意儿取代。 还有另外一种理论宣称,上述事件已经发生了。

同样的观念和桥段在乔斯坦贾德的《纸牌的故事》中也有涉及,说的也是大脑的秘密,“如果我们的大脑足够简单,简单到我们能够轻易的了解,那么我们就会变得足够笨以至于不能理解我们的大脑。”

《GEB》这个书, 就是那个发明”候世达定律”的奇人候世达写的一本奇书,也把自指玩得出神入化。不说理解其中形形色色的段子,光是好多艾舍尔的画,都能将自指表现得形象不能再形象。

还有一个更奇特的段子,说的是一个装满船员的飞船,所有船员冬眠了,并且把记忆也托管给飞船了,结果飞船里有个最低级别的守护进程发现有些情况不对,于是一层层唤醒了高层控制,结果谁都知道有问题,但是谁都不知道出了什么问题,最后主控觉得这样不行,必须给换一个备份的主控,于是指挥更换,结果指挥下去了,机器人在工作时候,把备份取出来,扔进了茫茫太空。这时谁都知道有大问题了,最后调查来调查去,发现是飞船被陨石击中了,而为什么没发现这个事实,因为正好是飞船负责判断飞船是不是被陨石击中的模块被陨石击中了…

这个段子讲给软件工程师,他们会觉得不可思议。比如就没有监控摸块么?你以为软件里面那么多冗余设计和分离的安全设计,独立的测试都是虚设的啊。。。

故事的结局

其实很早时候,我就为两个和尚的故事编了一个结局:

从前有座山,山上有座庙,庙里有两个和尚,大和尚对小和尚说:”从前有座山,山上有座庙,庙里有两个和尚, 大和尚对小和尚说:我们就是这两个和尚。