探访莱布尼茨:与大师穿越时空的碰撞

多年来,我都对戈特弗里德·莱布尼茨很感兴趣,尤为是由于早在3个世纪之前,他就彷佛想要制造一种相似Mathematica和Wolfram Alpha的工具,没准还可能会写本《一种新科学》。因此,在最近一次德国之旅中,我对可以拜访坐落在汉诺威的莱布尼茨文献馆感到兴奋不已。算法

翻阅着他发黄的手稿(仍旧够挺,经得起我触碰),我试着想象他写下这些篇章时的思绪,试图将我在这里看到的与3个世纪后咱们所掌握的知识联系起来——这时,我感到了一种共鸣。编程

其中的一些记载,尤为是数学方面的,简直超越了时间,好比说下图中莱布尼茨写下的收敛于√2的无穷级数(文字为拉丁文):函数


莱布尼茨写下的收敛于√2的无穷级数工具

又例以下图中,莱布尼茨试图计算该连分数的值,尽管他的算法是错误的,但他仍把整个过程记录了下来(其中的“Π”至关于等号的早期版本):学习


计算连分数的值,虽然算法错了,但莱布尼茨仍然记录下了整个过程。测试

再比方说下图中对微积分的一点总结,几乎可以列入现代的教科书:编码


莱布尼茨对微积分的一点总结设计

但除此以外还有什么?莱布尼茨的工做及思想的宏观图景又是怎样的?3d

我一直都以为莱布尼茨的形象有些使人难以捉摸。他作了不少看似迥然不一样且绝不相关的事情——涉及了哲学、数学、神学、法学、物理学、历史学,不一而足。而他用来描述本身工做的语言在咱们今天看来又都是来自17世纪的陌生措辞。调试

可是,随着个人进一步了解,以及对莱布尼茨这我的更深刻的体会,我察觉到了隐藏在他诸多成果下的核心思惟方向,而这一思惟方向与我所奉行的现代计算机理念不谋而合。

对知识系统化和结构化的追求

1646年(伽利略逝世后第4年,也是牛顿出生后的第4年),戈特弗里德·莱布尼茨出生在现属于德国的莱比锡地区。他的父亲是一位哲学教授,母亲出身于图书贸易家族。莱布尼茨6岁那年,父亲去世。考虑到他年幼,2年后莱布尼茨才被容许进入父亲的书房,开始在其中徜徉书海。他于15岁进入当地大学学习哲学和法律,并在20岁时从这两门专业毕业。

即使在志学之年,莱布尼茨彷佛就对知识的系统化和规范化很感兴趣。曾有过这样一类模糊的观点长期存在——例如14世纪拉蒙·柳利(Ramon Llull,是马略卡王国 [现西班牙] 的一名做家、哲学家、逻辑学家)在其半神秘主义著做《鸿篇》(Ars Magna)中所表达的——即咱们能够创建起某种通用的体系,在该体系下,从一个适当的(笛卡尔所谓的)“人类思想字母表”中取出符号进行多样组合,就可能表达全部知识。在哲学毕业论文中,莱布尼茨就曾试图探讨这一思想。他用到了一些基础组合数学知识来计算几率。他还提到将思想分解为能够利用“创造的逻辑”进行处理的简单成分。另外,他还加入了一段自称为旨在证实上帝存在的论证。

正如莱布尼茨在晚年所说,这篇他在20岁时写的论文从许多方面来看都很幼稚。但我以为,莱布尼茨正是今后开始了对种种问题的毕生思索。举例来讲,莱布尼茨的法学毕业论文命题是“疑难法律案件”,通篇都在论述这类案件被简化为逻辑与组合数学问题从而得以解决的可能性。

尽管本来有望成为一名教授,然而莱布尼茨最终决定终其一辈子,为多个法庭及执政者提供顾问服务。有时他要贡献本身的学识,追溯艰深然而具备重要政治意义的族谱或历史;有时要对诸如法典、文献等进行系统化规范整理;有时则要进行实际工程设计,例如规划银矿排水方案;还有些时候——尤为是在早年生涯中——他要为政治举措提供“实时实地”的智力援助。

