正文
在昨天的推送“哥德尔编码”里,我们为读者准备了两道数理逻辑题,下面是这两道题的答案。理解这两道题将帮助你们在观看明天关于哥德尔证明的节目时,不那么绝望。
第一题答案
或许许多人会想到给每个符号安排一个自然数,然后按照字母顺序连接书写,就得到了我们想要的编码,但是考虑这种情况:
你正在看的这一段话仅由一个句子组成,那么给这个句子的编码就会与给这段话的编码相同,这就构成了重复——不是我们想要的“唯一”编号。
还有人想到用编号的前几位作“类标识”,比如用1代表字母,2代表单词,3代表句子,然后从这些标识结束后的数字开始编码内容——但是注意,我们不知道自己面对着多少个类,文章可以组成书本,书本可以组成套装书,套装书可以属于某个丛书……理论上可以有无穷多个类,这使得我们无法知道“类标识”该占多少位。
下面是我们给出的方法。
用1到82的连续自然数给档案馆使用过的符号编号(略),再将每个符号对应的编号写出来,比如:
A bad day.
27、81、2、1、4、81、4、1、25、63(27表示大写A,63表示句号,81表示空格)
然后写出数量相等质数的数列:
2、3、5、7、11、13、17、19、23、29
接着,把编号用作这些质数的次数,写成一个幂连乘。
2^27×3^81×5^2×7^1×11^4×13^81×17^4×19^1×23^25×29^63
那么这个巨大的计算结果,就是这句话的编码了。
当遇到一段话时候,比如:
A bad day. I like it!
则需要分别求出每句话的编码,这里假设第一句话的编码是M,第二句的编码是N,那么我们同样只需写出数量相当的质数数列:
2、3
然后把编码用作这些质数的次数,写成一个幂连乘:
2^M×3^N
这是一个更加巨大的数字,但无所谓,小妖精不在乎。
以此类推,我们不断滚动这个质数幂连乘,可以构造任何多层次的编码,当我们需要解读的时候,就只需要给这个巨大的编码作质因数分解,同时也对每一层的所有次数作质因数分解,就能还原出任意一份英语文档了。
第二题答案
罗素悖论是形如“我现在说的话是假话”的悖论,解决这种悖论,关键是区分“语言”和“元语言”。
比如对于“苹果是绿色的”这句语言,“‘苹果是绿色的’有6个字”就是一句元语言,这两种语言处于不同的逻辑范围内,不能相互混淆。
那么对于罗素悖论,我们就会发现“我现在说的话是假话”作为一个语言,将没有资格进入元语言的范围,不能用来讨论这句话本身是真是假。
所以说,要用图像演示罗素悖论,必须有一个明确的边界,可以清晰判断出画面和元画面,在第二种方案中,我们可以在任何时候停下来,说画框以内是画面,画框以外是元画面。
但是第一种方案经过了巧妙的扭曲,完全抹消了画框内外的边界,就无法区分画面和元画面了。
所以正确答案是第二种方案。
本文系网易新闻·网易号“各有态度”特色内容
▼ 点击阅读原文,观看混乱博物馆更多视频。