越来越觉得宇宙是一个模拟程序,宇宙和程序从某些方面说真是异常相似,如对象、类和实例、矩阵等等。宇宙甚至有可能是一个巨大的类库。在程序中,类经过实例化就成为对象,而现实世界也几乎一样,放眼望去,真是无奇不有, 不仅存在着各种不同特征的事物,还存在着不同的规则和属性,最简单的就是引力。苹果为什么会落地?直到现在这个问题仍然难以理解,比如广义相对论认为引力是时空弯曲的结果,可怎么证明时空是弯曲的呢?时空到底是什么?到头来还是一样的无解。再说我们自己,为什么会存在我们人类呢?如果没有会怎么样?这一点似乎只能用人择原理解释。不仅有人类,还有其它无数的物种,而且它们都具有自己的特征,难道这些都是自然形成的吗?事实上,没有什么会自然形成,包括宇宙,只是人类暂时不知道而已。因为事物存在特征,所以人类为了方便管理,就对它们进行分类,而所有的东西似乎都可以进行归类,比如,人有两条腿,马有四条腿,昆虫有六条腿等等。一个无法被归类的东西是很可怕的,因为你不知道那是什么,比如宇宙或世界本身。人类能制造物种吗?似乎不能,因为物种可能是程序事先定义好的类,没有类就不会有对象,因为程序中没有设计这样的规则,所以你就不可能设计出自然界不存在的东西出来。例如游戏中看到路边一辆汽车,你心想我要是去把它开走,警察会不会抓我,事实上你可能根本打不开车门,因为或许开发者并没有编写这样的代码,如下面这个例子。
记得小时候玩的街机版冒险岛,第一关有一些蜗牛在爬,然后当时突然产生一个奇怪的想法:当时一个蜗牛已经快爬到崖边,我在想它会不会掉下去呢?于是就站在那儿等,但是游戏有时间限制,很快便超时导致游戏结束,然后我又重新开始,中间吃了个增加时间的物品,然后再来到蜗牛那儿,看它究竟会不会掉下去,好像是因为蜗牛爬太慢,还是没等到。后来这个问题一直困扰着我,但是却无法知道。现在想想,其实结果很简单:要么一直爬过去,要么掉下去。关键在于程序员是如何设计的,理论上应该会掉下去,因为怪物和玩家都是一样的程序对象,否则就是个bug,说明程序员太粗心或程序不够完美。对程序,我一直很好奇,初中时,偶然读到一本BASIC的书,有点旧但却比较厚,当时看到了上面的变量和常量,觉得很有意思,就在那儿研究,最后终于读懂了代码的含义,当时觉得很有感觉。现在我总算明白,有些东西属于你大脑中构造的一部分,例如兴趣这东西,很大程度上来自于先天,或许它正是你意识的一部分。意识这东西很奇怪,而人的本质是意识,或者说没有所谓的“你”或“我”,你只是一个“意识”,我也是,而意识到底是什么,现在人们还没真正弄明白。如果宇宙是一个程序,那意识就是信息流罢了,我们也根本不存在,我们只是一个变量,一个模块,或一个对象。一个电脑游戏一定会有一个主角,而其它的都称为怪物,同样的,宇宙也是。如果宇宙是一个游戏程序,那我们人类差不多应该算是游戏的主角,只不过这个游戏异常庞大,所以有无数个主角。
除了动物之外,我们周遭的物品难道也会是设计者定义的类吗?是的,如果宇宙真是程序,所有的东西应该都是类,而不止是动物。比如,汽车、飞机、电脑等等,应该都是类。表面上看它们是我们设计出来的,可是,组成它们的零件,以及零件的元素,却是自然界原本就有的东西。如果没有金属和石油,会有飞机和汽车吗?如果没有电和电的规则,会有电脑吗?看起来一切是偶然的,其实或许一开始它们便是精心为人类准备的。例如模拟人生的游戏,你要建造的东西肯定要用到最基本的设计单元或模型,再如你写一个窗口程序,也必须要用到“控件”。之前一直对虚拟机软件很好奇,不明白为什么它能模拟出另一台计算机,因为毕竟真实的机器只有一个,现在想想,这是完全有可能的,因为对电脑硬件而言,比如对CPU来说,根本不存在什么所谓的操作系统,CPU或许根本不知道什么叫操作系统,它也可能根本无法区分哪个是操作系统,哪个是普通应用程序,对CPU而言,它只认机器指令和寄存器,整个操作系统其实是纯逻辑上的东西。比如我们通常所用的文件(File),所谓文件其实是操作系统内部定义的数据结构,磁盘上不存在什么文件,而只有扇区和磁道,每个扇区的某一个位置也只有0和1的区别。所以假如你现在要用最底层的方法删除一个文件,该怎么办呢?你或许开始认为是控制硬盘驱动,其实完全不必,操作系统从来就没有干涉硬盘驱动,它只向驱动传递信息,删除一个文件最终的调用是操作系统内核的一个函数,它负责清除文件记录(FAT或MFT),也就是说,只要清除了文件记录,就等于这个文件被删了,因为此时,操作系统已经检测不到它的存在了。所以我们只要模拟操作系统的最终删除文件的代码,来直接向磁盘写信息,就能删除任意文件,而整个过程,和硬盘驱动几乎没有一点关系,驱动要具体怎么清除物理扇区那是它的事儿,我们不需要关心,我们只需知道上层的实现,换句话讲,操作系统其实也是属于上层的,只是比应用程序低一层,属于“上层中的下层”,通常我们看不到它的内核,觉得它很神秘,其实操作系统一点也不神秘。所以说,在一台电脑上同时运行多个操作系统是可能的,正如一个软件运行两次的效果,比如一台电脑登录多个QQ,或同时开多个窗口或游戏。如此,把操作系统当作一个软件看,就容易理解了,事实上它就是一个软件,只是比较复杂罢了。
真实是什么?你如何定义真实?大部分人仍然会觉得世界是真的,并非是虚拟的,但是你所认为是“真”真的是真的吗?听起来有些矛盾,这是因为目前为止,人类无法定义“真实”。因为真实是相对的,比如你认为物体只要占着空间,就是真实的,但你怎么知道“空间”是真实的?因为你所认为真实的前提是“空间”是真实的,如果空间是不真实的,那你所认为的“真实”也成了不真实或“伪真实”。不过问题又来了,“空间”是什么?你如何定义“空间”?空间和物体不同,比如桌子,电脑,这些至少在我眼前,我能一下子看得到,而空间呢?我无法一下子看全,它似乎是抽象的东西,就像“1、2、3...”这些自然数一样,我能看到123,但看不到所有的自然数,也看不到“最大的那个数”,因为它是无限的,“无限”一词仿佛是头脑里的东西,现实生活中我还没有发现存在什么“无限”的东西。难道“空间”并不存在?或许有这个可能。空间或许只是一种形式,物质也一样,三维世界可能是一种幻觉,一种投影,也就是说,物质到底存不存在,空间到底存不存在,并不重要,重要的是,你能感觉到它存在,如果宇宙真是程序模拟,能达到这个目的就已足够。因为它成功地欺骗了你,让你以为你所感知到的东西是“真实”的。这正是信息宇宙论的观点。信息宇宙论看重的是信息,宇宙的目的是表达和传递信息。回到“真实”的问题,倘若真和假双方都永远无法证明自己,那争论真和假又有什么意义呢?不过,真的就是真的,不存在真实,也是一种真实,用另一句话说:真相总会在某个地方,也许会被人发现,也许永远不会被发现,但无论如何,它都一直在那个地方,不受任何人任何事的影响。