在1672年的一次此类政治行动中,莱布尼茨被派往巴黎,以后在那里度过了4年——在这一期间,他结识了不少当时的学界翘楚。在此以前,莱布尼茨的数学知识只处于基础水平。但在巴黎,他有机会学习全部最早进的思想与方法。举例来讲,他曾找到克里斯蒂安·惠更斯,并成功经过了测试——求全部三角形数倒数之和,因而后者赞成指导莱布尼茨学习数学。

通过多年的努力,莱布尼茨完善了他将知识系统化、规范化的理论,并一直在构想着一种能使知识——按如今的说法——可计算化的总体结构。他所设想的第一步是发展一门“符号学(ars characteristica)”——即用符号表示事物的方法论研究,并实际制定一套统一的“思惟字母表”。在他接下来的设想中,经过这套单一指代体系,咱们有可能“经过演算找到任何领域的推理真理[1], 就像算术和代数那样。”这与现在咱们所知的计算理论有着惊人的共同点。

他在提到本身的理念时用到了很多野心勃勃的说法,例如“知识方法总论”、“哲学语言”、“通用数学”、“通用系统”,还有“思惟演算法”。他料想这一系统最终会应用在全部领域:科学、法律、医学、工程学、神学等等。但在其中一门学问中,他很快就取得了显著成就,那就是数学。

据个人了解,数学史上将数学符号看成中心课题来研究的案例惊人地少见。仅有几例,如19世纪末期,现代数理逻辑论开端伊始,戈特洛布·弗雷格(Gottlob Frege,德国数学家、逻辑学家和哲学家,数理逻辑的奠定人)及朱塞佩·皮亚诺(Giuseppe Peano,意大利数学家、逻辑学家和语言学家,数理逻辑先驱)等人的工做。还有近年来我在创建Mathematica和Wolfram语言的过程当中的一些尝试。但莱布尼茨早在3个世纪前就开始了这项工做。而且据我揣测,莱布尼茨在数学领域的成就,很大程度上要归功于他在符号系统方面作出的努力,以及这一系统所带来的更为明晰的数学结构和流程之推论。

在数学领域符号系统方面的成就

当咱们阅读莱氏的论文时,会发现他使用的符号及其演变十分引人入胜。其中不少看上去很是现代化。尽管也有少数17世纪的鬼画符,比方说他偶尔会用炼金术或占星术中的符号表示代数中的变量:


莱布尼茨用炼金术或占星术中的符号表示代数中的变量

在此处,他把Π用做等号,并略显俗套地把这个符号当成一个天平:把某一边的“腿”写得稍长以表示小于(“<”)或者大于(“>”):


莱布尼茨表示的大于(“<”)或者小于(“>”)

这里的上划线用来表示合并同类项——能够说是个比括号更好的主意,尽管不方便打字和排版:


莱布尼茨用上划线表示合并同类项

今天,咱们会用根号来表示根。可是莱布尼茨想在积分里也使用这个符号,并配以带着漂亮小尾巴的“d”。这让我想起咱们在Mathematica中使用黑板粗体“微分d”来表示积分。


莱布尼茨在积分里使用根的符号

在解方程时常常会用到±,但这经常使分组过程十分混乱,好比说a±b±c。而莱布尼茨彷佛也遇到了相似的麻烦,但他发明了一种标记法来解决这问题——这种方法即使在现在也实在值得一用:


莱布尼茨发明标记分组±

莱氏使用的一些标记让我也不明就里。不过这些上波浪线到确实赏心悦目:

还有这些小点:

或者是这些看上去颇有趣的图表:

固然,莱布尼茨最著名的符号要数他创造的积分符号(用长“S”表示“总和”)以及“d”。这一系统首次被总结出来就是在这张纸的空白处,日期是1675年11月11日(过后“1675”里的“5”被改为了“3”,也许是出自莱布尼茨的手笔):


