本公眾號(hào)首發(fā)
現(xiàn)在用的通用計(jì)算機(jī),從某種意義講,就是萊布尼茨構(gòu)想的核心理念“理性演算”和“普遍語言”的具體體現(xiàn),控制論的創(chuàng)始人維納說過,如果給控制論找一位守護(hù)神,就找萊布尼茨。因?yàn)槭撬岢隽死硇匝菟愫推毡檎Z言的概念。
一、
萊布尼茨在尋找他的普遍語言的過程中,曾見到過法國來回傳教士白晉給他的先天易圖。在易圖的啟發(fā)下,他完成了二進(jìn)制算術(shù)的工作。并寫出了“論二進(jìn)制算術(shù)”的論文。是他發(fā)現(xiàn)了易圖的陰陽爻可以用阿拉伯?dāng)?shù)字0和1來表達(dá)。因?yàn)橹袊糯囊讏D的陰陽爻從未用阿拉伯?dāng)?shù)字表示過。那么萊布尼茨的逢二進(jìn)一的算術(shù)法則和卦的讀法也不一樣。逢二進(jìn)一是橫著讀的,而卦畫的陰陽爻是從下向上讀的。因此,從本質(zhì)上說,陰陽爻并非二進(jìn)制。那么經(jīng)過萊布尼茨的“誤讀”,竟然讀出了0和1,這是萊布尼茨的最大貢獻(xiàn)。
萊布尼茨(1646-1716)
邏輯史學(xué)家肖爾茲曾寫過一本《簡(jiǎn)明邏輯史》,其中談到“……說起萊布尼茨就好比談到日出?!斑@句話的意思是說,傳統(tǒng)的亞里士多德的形式邏輯被萊布尼茨進(jìn)行了改造。亞里士多德的邏輯從古希臘到萊布尼茨那個(gè)年代統(tǒng)領(lǐng)希望邏輯學(xué)整整達(dá)1千多年的時(shí)間。亞里士多德的最大貢獻(xiàn)是他用字母A、E、I、O表示命題,提出三段論推理以及范疇論等??偲饋碚f他的邏輯就是推理。而萊布尼茨的貢獻(xiàn)是把亞里士多德的推理改造成演算。萊布尼茨的演算就是所謂的“理性演算”??墒窃谌R布尼茨那個(gè)時(shí)代,他也不過就是提出個(gè)構(gòu)想,以及初步的論證,并沒有寫成著作。
真正將萊布尼茨的思想落實(shí)到位的是德國邏輯學(xué)家弗雷格,他于1879年寫成《概念演算》。該小冊(cè)子被認(rèn)為是自亞里士多德以來最偉大的邏輯著作,因?yàn)樗状螌?shí)現(xiàn)了萊布尼茨理性演算的思想。構(gòu)造出數(shù)理邏輯系統(tǒng)!在接下來的10年,他終于完成兩大卷的《算術(shù)的基本規(guī)律》。可就在第二卷完成準(zhǔn)備付梓之際,他收到英國羅素寄來的一封信。認(rèn)為所構(gòu)造的體系出現(xiàn)了悖論。這就是所謂的羅素悖論,從而引發(fā)了第三次數(shù)學(xué)危機(jī)。
弗雷格(1848-1925)
二、
下面再來談?wù)勂毡檎Z言,即符號(hào)邏輯。在演算上二進(jìn)制最簡(jiǎn)單的。萊布尼茨也認(rèn)為他的二進(jìn)制就是一種普遍語言??蓡栴}是,他的二進(jìn)制算術(shù)與當(dāng)代計(jì)算機(jī)沒有絲毫關(guān)系?,F(xiàn)代計(jì)算機(jī)用的的布爾代數(shù),而非萊布尼茨的二進(jìn)制算術(shù)。那么萊布尼茨的二進(jìn)算術(shù)究竟是干什么用的?來看一下羅斯寫的《萊布尼茨》,他說萊布尼茨的二進(jìn)制:“……“最重大的意義還是形而上學(xué)方面的……是神學(xué)方面的……”
布爾是英國人,由于萊布尼茨和牛頓在微積分優(yōu)先權(quán)的爭(zhēng)斗上,歐陸數(shù)學(xué)家對(duì)英倫數(shù)學(xué)家的工作嗤之以鼻。另外,布爾當(dāng)年的工作還存在不少缺陷。經(jīng)過后人的改造才有了個(gè)基本眉目。美國的皮爾士首先認(rèn)識(shí)到布爾代數(shù)對(duì)電路設(shè)計(jì)可能有所幫助,而且自己做過嘗試??伤吘共皇请娖鞴こ處?,設(shè)計(jì)電路失敗了??墒撬呢暙I(xiàn)是將布爾代數(shù)引進(jìn)大學(xué)的哲學(xué)課。
布爾(1815-1864)
布爾的工作沒被歐陸數(shù)學(xué)家的重視??墒怯牧_素在其三大卷的《數(shù)學(xué)原理》中說,布爾的工作屬于純數(shù)學(xué)的研究。這才使人們重新審視布爾的工作。到了1938年,美國的香農(nóng)已經(jīng)注意到電話交換電路與布爾代數(shù)之間的類似性,即把布爾代數(shù)的“真”與“假”和電路系統(tǒng)的“開”與“關(guān)”對(duì)應(yīng)起來,并用1和0表示。于是他用布爾代數(shù)分析并優(yōu)化開關(guān)電路,這就奠定了數(shù)字電路的理論基礎(chǔ)。香農(nóng)據(jù)此寫成碩士論文《繼電器與開關(guān)電路的符號(hào)分析》。這才使布爾代數(shù)大放光彩而一發(fā)不可收拾。布爾代數(shù)所實(shí)現(xiàn)的就是萊布尼茨所謂的“普遍語言”的理念,盡管他們不是同時(shí)代的人,而且也互相不知道對(duì)方的工作。
三、
香農(nóng)和圖靈是同時(shí)代的人。他們二人在美國有過一段時(shí)間的交集。那時(shí)正值二戰(zhàn),圖靈在為英國情報(bào)部門破譯德國人的密碼;而香農(nóng)也為美國軍方服務(wù),他的目的是為羅斯福和丘吉爾的越洋電話保密。一個(gè)要破譯密碼,一個(gè)是要通信的保密工作。可謂南轅北轍。雖是盟國,但還是各為其主,他們?cè)诿艽a方面并沒有什么交流??墒窃诰唧w的學(xué)術(shù)上還是有過相當(dāng)多的交流。
圖靈(1912-1954) | 香農(nóng)(1916-2001) |
早在1936年,圖靈為算法建立了模型,并寫出劃時(shí)代的論文,“論可計(jì)算數(shù)及其判定問題中的應(yīng)用”。圖靈在文章中的本意是解決停機(jī)問題,解決這個(gè)問題首先就要回答什么是“計(jì)算”。那么所謂“圖靈機(jī)”就是這篇文章的副產(chǎn)品!后來馮諾依曼就是根據(jù)圖靈機(jī)設(shè)計(jì)出現(xiàn)代計(jì)算機(jī)的。那么布爾代數(shù)在圖靈機(jī)中起到什么作用呢?最簡(jiǎn)單的計(jì)算就是對(duì)0和1進(jìn)行布爾運(yùn)算(與、或、非)。從最簡(jiǎn)單的邏輯運(yùn)算操作二進(jìn)制信息出發(fā)就可以構(gòu)造出任意的圖靈機(jī)!這就是為什么要去研究香農(nóng)的基本的布爾電路。其中奧秘就在于,用布爾電路就可以構(gòu)造出任意的圖靈機(jī)。
圖靈機(jī)原型
綜上所述,香農(nóng)的布爾電路和圖靈機(jī)的布爾運(yùn)算是相通的。1945年,二次世界大戰(zhàn)結(jié)束了。香農(nóng)不再為軍方服務(wù)??墒撬墓ぷ饔捎谏婷懿荒馨l(fā)表。他又花費(fèi)3年時(shí)間將涉密部分剔除,并在貝爾實(shí)驗(yàn)室的刊物上發(fā)表了“通信的數(shù)學(xué)原理”一文。正是這篇文章,成為信息論的基礎(chǔ),徹底改變了我們的世界觀!
馮諾依曼架構(gòu)及其根據(jù)其原理制造出的各種類型的計(jì)算機(jī),無論是超大規(guī)模的還是手中拿的,都是馮諾依曼架構(gòu)的產(chǎn)物?;剡^頭來看,萊布尼茨的理念終于在我們這一代人手中實(shí)現(xiàn)了。
馮諾依曼(1903-1957)及其原型機(jī)
聯(lián)系客服