9.惊人的编码

M:基塔先生是来自另外一个时空结构中的星系——螺旋系的科学家。一天,基塔博士来到地球收集有关人类的资料。

M:接待基塔博士的是一位美国科学家赫尔曼。

赫尔曼:你何不带一套大英百科全书回去?这会书最全面地汇总了我们的所有知识。

基塔:这是一个好主意,赫尔曼。可惜,我不能带走那样重的东西。

基塔:不过,我可以把整套大英百科全书编码列这根金属棒上。在棒上有个标记就可以做到这一点。

赫尔曼:你不是开玩笑吧?一个小小的记号怎么能携带这么多信息?

基塔:很简单,我亲爱的赫尔曼。各个符号——每个字母、数字、标点符号——都配上一不同的数。零用来隔开符号。两个零表示词之间的间隔。

赫尔曼:我不懂。你怎么编码cat

基塔:这很简单。我马上给你看我们使用的代码。cat一词编为3-0-1-0-22

M:基塔先生用他那高级袖珍计算机快速扫描百科全书,把它的全部内容转变为庞大的数字。在数的前面加一个小数点,就使它变成了一个十进制的分数。

M:基塔博士在他的金属棒上标上一点,这一点把这根棒严格分成其长为ab的两段,并使得分数a/b正好等于他那代码的十进制分数值。

基塔:当我回到我自己的星球上时,我们的计算机可以严格测出ab的值,然后算出分数“a/b”。这个十进制分数就可以被译码、这时计算机就可为我们把你们的百科全书印出来!

还不熟悉密码的学生们也许乐意按照这里所用的数字代码来给一个简短讯息编码和译码。编码表明了一一对应的重要性,以及如何把一种结构标记为另一种同物的结构。这种编码实际上是用在一种高级的证明理论中。库尔特·哥德尔作出了一个著名的证明:一个复杂到足以包含整数的演绎系统有一些定理是不可能在该系统之内证明其是否正确的。哥德尔的证明依据的就是将一个演绎系统中的每一个定理都交换为一个特定的、很大的整数。

把一整套百科全书用一个点标在棒上只是理论上成立,实际上是行不通的。困难在于在棒上标上这个点所需的精度是不可能达到的。而且标出的点必须比一个电子小很多,两段长度的测量也必须同样精确。如果我们假定两个长度确实能够精确地测量,从而得到基塔博土的那个分数,自然用他的办法就可以成功。

数学家确信π的十进制展开式是个无穷无规律数字的序列。如果确实是这样,那就意味着,任何一个有限的数字序列都一定会出现在展开式的某一段。换句话说,在π的展开式的某一段就是基塔博土编的大英百科全书的代码序列,或者就是任何其他业已出版的,或可能要出版别的著作的代码!