莱布尼茨创造的积分符号

我所注意到的有趣的一点是,尽管创造了这些“数学”运算符号,莱布尼茨显然并无为逻辑运算发明一套相似的符号。“或”仅仅使用拉丁文“vel”表示,“且”则是“et”,如此等等。而当他想到逻辑量词(例如现代的∀和∃)这个点子时,他也只是用拉丁文缩写U.A.和P.A.草草了事。


莱布尼茨用拉丁文缩写U.A.和P.A.

早期建立“算数机”的尝试

一直让我感到反常的是,在思想史上,统泛化运算(Universal Computation)的概念直到20世纪30年代才萌生。而我总怀疑莱布尼茨的手稿中是否隐藏着一份统泛化运算的早期版本——也许甚至有一份图样可供今人解读出一套相似图灵机的系统。可是随着对莱布尼茨越发深入的接触,我清楚地看到了为什么事实并不是如此。

其中一个重要缘由,据我推测,是他并不足够重视离散系统。他将组合数学中的成果称为“不证自明的”,大概是由于他考虑到这些成果能够用运算方法直接证实。而对他而言,只有“几何的”或者连续数学问题才值得为之发明微积分来解决。在描述曲线特性等问题时,莱氏想出了相似连续函数的方法。但他从未把这种函数思想应用在离散数学中——而这却极可能引导他开始思考构建函数的通用元素。

莱布尼茨认识到了他的微积分的成功,而且一心想为其余领域也创造出相似的“微积分”。在他与统泛化运算另外一次失之交臂的经历中,莱布尼茨想到用数字来将逻辑特征编码。他设想将某事物的每个可能的性质都与一个不一样的质数相对应,而后再经过这些表明其性质的质数之乘积来描述这一事物——随后再用数学运算来代替逻辑推演过程。可是他只考虑到了静态性质——而且从未能想到像哥德尔数那样,将运算一样用数字进行编码。

尽管莱布尼茨没有产生统泛化运算的思想,但是他确乎体会到了一个理念:计算在某种意义上是机械化的。并且他在早期彷佛确实下过决心要建造一个实实在在的机械计算机来进行数学运算。可能部分缘由是为了他本身用着方便(这但是开发新技术的万能理由!),由于撇开他在代数及其余方面的造诣不谈,他的手稿边上写满了基础(有些仍是错误的)算式——而这些也一并被保存下来供后人观瞻:

在莱布尼茨的时代,曾有过零星的几个建造机械计算机的实例,而且在巴黎时期,他无疑见识过帕斯卡于1642年建造的加法计算器。可是莱布尼茨致力于建造一个“全能”计算机,而这将是首次能够在一台机器上进行所有4种基础运算。他还想给这机器设计一个简单的“用户界面”:使用者能够将操做柄扳向一方进行乘法,扳向反方向则是除法操做。

在莱布尼茨手稿中,探讨该机器的工做原理的各式简图随处可见:


莱布尼茨手稿中的各式简图

莱布尼茨本来设想他的计算机能具备优秀的实际功用——实际上他彷佛但愿能将其发展为一桩成功的生意。但实际上,单是让这台计算机稳定地运做便令莱布尼茨劳心费力。由于正如那一时代的其余机械计算机同样,这台机器不过是个被夸大的了里程表。它和近200年后查尔斯·巴贝奇(Charles Babbage,英国数学家、发明家兼机械工程师)的机器相似,当发生大规模的连动时,从机械角度上很难实现大量的转盘同时运转。

莱布尼茨最初建造了一台木制原型机,计划仅用来处理3到4位数的运算。可是在他1673年造访伦敦期间,这台原型机在给罗伯特·胡克等人展现的过程当中表现得差强人意。不过他始终认为本身可以解决全部问题——比方说他在1679年(用法文)写下的“算数机最终修正案”:


莱布尼茨1679年用法文写下的“算数机最终修正案”

