數理化 > 邏輯學語言
  到目前為止,人類所使用的語言,可以分為三類:自然語言(如:英語和漢語)、半形式化語言(如:數學的語言。即:自然語言加特定的符號)和形式化語言(如:邏輯的語言)。本文從自然語言、半形式化語言和形式化語言的特徵看邏輯學的發展。
  自然語言文字的一個重要特徵 : 人們在日常生活中所使用的語言文字,可以分為拼音語言文字和非拼音語言文字兩大類。英語語言文字、俄語語言文字、法語語言文字、德語語言文字、意大利語語言文字、西班牙語語言文字等都是拼音語言語言文字。漢語語言文字是一種非拼音語言語言文字。不管是拼音語言語言文字還是非拼音語言語言文字都屬於自然語言語言文字的範疇。然而,任何一種自然語言語言文字都是一個豐富的、復雜的“符號”係統。這種符號係統包括語音、語匯、語法等作為子係統,每一子係統又都包括許多不同特點的語言單位,單位和單位之間的關係錯綜復雜,但有規律可循。就每一個語言單位(例如,一個詞)而言,它的語音形式是依照語音係統的規則構成的,它的意義與詞彙係統中的許多方面發生聯繫,它的功能受語法規律的支配。語言單位是聲音和意義的結合。語言單位的聲音雖然千差萬別,但是構成不同語言的基礎(音位)通常衹有 40 個左右。這就說明不同的語音的基礎音位是有窮的。由於詞是由有限個基礎音位生成的,於是,構成任何一種自然語言語言文字的詞彙也是有窮的。從而,由有限個詞構成的句子也是有窮的。例如,英語語言文字有 26 個字母組成,英語語言文字中的詞是由有限個字母的有限次組合而成的,因此,英語語言文字的詞的個數是有窮的。英語語言文字的句子是由有限個詞的有限次組合再按照一定的規則生成的,從而,英語語言文字的句子的個數也是有窮的。依次類推由此可得:英語語言文字是一種有窮的語言文字,漢語語言文字也是如此。因為,漢語語言文字是由偏旁部手組成的,雖然漢語語言文字的偏旁部手要比英語語言文字的 26 個字母多得多,但它也衹有有窮多個。漢字是由有限個偏旁部手的有限次組合生成的,有限個漢字的有限次組合再按照一定的規則生成句子,等等。總之,任何一種自然語言文字都是一種 有窮語言 。
  半形式化語言的主要特徵:半形式化語言的種類很多,我們以數學語言為例來分析半形式化語言所具有的主要特徵。數學語言是指數學這一學科特有的語言。雖然數學語言與自然語言有許多共同之處,但是,任何一個數學分支的語言都是在自然語言的基礎上附加一些特定的符號,它們與自然語言相比更具形式化。因此,稱它為半形式化的語言。這種半形式化的語言具有以下三個重要特徵:( 1 ) 無窮性 由於數學研究的對象是“數”與“量”這些無窮概念。而與之相應的任何一種數學語言都是一種無窮語言。因此,它們具有更強的表達能力。就拿最簡單的算術語言來說,它研究的對象是 0,1 , 2 ,…, n ,…這些自然數的性質。除此之外,它還包括+, · 等用來表示自然數加法和乘法運算的符號。對任意的自然數 m 和 n ,人們都可以進行兩個自然數的加法( m+n )和乘法( m·n )的運算。( 2 ) 統一性 由於數學語言中使用了特定的記號,從而使數學語言成為一種半形式化的符號語言,這樣以來,數學語言比任何一種自然語言更具有“統一性”。如:在任何一種自然語言編著的平面幾何學的教科書中,符號“△”都表示三角形。在任何一種自然語言編著的微積分的教材中,符號“∫”都表示積分。因此,數學語言作為一種特定的符號語言,與自然語言相比,它簡單、直觀和嚴密。再如,數學命題:“兩個數和的平方等於這兩個數的平方和再加上這兩個數乘積的 2 倍”。用通用的數學符號,就可以形式地表示為:
  ( a + b ) 2 = a 2 + 2 ab + b 2
  這裏的符號 a 和 b 表示任意的數,符號“+”表示加法運算, ab 表示 a 和 b 這兩個數的乘積。 x 2 表示 x 自乘,即: x 2 =x·x 。這種寫法,全世界的中學生們都認識。( 3 ) 可操作性 數學語言作為一種特定的符號語言,與自然語言相比,它與算法建立了聯繫。因此,它還具有“可操作性”。法國數學家違達提出:我們可以用字母(即符號)表示已知量和未知量,並對此進行純形式的操作,也即我們可以擺脫問題的具體內容,而從一般角度總結出普遍的算法。正如人們所熟悉的,我們可以按照以下的算法去求得任何一個一元一次方程的解:①去分母;②去括號;③移項;④合併同類項;⑤同除以未知數的係數。因此,許多數學家都認為完美的符號係統促進了整個數學的發展。特別地,數學家剋萊因對代數學的情況寫道:代數學上的進步是引進了較好的符號體係,這對它本身和分析的發展比 16 世紀技術的進步遠為重要。事實上,采取了這一步,纔使代數有可能成為一門科學。” (《古今數學思想》,第一册,第 301 頁)正是在這種意義上,數學家迪多內認為:“好的符號往往伴隨着易於使用它們的算法:我們把這理解為計算或常規的推論,就是說一旦確定之後就是永遠如此,對它們的應用幾乎是自動化的,不需要從頭做起,這樣,極為明顯地簡化了數學語言,並且可以集中註意力於證明的基本要素。”與此相反,“常常是由於缺乏能夠說清楚真正實質的符號,數學的某個領域就得不到發展”(鄭毓信,第 41 頁)。數學語言與任何一種自然語言相比較,除了具有以上特點外,還具有無歧異性、簡明性等特點。
  歷史上,第一個有意識地、係統地在數學中使用字母的學者是十六世紀法國數學家韋達。他的這一工作不僅推動了代數學的發展,而且對十七世紀的數學家和邏輯學家萊布尼茨啓發很大。因此,使數學本身有一套完美的、通用的符號,成為萊布尼茨在數學研究中的努力追求。因此,萊布尼茨的工作,導致了他在數學符號發展史上占據着重要的地位。如:萊布尼茨本人創立的微積分符號體係。在他的符號體係中, dx 表示 x 的微分, ddx 和 dddx 分別表示 x 的二階和三階微分。他還用符號 d m x 來表示 x 的 n 階微分,特別地,他把復合函數的求導法則表示成:
  dy/dx = ( dy/dz )( dz/dx )。
  儘管在創建微積分的過程中,牛頓也曾創立了另一種不同的符號體係。由於民族的偏見,英國的數學家曾在很長的時間內對萊布尼茨的符號體係進行抵製並堅持采用牛頓的符號。但終因萊布尼茨的符號體係更為便利,從而得到了普遍的應用並一直沿用至今。
  然而,我國在辛亥革命之前,由於沒有采用國際上通用的數學符號體係。直到 1906 年,京師大學堂使用的教科書上,仍然用天、地、人、元表示未知數,用符號“ ⊥ ”和“|”分別表示加和減,分數則自上而下讀。因此,含有四個未知數 x , y , z , w 的多項式
  w 2 /5 - z 3 /3 + x 2 y 4 /27
  被表示成:
  五 ? 三 ? 二七
  元 二 ? 人 三 ^ 天 二 地 四
  這種表示方法顯然是極不方便的,因此,也就必然遭到淘汰(鄭毓信,第 44 頁)。
  總之,數學符號被看成數學的一個重要組成部分。數學的發展在很大程度上可以被認為數學語言的更新與擴展,而這種不斷更新的數學語言又對自然界的認識與改造提供了更為有力的武器。
  形式化語言及其特徵:形式化語言的種類也很多。我們以邏輯的語言為代表來分析形式化語言所具有的主要特徵。建立邏輯的語言,使邏輯學象數學那樣也有一套完美的、通用的符號,其思想也可以追溯到萊布尼茨。他認為,我們可以建立一種普遍的、沒有歧義的語言,通過這種語言,就可以把推理轉變為演算。一旦發生爭論,我們衹要坐下來,拿出紙和筆算一算就行了。這裏,他實際上提出了數理邏輯的兩個基本思想:構造形式語言和建立演算。但是,對於他所設想的語言,他要求:“它能這樣地形成和排列符號,使得它能表達一些思想,或者說使得它們之間具有和這些思想之間的關係相同的關係。一個表達式是一些符號的組合,這些符號能表象被表示的事物,表達式的規律如下:如果被表示的那個事物的觀念是由一些事物的一些觀念組成的,那麽那個事物的表達式也是由這些事物的符號組成的。”(張傢竜,第 46-47 頁) 萊布 尼 茨的這些論述,實際上就是要將邏輯形式化。不過萊布 尼 茨沒有實現他的兩個設想。 1879年,邏輯學家弗雷格發表了名著的《概念文字——一種模仿算術語言構造的純思維的形式語言》。在這本書中,弗雷格藉鑒了兩種語言,一種是傳統邏輯使用的語言,另一種是算術的語言。從而成功地構造了一種邏輯的形式語言,即:一種表意的符號語言,並且用這種語言建立了一個一階謂詞演算係統,實現了萊布尼茨提出建立一種普遍語言的思想。其實,在萊布尼茨之前,從亞裏士多德開始,對邏輯學的研究所使用的語言就是一種半形式化的語言。這種半形式化的語言就是用字母表達一般概念。如,亞裏士多德在《前分析篇》中用字母來表達一般概念,給出了三段論的推理形式。從邏輯的觀點看,三段論最重要的方面是它的形式。一個三段論推理是否有效,完全决定於它的形式。下面的推理
  ? 所有的植物都是需要陽光的,
  ( 2) 所有的植物都是生物,
  ( 3) 所以,有些生物是需要陽光的。
  就是一個三段論的具體例子。如果用三個字母 p、s和m分別表示這個三段論的大項(陽光)、小項(生物)和中項(植物),那麽這個三段論的前提和結論的推理形式就可以形式的表示如下:
  map
  mas
  sip
  它是第三格的 aai式。這個推理在前提的主項非空的條件下有效( 宋文堅,第 149 ~ 151 頁 )。但是,這裏的三個字母 p、s和m還可以用來表示其它的概念。
  在弗雷格構造的形式語言中,他用“ ? — ”表示判斷符號,用“ ? ﹁— ”表示否定符號,用“≡”表示內容統一符號,用“ f ( a)”表示函數符號,等等。因此,“李四有死”可以表示為: ? — f(a)。 弗雷格使用這些符號,不僅表達了推理的形式和規則,而且還成功構造了第一個初步自足地邏輯演算係統。但是,他使用的符號不利於印刷。1910-1913年,羅素和懷特海發表了《數 學 原理》。在這部邏輯著作中,他們改進了弗雷格的表述方式,發展和完善了弗雷格的形式語言和形式推理係統。
  現在,一個一階謂詞演算係統的形式語言,通常是在命題演算係統的形式語言 l 0 (簡稱:命題語言)的基礎上建立起來的。一個命題的形式語言 l 0 一般由兩部分組成。( 1)形式語言 l 0 的字母表,即 l 0 的初始符號;( 2)形式語言 l 0 的形式規則。下面給出的是一種常用的命題的形式語言 l 0 。
  l 0 的初始符號:
  甲類: p,q,r,s,p 0 ,q 0 ,r 0 ,s 0 ,p 1 ,…;
  乙類: ? , ù , ú , ? , ? ;
  丙類:(,)。
  初始符號相當於自然語言中符號的字母表。形式語言 l 0 實際上有可數可窮多個符號組成,即: l 0 = { ? , ù , ú , ? , ? ,(,), p,q,r,s,p 0 ,q 0 ,r 0 ,s 0 ,p 1 ,… }。不做解釋時,我們衹能從它們的外形和它們所占具的空間上去認識它們。從外形上,我們可以區別出“ p ”與“ q ”不同,“ ? ”與“ ú ”不同等等。經解釋後,甲類符號表示可數無窮多個命題變項,乙類符號是真值聯結詞。“ ? ”稱為否定詞,“ ù ”稱為析取詞,“ ú ”稱為合取詞,“ ? ”稱為藴涵詞,“ ? ”稱為等值詞。並按下表對它們進行解釋。
  p q ? p p ù q p ú q p ? q p ? q
  真 真 假 真 真 真 真
  真 假 假 假 真 假 假
  假 真 真 假 真 真 假
  假 假 真 假 假 真 真
  丙類符號分別是:左括號和右括號,它們起標點的作用。
  一個拼音語言,當它的字母表給定以後,人們就可以隨意地對字母表中的字母進行排列。但是,這樣隨意排列出來的符號序列,並不一定都有意義。於是,人們又規定了一些拼音的規則,使得用這些規則排列出來符號序列有意義,即表示字或者表示一定的意義(即句子)。對於命題語言 l 0 來說, l 0 的初始符號 所組成的符號序列對我們來說,並非都有意義。我們也將規定一些規則,使得按我們的規則形成的符號序列有意義,否則就無意義。
  l 0 的形成規則:
  甲:任一甲類符號是一合式公式;
  乙:如果有窮符號序列 x 是合式公式,則 ? x 也是合式公式;
  丙:如果有窮符號序列 x 和 y 都是合成公式,則( x ù y ),( x ú y ),( x ? y )和( x ? y )也都是合成公式;
  丁:衹有適合以上三條的符號序列纔是合成公式,簡稱為公式。
  這裏,形成規則甲規定:命題變項 p,q,r 等都是公式,這類公式也叫做原子公式,因為它們不能再分解。乙和丙都是由原子公式生成的,因此它們也被稱為復合公式,乙類公式叫做否定式,而丙類公式分別叫做合取式、析取式、藴涵式和等值式,丁是限製性規則,說明哪些符號序列不是公式。
  在命題語言 l 0 的初始符號中,為什麽要有命題變項、真值聯結詞和括號這三類符號呢?因為哲學家爭論的問題都是一些用自然語言描述的語句。在這些語句中,命題又是最簡單的形式。如“亞裏士多德是哲學家”。要把這類命題轉化成計算,就需要把具體的命題抽象化。象數學那樣,把一些具體的量抽象化。如: 1 個蘋果或者 2 個香蕉或者 3 個梨等,把這些具體的量抽象化後,用一個變量 x 表示。但 x 本身是一個抽象的量。這裏的 x 可以代表 1 個蘋果,也可以代表 2 個香蕉,當然也可以表示 3 個梨。現在,我們用符號 p 、 q 等來表示用自然語言描述的命題,因此,對它們的解釋是不固的。需要註意:由於 p 、 q 等表示的不是數量,為了與數學變量相區別,人們把它們叫做命題變項,而不叫命題變量。另外,對任意的兩個數 x 和 y 來說,我們都能做 x 和 y 的加法 x+y 運算。對命題變項 p 和 q 來說,我們給命題聯結詞以固定的符號,將這些符號作為命題之間的運算符號或算子。而括號的使用衹是為了書寫的方便,正如我們在算術的四則運算中也使用括號一樣。還有一點值得一提,我們所使用的命題變項符號 p , q 等表示或真或假的命題,用聯結詞運算所得到的結果,仍然是表示或真或假的命題。這一點也恰好是數學計算結果對、錯的體現。
  命題語言衹能將哲學家討論的問題做一種最簡單的形式處理。隨着研究的不斷深入,我們需要對哲學家討論問題時,所使用的基本單位——命題繼續分析。分析出語句中所含的個體詞、謂詞(即關係詞)和量詞等,從而揭示簡單命題的形式結構。因此,在形式語言 l 0 的基礎上增加適當的符號,就可以建立起一階(形式)語言 l 1 。
  l 1 的初始符號:
  甲類: v , v 0 , v 1 , v 2 ,…;
  乙類: ? , ù , ú , ? , ? ;
  丙類: (,);
  丁類: " , $ ;
  戊類:對於每個大於等於 1 的自然數 n , p n , q n , r n …(可以沒有);
  己類: c , c 0 , c 1 , c 2 ,…(可以沒有)。
  這裏,甲類符號表示可數無窮多個個體變項,乙類符號表示邏輯聯結詞,丙類符號表示技術性符號,丁類符號表示量詞,其中( " )為全稱量詞符號,( $ )為存在量詞符號,戊類符號表示無窮多個 n 元謂詞或關係符號,己類符號表示無窮多個個體常項。另外,在一個一階語言 l 1 的初始符號中,運算符可以有也可以沒有,這裏我們給出的是一個沒有運算符號的一階語言。
  如果我們約定用 a 0 表示甲~丁類中所有符號的集合,用 s 表示戊類和己類所有符號的集合, s 可以是空集,並且 a 0 和 s 是不交的,即: a 0 ? s = ? 。為此,我們稱 a s = a 0 è s 為由 s 所確定的一個一階語言 l 1 的符號集。
  對任何一個一階語言 l 1 來說, a 0 都是不變的,所以甲~丁類符號又叫做邏輯符號。 s 是可變的,戊~己類符號又叫做非邏輯符號。給定 s ,也就確定了一個一階語言 l 1 。 s 不同,所確定的一階語言也不同。我們說給定一個一階語言 l 1 ,就是給定了 l 1 的符號集合 s 。
  l 1 的形成規則:
  甲:個體變項和 s 中的個體常項統稱 s 項, s 項用 t 或加下標表示;
  乙:如果 t 0 , t 1 ,…, t n-1 都是 s 項,而 r n 是 s 中的任一 n 元關係符號,那麽 r n ( t 0 , t 1 ,…, t n-1 )是一個 l 1 表達式;
  丙:如果 a 是 s 表達式,那麽 ? a 也是;
  丁:如果 a 和 b 都是 s 表達式,那麽( a ù b ),( a ú b ),( a ? b )和( a ? b )也都是;
  戊:如果 a 是一個 s 表達式,而 x 是一個個體變項,那麽 " x a 和 $ x a 都是 s 表達式;
  己:衹有適合以上乙~戊四條的符號序列纔是 s 表達式。
  其中:按照規則乙形成的 l 1 表達式叫做原子公式。按照規則丙形成的 l 1 表達式 ? a 叫做 a 的否定式。由規則丁形成的表達式分別叫做 a 和 b 的合取式、析取式、藴涵式和等值式。由規則戊形成的表達式 " x a 和 $ x a 分別叫做 a 的全稱式和存在式。
  總之,在邏輯學中,形式語言最核心的思想是把自然語言描述的語句抽象化、符號化。即:用符號表示客觀世界中或真或假的命題。這樣建立起來的形式語言,除了具有數學語言所具有的一般特徵外,它還具有 離散性 和 遞歸性 。這使得形式語言可以藉助於某些數學的方法進行研究,如公理化方法和集合論模型方法。
  至此,我們就可以將自然語言表述的論斷:“世上决沒有無緣無故的愛,也沒有無緣無故的恨 ” 用一階語言 l 1 的符號刻畫出來。
  這個論斷最簡單的表示方法為: p ( 1 )
  從推理的角度看,我們還應該把這個論斷的表示形式再細分,在這個意義上,( 1 )式又可以表示為:
  沒有無緣無故的愛 也 沒有無緣無故的恨  ( 2 )
  ( 1 )式已被分析成兩個命題。
  ( 2 )式又可以再細分為:
  ? 存在無緣無故的愛 ù 存在無緣無故的恨 ( 3 )
  ( 2 )式中的否定詞被分析出來了。如果令 p 表示:“存在無緣無故的愛”,令 q 表示:“存在無緣無故的恨”,則( 3 )被形式的表示為:
  ? p ù ? q
  如果將( 3 )式中的存在量詞分析出來,( 3 )式又可以表示為:
  ? $ x (無緣無故的愛( x )) ù ? $ y (無緣無故的恨( y )) ( 4 )
  如果將( 4 )式中愛和恨的概念分析出來,( 4 )式又可以表示為:
  ? $ x (愛( x ) ù ? 有緣故( x )) ù ? $ y (恨( y ) ù ? 有緣故( y )) ( 5 )
  如果將( 5 )式中愛和恨的原因分析出來,( 5 )式又可以表示為:
  ? $ x (愛( x ) ù ? $ z 緣故( x , z )) ù ? $ y (恨( y ) ù ? $ w 緣故( y , w )) ( 6 )
  再令 f 表示一元謂詞“愛”, h 表示一元謂詞“恨”,令 g 表示二元謂詞“緣故”,則( 6 )式又可以形式的表示為:
  ? $ x ( f ( x ) ù ? $ zg ( x , z )) ù ? $ y ( h ( y ) ù ? $ wg ( y , w )) ( 7 )
  這樣以來,在命題語言 l 0 中,我們把論斷“世上决沒有無緣無故的愛,也沒有無緣無故的恨 ”形式地表示為: ? p ù ? q 。在一階語言 l 1 中,我們可以把論斷“世上决沒有無緣無故的愛,也沒有無緣無故的恨 ”進一步地表示為( 7 )式。
  但是,在 l 1 中,人們仍然不能處理象“亞裏士多德可能是哲學家”這類命題。要處理這類命題,衹需將一階語言 l 1 (或命題語言 l 0 )進行擴充。即在 l 1 (或 l 0 )的基礎上,增加模態算子“可能”,形式地記作◇。於是,我們又得到了處理模態語句的形式語言 l 1 è {◇}。在此基礎上,人們又創立了模態邏輯的各類形式係統。從命題語言 l 0 到一階語言 l 1 ,再到模態語言 l 1 è {◇}的這一過程,類似於數集的擴充。即:人們最先認識和使用的數都是一些自然數(即:正整數),如 1 , 2 ,…, n 等等。所有自然數集的全體記作 n 。隨後人們認識了數零,即: 0 。由於生産和生活的需要,在引入負數的概念之後,數集就隨之擴大。於是,就有了整數集 z 。即:整數集包括:自然數(正整數)、零和負整數。
  亦即:
  z = { 1 , 2 , 3 ,…, n ,…} è { 0 } è {…, -n ,…, -3 , -2 , -1 }
  = {…, -n ,…, -3 , -2 , -1 , 0 , 1 , 2 , 3 ,…, n ,…}
  隨後,人們把整數加密,引入了分數的概念,例如,在 1 和 2 之間加入了 1/2 。在此基礎上,整數集 z 就被擴大到了有理數集 q 。最後,在有理數集的基礎上,又增加了無理數,有理數集被擴充到了實數集 r 。即:
  n í z í q í r 。
  總之,隨着生産和生活的需要,數集在不斷擴大。同理,隨着對邏輯學的深入研究,邏輯所使用的形式語言的符號集也在逐步擴大,並由此得到了不同的形式語言。
  結 論: 根據以上分析可以得出:( 1 )從亞裏士多德開始,直到萊布尼茨設想要建立一種“普遍語言”(即:形式語言),這一設想後由弗雷格完成。這一時期對邏輯學的研究主要采用的是半形式化語言。( 2 )弗雷格之後的邏輯學研究使用的是形式語言。由此可以推出:邏輯學的發展在很大程度上可以被認為是邏輯語言的更新與擴展。( 3 ) 20 世紀初之前,由於中國一直未能使用字母表示變量,也未能使用字母表示概念。這不僅阻礙了數學在中國的發展,也阻礙了邏輯學在中國的産生。所以, 20 世紀初之前,中國沒有邏輯。這裏的邏輯,既是指亞裏士多德意義下的邏輯也是指萊布尼茨意義上的邏輯。( 4 )如上建立起來的邏輯語言,被看成邏輯學研究的兩大支柱之一,並且邏輯學的發展,在很大程度上被認為是邏輯學所使用的語言的擴展。而這種不斷擴展的邏輯語言又對人們的思維和推理提供了更為有力的工具。因此,從語言發展的觀點看, 21 世紀邏輯學的發展仍然依賴於邏輯語言的發展。也就是說, 21 世紀邏輯學要取得長足的發展,首先,研究邏輯學所使用的語言必須取得長足的發展。但是,這種發展是否還建立在現有形式語言的基礎上,這是有待於邏輯學研究者們深入研究的一個重要的問題。如,將來“形式化”的意義是否還是我們這篇文章中第三部分介紹的內容等等,這些問題都有待於 21 世紀的邏輯學工作者們深入研究。