然而1682年的一篇笔记说明还有更多的问题亟待解决:

但莱布尼茨仍依据其笔记起草了一份方案——而且签约了一位工程师来建造一台可以处理更高位数的铜制版本:

读莱布尼茨为这台机器写的“营销材料”是件趣事:


莱布尼茨为“算数机”写的“营销材料”

另外还有部分“使用说明”(附带365×24的计算过程做为“工做样例”):


“算数机”的“使用说明”

并附以用法详图做结:


“算数机”的用法详图

尽管付出了这么多的努力,计算器所存在的问题始终没能解决。事实上,40多年来,莱布尼茨始终在坚持调试他的计算器——大概总共为之投入了(至关于现今的)超过100万美圆。

那么这台计算机的实物最终下落如何呢?在我参观莱布尼茨文献馆时,不禁得提出了这个问题。“好吧,”东道主说,“能够给你看看。”在一间储藏室里,摆满箱子的排架之间,莱布尼茨的计算器就摆放在一个玻璃盒中,看上去崭新如初——我顺便拍了这张古老与现代怪异并置的照片:


莱布尼茨创造的“计算器”,后景隐约可见本文做者、正在拍照的沃尔夫勒姆。

全部的部件都在这里。包括一个便携的木制收纳箱。同时还配有一个曲轴摇柄。另外,若是一切运转正常,轻摇几分钟就可以赋予它处理一切基础数学运算的能力:

莱布尼茨发明的手摇计算机细节,能够作四则运算。

数与算术的本质:莱布尼茨与2进制

莱布尼茨明确地将他的计算机看做一个实用方面的项目。但他仍但愿从中概括出些许结论,例如一条能够用来描述机械联动几何学的普适“逻辑”。同时,他还思索了数与算术的本质。而且另辟蹊径地想出了2进制。

几个世纪来,10进制之外的进位制一直被应用于趣味数学中。但莱布尼茨认为2进制具备特殊的含义——说不定它是链接哲学、神学与数学的重要枢纽。在他与从中国回来的传教士交流,并认识到2进制正是《易经》的核心思想后,便有了更大的动力,而且认为这与本身的“通用系统”在思想上殊途同归。

莱布尼茨琢磨有可能建造一台以2进制为基础的计算机。但他彷佛仍是以为只有10进制才有实用意义。

莱布尼茨对2进制的记载读来有些奇怪。有些部分很清晰实用——并且仍显得十分现代。但还有些部分很是有17世纪的风格——好比讨论2进制证实了万物都是来自虚无,其中1可被视为上帝,而0则象征着无。

在莱布尼茨以后的数个世纪里,几乎没人用2进制作出些许成果:事实上,直到近几十年来数字计算机的兴起才改变了这一局面。因此,看看莱氏的手稿,其中他用2进制进行的计算极可能是最为“超越时代”的内容了:


莱布尼茨手稿中用二进制进行的计算

经过2进制的研究,莱布尼茨从某种意义上探寻着可能存在的最简单的基础结构。毫无疑问的是,在讨论他称为“单子”的概念时,他也是在进行相似的工做。我不得不认可,我历来没能真正理解单子论。每当我以为本身就要搞懂的时候,其中说起灵魂的部分又总会让我摸不着头脑。

尽管如此,莱布尼茨彷佛推论出“全部可能世界中最好的一个”即“由最少的规则构建出最多样化现象”的那一个,这一点始终深深吸引着我。其实,在撰写《一种新科学》以前,那仍是1981年,我刚开始学习并构建一维元胞自动机,我就曾考虑给它们命名为“集群(Polymones)”——可在最后一刻,单子论再一次把我搞懵,吓退了我。

封存的文件及手稿

莱布尼茨和他的文件一直都被包裹着一层神秘的色彩。库尔特·哥德尔——也许是他的妄想症做祟——彷佛就曾坚信莱布尼茨发现了被压制了几个世纪的伟大真理。然而虽然在莱布尼茨辞世后,他的手稿确实被封存了起来,但那是由于他在历史和族谱方面的研究——以及其中可能牵涉到的国家机密。

莱布尼茨的文件在好久之前就已开封,3个世纪后,咱们可能会觉得其中的方方面面都已被透彻地研究过。可实际状况是,即便在如此长的时间里,也从没有人真正细致地通览过全部遗稿。这倒不是由于文件量太大。这些文件一共算来也只有200,000页——估计能占去架子上十几格的空间(这仅比1980年以来我我的的文档略大一点)。真正的问题是材料的多样化。不只仅是涉及多种学科。还由于有不少重叠的草稿、笔记和信件,其间的关系不甚明了。

莱布尼茨文献馆保存了一系列使人费解的文件。从尺寸巨大的:

到十分迷你的(随着年龄增加,近视愈发严重,莱布尼茨的字也越写越小):


随着年龄的增加,莱布尼茨的字越写越小

档案里的大多文件都看上去十分严肃谨慎。但尽管那个年代纸的价格不菲,咱们仍能发现莱氏的随手涂鸦留存至今(这会不会是斯宾诺莎?):

莱布尼茨曾与数百人有书信来往——其中既有名流也有凡夫——信笺遍布欧洲。在300年后的今天,后人能从中找到雅各布·伯努利等人寄来的“随笔短笺”:


雅各布·伯努利等人给莱布尼茨寄来的“随笔短笺”

莱布尼茨长什么样?请看这里,既有他的官方肖像,也有不带那顶特大号假发(甚至在当时也是个笑柄)的版本,据推测他那么作是为遮住本身头上的一大块囊肿:

莱布尼茨像,听说他戴假发是为了隐藏头上的囊肿。


在莱布尼茨文献馆里,除了大量文件和他的机械计算机以外,还有一件物品:他出门时带在身边的一把折椅,他将其挂在车箱里,这样在车箱移动时他仍能继续书写:


莱布尼茨出门时带在身边的一把折椅,方便在车箱移动时也能继续书写

这时咱们不由好奇莱布尼茨的墓碑上镌刻着怎样的箴言。但是实际上,当莱布尼茨在70岁那年与世长辞时,他的政治生涯已跌入低谷,没人为他建造精美的记念堂。尽管如此,我在汉诺威时仍十分热切地想要瞻仰他的墓——却发现碑上只用拉丁文简单地写道:“莱布尼茨埋骨处”。


莱布尼茨的墓碑,上面只是简单地写了“莱布尼茨埋骨处”。

然而,在城市的另外一端,我发现了另外一种形式的记念——一家直销店里的饼干被冠以莱布尼茨的名字,以表示对他的敬意:


以莱布尼茨冠名的饼干

莱布尼茨,成就之下的限制

那么,归根结底,咱们该怎样看待莱布尼茨呢?若是历史以另外一种形式发展,或许莱布尼茨会与现代的计算机技术创建起直接的联系。可事实是,莱布尼茨的大多数尝试都是孤立的——要理解他的工做很大程度上要靠把现代的计算机理论投射回17世纪。

凭咱们如今的了解,很容易看清莱布尼茨已经掌握的知识和他没能搞懂的。他领会到了利用规范化、符号化的指示物来表明多种不一样事物的概念。他还推测可能存在通用化的元素(也许甚至仅须要0和1)能够用来组成这些指示物。而且他意识到,从这些知识的规范化、符号化表示出发,有可能经过机械的方式计算其结果——或许还能够经过穷举全部可能性来开辟新的知识。

莱布尼茨的部分记载显得过于抽象且形而上——有时简直使人恼火。但在某种程度上,他又至关务实。而他在技术上又具备足够的本事,经常可以取得实际进展。他的一向方法彷佛是以试图创造一个用来阐明事理的规范结构为开端——若是能够的话,还要用到规范的符号。在这以后,他的目标便成了建立一种能够系统地得出结论的“演算法”。

说实在的,他只在一个特定领域用这套方法取得了成功:连续“几何”数学。他从未在离散数学上认真钻研,实在是一个遗憾。由于我认为他可能会取得必定成果,甚至不难想象可能就此触及统泛化运算的理念。他也许最终会开始列举可能的系统,就像我在计算机领域所作的那样。

他还在另外一个领域上试验了这套方法,那就是法学。但他在这个方向上起步太早了,直到如今——300年后——计算法学才刚开始显出现实意义。

莱布尼茨还在物理学上作出了尝试。但尽管他在一些具体概念上取得了成果(好比动能),却从没可以像牛顿在他的《原理》(这里指的是《天然哲学的数学原理》)一书中实际作到的那样,总结出一套大型的“世界的体系”。

在某种程度上,我认为莱布尼茨之所为没能实现更高的成就,是由于他太执着于实用性,以及——这一点和牛顿很像——解构实际物理过程,而不是将眼光放在相关形式结构上。由于,若是莱布尼茨曾至少尝试一些我在《一种新科学》里所作的基础性探索——我想这对他而言毫无技术难度——那么科学史恐怕就要被从新改写。

我也开始意识到,当莱布尼茨在发明微积分的公关战中败给牛顿,受到威胁的并不只仅是他我的的名誉,更有一种对科学的思考方式。牛顿在某种意义上是一个典型的实用主义者:他发明了一种工具,而后展现了如何将其应用于计算物质世界中的现实问题。但莱布尼茨的视野更为广阔,也更具哲学意味,他认为微积分的本质并非工具,而是一个足以促使咱们研究其余领域的规范化以及其余通用性工具的范例。

我经常觉得,我所奉行的现代计算化思惟方式是规范化、结构化思考显著且必然的一个特色。但我从未清晰地认识到这种显著性是否仅仅是这个时代,以及咱们使用当代实用计算机技术的经验所带来的结果。对莱布尼茨的关注给了咱们新的视角。事实上,咱们能够看到现代计算化思惟方式的部分核心思想,甚至在远早于这个时代就成为了可能。可是技术大环境的局限和过去几个世纪的理解方式,给这种思想的前途界定了明确的极限。

固然,这也给今天的咱们带来一个发人深省的问题:因为不具备将来的科技大环境,咱们在认识计算化思惟的内核的道路上又落后了多少呢?对我而言,对莱布尼茨的研究使我更加聚焦于这一问题。而有一点是我能够清楚地预见的。

在莱布尼茨的一辈子中,他所见过的计算机寥寥无几,并且它们只能作基本数学运算。现在世界上有数10亿台计算机,而它们能够胜任各类工做。但在将来,计算机的数量必然远大于此(受计算等价原则影响,计算机将更容易制造)。并且毋庸置疑的是,咱们生产的全部物品显然都将由各级计算机制造。最终,全部事物都必定将成为可编程的,小到原子。固然,生物学已经在某种程度上实现了这一点,只是尚有许多约束。但咱们未来终能完全地将其实现,不管何处。

在某种程度上,咱们已经能够看出这暗示着计算过程与物理过程的部分结合。但对咱们来讲,推测这种融合的难度就比如让莱布尼茨设想Mathematica和Wolfram Alpha同样。

莱布尼茨死于1716年11月16日。到2016年就是整整300年了。咱们大可利用这一绝好的时机,确保终于可以完全地研究莱布尼茨所留给咱们的所有遗产——而且庆祝在3个世纪后,莱布尼茨多少重要的远见已经成为现实,纵然是以他永远没法想象的方式。

内容注释

[1] 莱布尼茨将真理分为推理真理和事实真理。其中推理真理是广泛必然的,单凭逻辑学的矛盾律就能够推论出来,它的反面是不可能的。而事实真理是偶然的,它是从概括得来的,必须符合充足理由律,它的反面是可能的。

http://www.guokr.com/article/437228/

相关文章
相关标签/搜索