【數理邏輯四】謂詞邏輯及形式系統 【下】

謂詞邏輯及形式系統 【下】

 

一、謂詞邏輯的邏輯等價與邏輯蘊含

  • 一個謂詞公式想變爲命題,具有確定真值。必須滿足以下幾個條件

① 給定個體域(確定模型
② 公式中的所有謂詞都有 明確意義(確定解釋函數
③ 公式中的所有自由變元取定個體(確定變元的真值

  • 和命題邏輯一樣,謂詞邏輯也有矛盾式,意思是:句子φ,對於φ所屬語言對應的所有模型M(這裏的M應當是一個集合)它的語義解釋函數是:

                                                                 

舉幾個矛盾式的例子,
∀x(Ax ∧ ¬Ax)
∀xAx ∧ ∃y¬Ay
∃x∀y(Ryx → ¬Ryy)
與矛盾式相反的是,句子φ,如果對於φ所屬語言對應的所有模型M(這裏的M應當是一個集合)它的語義解釋函數是:
                                                                

則稱之永真式

  • 謂詞公式有4個層次的“永真”

                                                        

第一層永真:                                          

給定個體域D,公式A中各謂詞符號的 解 釋 I , 如 果 A 中 的 自 由 變 元 x1,…,xn 分別取值 u1,…,un 時A真,

A在u1,…,un處真

第二層永真:如果A在自由變元的任何取值下都真,稱A在解釋I下真
第三層永真:如果A在每個解釋I下均真,稱A在D上永真
第四層永真: 如果A在任何個體域D永真,稱A永真
 

〉 如果對於某個個體域,謂詞的某個解釋,和自由變元的某個取值,公式A在此處取值真,則稱公式A是可滿足式
〉 公式A不可滿足時也稱A是永假式
 

謂詞邏輯的邏輯等價與邏輯蘊含

  • 和命題邏輯一樣,謂詞邏輯的等價(當且當)是指兩個句子公式φ和ψ的真值永遠相等。不過由於謂詞邏輯使用的賦值函數加入了模型的概念,因此表示二者之間真值相等的公式是

                                                               

 

  • 如果按照評估法,其表述應當是:句子φ,如果對於φ所屬語言對應的所有模型M(這裏的M應當是一個集合)模型中的每一個評估函數g,它的語義解釋函數是:


                                                                

不管用什麼方法,如果給定兩個句子,我們現在可以輕而易舉地判斷它們是否等價。有了邏輯等價式之後,在謂詞演算是就可以相互替換了。如果替換項和被替換項等價,那麼替換後原句仍然等價。

  • 邏輯等價 :A╞╡B當且僅當對一切域、解釋和變元取值狀況,A和B都具有相同的真值
  • 邏輯蘊涵  : A╞B當且僅當對一切域、解釋,一切使A成真的變元取值狀況均使B成真
     

重要的謂詞演算永真式

# 1

所有命題邏輯中的重言式都是謂詞演算永真式
當A不含變元x時,∀xA╞╡A,∃xA╞╡A
〉 ∀xA(x)╞A(x),A(x)╞∃xA(x),∀xA(x)╞∃xA(x)
〉 ¬∃x¬A(x)╞╡∀xA(x)
〉 ¬∀x¬A(x)╞╡ ∃xA(x)
〉 ¬∃xA(x)╞╡∀x¬A(x)
〉 ¬∀xA(x)╞╡∃x¬A(x)

#2

當公式B中不含自由變元x時,有:
〉 ∀xA(x)∨B╞╡∀x(A(x)∨B)
〉 ∀xA(x)∧B╞╡∀x(A(x)∧B)
〉 ∃xA(x)∨B╞╡∃x(A(x)∨B)
〉 ∃xA(x)∧B╞╡∃x(A(x)∧B)

#3
當公式B中含自由變元x時,有
〉 ∀x(A(x)∧B(x))╞╡∀xA(x)∧∀xB(x)
〉 ∀xA(x)∨∀xB(x)╞ ∀x(A(x)∨B(x))
〉 ∃x(A(x)∧B(x))╞ ∃xA(x)∧∃xB(x)
〉 ∃x(A(x)∨B(x))╞╡∃xA(x)∨∃xB(x)
#4
量詞的組合與順序
〉 ∀x∀yA(x,y)╞╡∀y∀xA(x,y)
〉 ∀x∀yA(x,y)╞∃y∀xA(x,y)
〉 ∃y∀xA(x,y)╞∀x∃yA(x,y)
〉 ∀x∃yA(x,y)╞∃y∃xA(x,y)
〉 ∃x∃yA(x,y)╞╡∃y∃xA(x,y)
#5
當C中無自由變元x時,有:
〉 ∀x(C→A(x))╞╡C→∀xA(x)
〉 ∃x(C→A(x))╞╡C→∃xA(x)
〉 ∀x(A(x)→B(x))╞∀xA(x)→∀xB(x)

二、關係

【關係】的概念無論在語言學還是數學都是都是非常重要的概念。從語言學的角度,表達關係的句法結構通常都不是線性的連續結構;從數學的角度,關係通常是某個有序對集合滿足某種性質的子集。但是,無論是語言學還是數學大部分是從形式的角度研究【關係】。如果從語義的角度,那麼就可以利用我們在前面建立的一階謂詞邏輯的語義框架研究【關係】。我們這裏的重點是從自然語言的某些語言現象出發,討論【關係】的一些性質。具體地說,本節關注的【關係】的性質包括,自反關係非自反關係、對稱關係、非對稱關係、反對稱關係、傳遞關係和連接關係(connected)。

在前面我們曾經舉過一個關於“大於”表達式的例子,並指出這種關係有傳遞性,如果A>B且B>C則A>C。因此關於“大於”的邏輯推理也是以這種關係爲根據。因此,我們首先可以用一階語言表達這種【關係】

                                                   

其中,L表示“大於”關係。對這個一階語言表達式的語義解釋就是:
設M是任意模型,則
                                                  

意思是,命題是永真式。由此我們可以從真值定義推論,在下列情況下命題爲真:
設指稱對象集合爲D,該集合的成員d1,d2,d3, …∈D;如果任意兩個成員具有有序對<d1, d2>∈DxD,<d2, d3>∈DxD,則<d1,d3>∈DxD。此時如果爲關係R在模型M賦予解釋函數
I(R),那麼,當上式的命題爲真時,其I(R)就被稱作具有傳遞性。因此“大於”關係具有傳遞性
除了“大於”關係以外,另一種具有傳遞性的關係是“相同”關係。不過“相同”關係和“大於”關係的區別在於另外一種性質:對稱性對稱性的意思是,有序對中的兩個元素對調位置其命題仍然成立。因此,“相同”關係兼具對稱性和傳遞性。至於“相同”關係的命題和上面的“大於”關係命題差不多,這裏就不列舉了,你可以自己補上。
這裏需要注意的是對關係的解釋函數I(R)。解釋函數I是從符號與模型域D中的元素或子集合的對應的表達,顯然,關係R是D中的子集,但這個子集的成員不再是個體元素,而是<有序對>。“有序對”的概念是數學概念,而且在國內屬高中數學的範圍,大部分同學應當或多或少知道,但這裏我試着從語言學的角度談談。

指稱論的角度,所有符號都必須找到一個唯一指稱對象作爲“解釋”,這個“唯一對象”既可以是個體也可以是個體集合。專有名詞對應的是個體,普通名詞對應的是個體集合。但是有些指稱對象或對象集合無法用單個符號表示。例如買了一個新手機,說明書上往往會列舉這個手機的產品規格,包括品名、型號、配置、出廠日期、保修日期等等。規格中的每個數據都是這個手機品牌的一部分,換句話說,這些數據作爲一個“共同體”描述了這個手機。數學中,這樣的例子更是司空見慣:平面直角座標系上的點是由兩個實數確定的,一個矩陣是由m x n個元素構成的。因此,由多語言符號個體構成一個“共同體”指稱對象域中的某個個體或個體集合,這個共同體有一個特別的名字:元組 (tuple)。這裏的“元”,可以理解爲“單元”,基本元素的意思,由一些基本元素構成一個共同體,作爲一個符號單位與域中某個個體或個體集合建立解釋關係。如果“元組”中的成分只有兩個,那麼它又有一個特殊名稱:有序對 (ordered pair)。從這個名稱來看,元組中的元素是對“序”敏感的,例如座標點(3, -5)不等於(-5, 3)。元組中的元素,可以來自同一集合,例如座標點中的成分都來自於實數系。而手機規格則不同,其中的每一項數據都來自不同的集合。不過這裏的重點是:元組可以看作與個單個符號具有同樣的地位,用來指稱某個特定的對象。

有了和“元組”的概念,我們就可以從形式上把【關係】理解爲“元組”的集合,這個集合可以用Rxyz...表示。如果元組的元素只有兩個,那麼就稱作“有序對”,由“有序對”構成的集合又稱作“二值關係” (binary relation)。而“二值關係”可以看做是多值關係的基礎,因此從“二值關係”我們可以獲得許多有用的性質。

除了傳遞性、對稱性,關於二值關係的性質還包括自反性。自反性的意思是,兩元素相同的有序對是否滿足某種關係。例如:0=0,我就是我,其中“=”、“就是”,這些表達式所指稱的關係都是符合“自反性”;但是3<3,表達式所指稱的性質就沒有自反性;沒有自反性關係的二值關係又稱作“非自反關係”(irreflexive relation)。

反對稱性(antisymmetric),是另一個有趣的關係性質。這裏不再做形式化解說,只舉一個例子:實數數軸。
在實數軸上,以0爲中心向兩邊延伸,其中除了0以外,所有實數a都可以找到自己的相反數
-a,只有0,它的相反數只能是它自己。所以我們說,實數軸上的所有數,除了0都有對稱性質,而0,由於沒有相反數,但是0也不符合非對稱,因此稱這種關係具有反對稱。

連接性(connected),是一種非常“鬆散”個關係性質,是說一個二值關係中兩元素或者相等,或者對某個關係R,無論Rxy還是Ryx,只要這三者有一個成立,就具備了連接性的性質。因此,在自然語言中,只要可以用動詞、形容詞連接的兩個元素,都可以看做是具有“連接性”性質的關係。

現在,用數軸的概念,將這些關係的性質做一個總結:想象數軸上有一個箭頭,這個箭頭有起點和終點,代表兩個指稱元素,起點是有序對中第一個元素,終點是第二個元素。
有了這個前提,我們將這些關係的名稱,一階語言表達式和它們的說明一併列表如下:

                              

                             

其中,反對稱和連接性的一階語言表達式還可以是:

                

 

                  

非對稱和反對稱的區別是:非對稱蘊含非反身,即,如果非對稱,則非反身。
從自然語言的角度,對【關係】研究可以使我們用精確的數學語言描述句子中詞與詞、詞組與詞組、句子與句子之間的的語義關係。有些關係的性質是否成立和所選定語境——域有很大關係:例如“兄弟”關係,如果我的語境是所有人,那麼既不是對稱關係也不是非對稱關係,只有在語境是“男性”時,才具有對稱性質。下面我們探討一下謂詞邏輯中函數的表示法問題。

 

三、函數

函數是一種特殊的【關係】。從D到D的函數總是可以表示爲關係R,定義如下:
<d, e>∈I(R) 當且當r(d)=e。
而且∀x∃!yRxy在當前給定的模型中爲真。反之,如果對於二值關係R,∀x∃!yRxy在某個模型中爲真,則可定義函數r,則可以賦予唯一的e使得<d, e>∈I(R)對應與任何域元素d。

因此,單參函數可以表示爲二值關係,n個參數的函數可以表示爲n+1值關係。例如和函數+可以通過三值關係的謂詞P表示。亦即,如果域模型是自然數,那麼I(P)則定義爲<n1,n2,n3>∈I(P)當且當n1 + n2 = n3。此時,<2,2,4>∈I(P)而<2,2,5>∉I(P)。在這個模型中,加法交換律的真值歸結爲
∀x∀y∀z(Pxyz → Pyxz)
而結合律的表示儘管可以做得到但更困難些。
∀x∀y∀z∀w1∀w2∀w3((Pxyw1 ∧ Pw1zw2 ∧ Pyzw3) → Pxw3w2),其中w1、w2和w3的意義可以通過下列樹形圖得知:

                                         
很明顯,利用謂詞字母表達函數的性質所得到的公式可讀性並非很好。正因爲如此,那些作爲函數符號的字符通常是謂詞邏輯的一部分。

函數符號,和謂詞字母一樣,也是n參數的,可以有單參、雙參、三參以及多參。不過,謂詞字母后跟n個項形成原子公式,函數符號後跟n個項則形成另一個項,這個項可以是一個表達式,表示域模型中的對象,這和常項和變項的作用相同。因此函數常項與變項一樣,凡常項/變項可以出現的地方函數都可以出現。

如果關於自然數的加法函數可以藉助二值函數符號p表示,那麼,交換律和結合律就可以輕鬆表達:

                                     

這樣,我們不僅得到比謂詞字母的表示法跟簡單的公式,還獲得了複合項(composite term),而這個複合項的構建是通過在項的前面加上(prefixing)函數符號得到的。例如(107)和(108)中的p(x,y)、p(y,x)、p(x, p(y, z))都是複合項。複合項的構建和複合公式的構建方式相同,都是從較簡單的形態開始,因此對複合項的定義也可以用歸納法:

【定義11】
(i) 若t是語言L中的變項或常項,則t是L中的項;
(ii) 若f是語言L中的n參數函數符號,且t1,t2,…tn是L中的項,則f(t1,t2,…tn)也是L中的項;

函數的語義在謂詞邏輯中的語義要稍稍複雜一些因爲我們首先要對項做出解釋。我們需要一個對函數符號的解釋函數I(f),它要將D^n,亦即域的n元笛卡爾乘積映射到某個模型的域。
這時,原來的變項/常項的解釋維持不變,而複合項的的解釋可以通過“評估法”得到:

                             

這時我們纔可以明白爲什麼我們以前對常項、變項的語義解釋函數的定義(定義8【注1】)如此重要,因爲比較當前這個定義,我們就可以知道它們是完全相同的。如果我們採用“替換法”,我們只需考慮項而不用考慮變量,在這種情況下,下標中的評估函數g可以取消。
迄今爲止,我們對謂詞邏輯的介紹都偏向於個體對象的謂詞和關係,以此形成邏輯上較簡單的表達式。在這方面,我們儘量靠近自然語言,因爲自然語言中很少有【詞彙性的函項表達式】(這個觀點不適用於漢語)。但這裏應強調的是,若將謂詞邏輯應用於數學,函數就稱爲基礎而不再是謂詞(也不完全對,對經典邏輯是如此,但是對於組合邏輯以及線性邏輯等不適用)。不過在一個更高的層次上,自然語言也存在着函數的行爲。

在這裏簡單談談邏輯和數學的關係,以及從經典邏輯到非經典邏輯的一個變種:λ-運算的對應關係。

前面我們闡述一個形式系統,這個形式系統由常項、變項作爲詞彙表,通過歸納法的生成規則生成良性公式,然後給出這個公式的語義解釋框架。因此,我們迄今爲止只關注語言——一階語言,而沒有考慮用這個語言乾點兒什麼。這就像我們學外語,只關注詞彙、語法,而從未將學到的語言技能應用到實踐中。
如一階謂詞的一個應用:自然數系統。並且通過傳統的謂詞表達式描述部分算術公理:交換律和結合律。但是我們看到,謂詞表示法是非常笨拙的,因此在這個形式系統中要引進一個新的範疇——函數。函數和謂詞的最大不同是輸出值的類型,謂詞值的類型是真與假的所謂布爾值,而函數的輸出類型則是可以和輸入值同類,這樣,函數值的處理就可以和數字、常項、變項一樣了。
有了函數的概念,一些不同的名稱的元素例如常項、變項都可以統一起來,作爲一個統一概念處理,這就是【項】的概念。在正文的定義11中,我們將變項、常項和函數符號統一定義爲【項】,從簡單項到複合項的構建,作者所用的術語是“前加”(直譯是“前綴”)——prefixing,也就是說在【項】前面“前綴”函數符號就可以構建更復雜的【複合項】。

不過,如果仔細研究定義11我們會發現一個非常有意思的事實:函數符號和變項之間的區別消失了。特別是定義(ii),如果我們遞歸應用這條定義,例如,我先反覆應用定義11-(i),得到若干變項t1,..tn,然後應用(ii),得到一個函數f,這時f也是一個【項】,那麼我再次應用定義(ii),不過這次的變項是不再是t,而是f,因爲f也是項,我們就遇到了以前從未遇到的問題:當函數的參數也是函數時,會發生什麼?

如果將謂詞邏輯應用於數學,那麼謂詞將“退居二線”,第一線的角色將由函數承擔,這裏我們已經看到對算術公理的兩種表達法:謂詞表達法和函數表達法,顯然後者更經濟,更簡單、更直觀。
爲此,從1920年代起,對一階謂詞邏輯的研究重點開始從謂詞向函數遷移,從而產生了一些非經典的邏輯變種,其中流傳最廣對現代影響最深的就是λ-演算了。首先,λ-演算重新定義了量化式的表達,第二,λ-演算關注的重點也不再是謂詞而是函數,之所以這樣,正如本書作者指出的,一階語言一旦應用到數學,函數就成了基礎元素。而λ-演算的創建者真正的目標也是想通過這套形式系統研究算術公理從而爲數學基礎問題建立公理系統。雖然λ-演算的作者沒有達到目的,原因是哥德爾定理的出現,使得利用任何邏輯系統建立算術公理系統的企圖都不可能,但是,這套系統找到了另一個更重要也是更實用的用途,研究函數的有效計算性問題。因爲邏輯的重點從謂詞轉到函數,應用的模型是自然數系,那麼關於自然數的性質——遞歸——的研究就提上日程。這個問題的實質就是:如何確定給定的函數計算是可以“有效”完成的,這樣的問題稱爲“可判定性問題”(Entscheidungsproblem)。λ-演算的創立者和他的學生通過這樣的研究,逐步創立了後來被稱作“可計算函數”的理論。這套理論所使用的表達工具,就是λ-演算,後來這個理論和其它另外兩個理論,圖靈機、遞歸函數論成爲理論計算機科學的奠基石。那麼λ-演算和我們現在學的一階謂詞邏輯有什麼差異呢?最大的差異,就是:經典一階邏輯是面向謂詞的理論,λ-演算是面向函數的理論。同時λ-演算從理論的高度回答了關於函數的所有問題,例如關於【項】的定義,量詞和量化表達式的關係,特別是對約束變量、自由變量、綁定關係等進一步發展了一階謂詞理論。到了現代,λ-演算已經成爲計算機編程設計語言的理論基礎,同時也是我們研究自然語言語義的工具之一。

四、論證和論證模式

和前面學習的「命題邏輯」和「謂詞邏輯」相比較,這裏我們開始跳脫單個句子的範圍,研究多個邏輯句之間的關係。

通過前面的學習,我們已經認識到,邏輯學的本質就是「如何確定命題的真值」,亦即,求真的過程。手段是:1. 爲命題邏輯、謂詞邏輯定義表達命題的形式語言,將自然語言的句子翻譯成這種形式語言。2. 研究在給定上下文(模型)的情況下確定真值的條件 —— 基本方法是:對給定的句子,通過確定句子成分的意義(非句子成分)與真值(子句成分)來確定整個句子的真值。
下一步,就是:如何從其它句子確定給定句子的真值,換句話說,確定多個句子的命題真值之間的關係,或者,確定句子間的語義關係 (the interdependencies between the meaning of sentences)。

最開始我們介紹到所謂【論證】,就是我們進行推理的形式化表示:一組句子,從第1個句子到第n-1個句子稱爲【前提】,第n個句子稱爲【結論】。所謂【論證模式】,就是從無數個具有相同結構的論證中抽取的「公式」。在前面的「命題邏輯」和「謂詞邏輯」的學習中,我們所關注的是句子,嚴格地說是用邏輯連接符連接的複句、和帶量詞的量化句。這構成了邏輯語言的核心內容——句法和語義。而這裏所關注的如上所述,確定多個句子的命題真值之間的關係,我們用一個術語來命名——【演算】(calculus)、或者稱【演繹】(deduction)。學習研究方法和前兩章相同:從自然語言開始,將其翻譯成邏輯語言(一階語言),然後研究如何從一組句子Φ={φ1,..φn}的真值獲得句子ψ的真值。當然,邏輯語言不是萬能的,它只能處理一小部分自然語言——那些具有和邏輯連接符以及量詞相同意義的「連詞」和「修飾詞」的句子。句子ψ的真值由集合Φ的成員決定,這是「外延性」的又一個實例。外延性原則,不但是集合論中最重要的公理之一,也是邏輯學的重要原則。將自然語言的句子翻譯成一階語言的句子,獲得一個句子集合Φ,通過論證得到結論ψ,把這個寫成公式就是:
                φ1,..,φn/ψ
這個公式就是論證模式(argument schema)的形式化表示。

如果句子集φ1,..,φn爲真使得ψ亦爲真,那麼我們就說這個論證模式是【有效】的(valid)。此時的ψ稱之爲 logical consequence,「邏輯歸結」。

(1)
        小張比小王個子高
        小王比小李個子高
——————————
結論 小張比小李個子高

代入我們上面的論證模式:
        Φ = {小張比小王個子高, 小王比小李個子高} / 小張比小李個子高
假定「小張比小王個子高」和「小王比小李個子高」是我們觀察到的結果、是事實,但小張從未和小李比過個子,第三個句子是通過上面的論證模式「造」出來的,是「形而上」的結果。那現在的問題是:憑什麼從前兩個句子就可以得到第三個句子並且知道該句子的命題真值一定爲真?雖然我們的直覺告訴我們這個天經地義,但是沒有邏輯,我們還真的講不出什麼道理。不信你可以拿這段話問問周圍的人,這裏的關鍵是:小張和小李從未比過誰個子高,而且由於種種原因他們無法走到一起比個子。一般人的答案一般就是:既然「小張比小王個子高」且「小王比小李個子高」,那自然就是「小張比小李個子高」。龐加萊說過:「邏輯的唯一功能是制裁直覺的入侵」,所謂講道理,第一是遵循「道」(principle),第二是按照「理」(reason),這裏沒有「直覺」的容身之地。因此,把上面的事情說清楚,就必須有理論武器,這個武器就是我們下面要展開的話題 —— 論證與論證模式。

  • 接下來讓我們先來確定一些術語

一、推理 (reasoning):推理是一個「過程」,這個過程有「輸入」,有「輸出」。輸入是一些已知爲真的命題和一個待定真假的命題,輸出則是那個輸入時未知真假、但現在已確定真假的命題,因此推理的過程就是求真的過程,從某種意義上,推理可以看做是算法的概念。
二、論證 (argument):論證是推理的表達形式,這種表達形式可以是任何自然語言,可以是計算機語言,也可以是邏輯符號語言。因此論證可以看做是一個算法的實現:給定一組命題真值確定的句子,輸出一個命題真值確定的新句子。
三、論證模式 (argument schema):如果某一類論證被證明是通用的,可重複使用的,可以離開具體場景存在的,那麼論證的結構可以看做一種模式、句型,稱作「論證模式」。
        A (φ1,..,φn) = ψ
四、推演 (inference):論證的具體實例。推理、論證是抽象的概念,而「推演」則是推理論證的具體活動。如果說論證是一個算法實現,推演就是一個運行時。
五、句法 (syntax):論證的純形式側面,論證的結構,不考慮論證中各個成分的意義,例如前提、結論、邏輯歸結等都屬於句法概念。

六、語義 (semantics):論證的內容側面,論證中的命題義——真值,論證是否有效,因此「有效性」可以看做是語義的概念。

對論證、推演的研究,可以從句法的角度進行,此時,我們只根據句子的句法結構而不考慮論證所涉及的內容,因此一個推演是否成立,這裏用的術語是【推導】(derivation)、「可推導的」(derivable),或者說,我們研究的是從前提到結論的可推導性 (derivability);

也可以從語義的角度進行,我們考慮的是一個推演中命題真值與模型之間的關係,一個推演是否成立,用的術語是【有效性】(validity)。

七、有效性 (validity):參見前面的文章。

八、演算 (calculus):如果論證的表達形式是非自然語言的,則稱之爲「演算」。例如在一些大學數學教科書中,邏輯表達式和數學表達式經常混用,亦即,用邏輯語言表達數學命題,這樣的表達式就是典型的「演算」實例,稱作「邏輯數學演算」(logico-mathematical calculus)。在其他的形式科學中,例如Montague語義論中,邏輯作爲元語言,描述自然語言句子的派生過程,其中的表達式也可以看做是「演算」。總之,「演算」就是論證的形式化表示。

八、外延性 (extensionality):對一個概念的定義不是根據其本身的性質而是根據這個概念下存在的實例定義。因此,沒有實例的概念沒有外延性。

  • 如何確定一個論證有效

在給出比較形式化的定義之前,我們先來了解一下【語義有效】(semantically valid)的概念。
首先,正如我們用真假作爲句子命題的真值一樣,我們用「有效」(valid)和「無效」(invalid)表示一個論證模式的「值」。在一個論證(φ1,..,φn)/ψ中,當前提(φ1,..,φn)的每個句子的命題真值爲真且結論ψ的命題真值亦爲真時,則稱爲該論證「有效」。
而所謂【語義有效】是指前提中的每個句子在任何場景下都爲真,這就是我們在謂詞邏輯中所得到的【模型】的概念。前提中句子φ1在任何場景下都爲真表示爲:

                                                          

這是我們用模型的概念表示句子爲真的方法。因此,語義有效是說:我們用模型和真值定義論證中所有前提句子的語義,如果結論句子也根據模型真值得到爲真的語義值,則這個論證模式稱作【語義有效】。下面我們給出【語義有效】的形式化定義:

當論證 (φ1,..,φn) / ψ 滿足下列條件則語義有效:
        i. 對於論證φ1,..,φn中出現的所有謂詞、常項、以及函數都存在解釋的模型(模型的集 合)M,
        ii. 論證中所有句子都得到語義解釋:

                                                      
則有

                                                     

從命題邏輯的觀點來看,我們實際上可以把論證看做是一個蘊含式:
         (φ1∧..∧φn) → ψ
所以【語義有效】的定義也可以寫作:

                                                        

如果我們從語義的角度、或者說從命題真值的角度研究論證的有效性,那麼得到的結果就是關於「語義有效」性的性質。我們會在後面的筆記討論這些性質,現在要了解的就是三個概念:模型、真值、有效性。而「語義有效」如果用大白話說就是:如果前提爲真那麼結論也爲真,那這個推理一定「正確」,稍微「繞」一點兒的說法是:一個推理如果「正確」就不可能出現前提爲真而結論爲假的論證模式。

由此可見,從語義的角度研究論證的有效性,非常直觀,和我們在「普通邏輯」中所學的基本一樣,唯一不同的就是加上了「模型」的概念。

研究論證有效性的另一種方法是句法的方法。所謂句法的方法,說穿了,就是代數的方法。想想我們在學習初等代數時做的恆等變形、包括代數的恆等變形、三角恆等變形,最常用的一個詞是什麼?—— 「推導」。給定一個恆等式,你的任務就是從等號左邊的代數式推導得到等號右邊的代數式。這些代數式中所出現的字母a, b, c, u, v, w, x, y, z,我們關心它們代表什麼嗎?a代表一條板凳、b代表一隻狗,跟我們的恆等式沒有半毛錢關係。我們所關心的,只是這些毫無意義的符號在滿足代數基本法則的情況下如何從一種形式轉換成另外一種形式,這個「轉換」的過程,我們就稱作【推導】(derivation)。推導的實質就是:在保持代數表達式的等值關係的情況下從一種代數表達式轉換成另外一種表達式。

五、謂詞演算形式系統FC

  • 一階謂詞演算形式系統(First order predicate Calculus)

FC的符號系統
〉 個體變元:x,y,z,u,v,w,…
〉 個體常元:a,b,c,d,e,…
〉 個體間運算符號(函數符)f(n),g(n),h(n),…其中n是正整數,表示函數的元數
〉 謂詞符號:P(n),Q(n),R(n),S(n),… 其中n是非負整數,表示謂詞的元數當n=0時,謂詞公式退化爲命題常元
〉 真值聯結詞:¬,→
〉 量詞:(∃x等價於¬∀x¬)

〉 括號:(, )
個體項(term),簡稱
① 個體變元和個體常元是項
② 對任意正整數n,如果f(n)爲一n元函數符,t1,…,tn爲項,則f(n)(t1,…,tn)也是項
③ 除有限次數使用上述兩個條款確定的符號串外,沒有別的東西是項

  • 合式公式

〉 合式公式(well-formed formula),簡稱公式。歸納定義如下:
① 對任意非負整數n,如果P(n)是一n元謂詞符,t1,…,tn爲項,那麼P(0)(命題常元)和P(n)(t1,…,tn)(n>0)是公式;
② 如果A,B是公式,v爲任一個體變元,那麼(¬A), (A→B), (vA)(或(vA(v)))均爲公式
③ 除有限次數使用上述兩個條款確定的符號串外,沒有別的東西是公式

〉 設v1,…,vn是公式A中的自由變元,那麼公式v1…vnA(或v1…vnA(v1,…,vn))稱爲公式A的全稱封閉式
〉 A中不含自由變元時,A的全稱封閉式爲其自身

  • FC的公理

〉 A1:A→(B→A)
〉 A2:(A→(B→C))→((A→B)→(A→C))
〉 A3:(¬A→¬B)→(B→A)

〉 A4:xA(x)→A(t/x)(x爲任一自由變元,t爲對x可代入的項)
〉 A5:x(A(x)→B(x))→(xA(x)→xB(x))(x爲任一自由變元)
〉 A6:A→xA(A中無自由變元x)
〉 A7:(A1到A6的全稱封閉式都是FC的公理)
〉 我們看到A1~A3是命題邏輯的重言式,也是謂詞演算的永真式,A4~A7是謂詞演算的永真式

  • FC的推理規則和重要性質

〉 FC的推理規則(A,B表示任意公式)

〉 A, A→B / B(分離規則
〉 FC的重要性質: ① 合理性、一致性、完備性   ② 演繹定理     ③ 歸謬定理    ④ 窮舉定理
 

謂詞邏輯的全稱引入規則及存在消除規則:

  • 全稱引入規則(universal generalization)

〉 對於任意公式A,變元v,如果┠A,那麼┠vA
證明:
〉 對A的證明序列長度 l 進行歸納
〉 l=1時,A爲公理,那麼:
〉 如果A中有自由變元v,vA就是A的全稱封閉式,根據A7,vA還是公理;
〉 如果A中沒有自由變元,由A和公理A6:A→vA用分離規則, 得到 ┠vA

假設 l<k 時全稱引入規則成立,而A的證明序列是A1,A2,…,Ak(=A)
① 如果Ak是公理,則證明同上;
② 如果Ak不是公理,則一定由Ai和Aj(=Ai→Ak)(i,j<k)用分離規則得出
〉 由歸納假設我們有┠∀vAi┠∀v(Ai→Ak)
〉 同時我們有公理∀v(Ai→Ak)→(∀vAi→∀vAk)
〉 對上式公理和歸納假設結果用兩次分離規則,得到┠vAk也就是 ┠vA
〉 歸納完成,全稱引入規則得證。

  • 全稱引入規則推廣到演繹結果

〉 對任何公式集Γ,公式A以及不在 Γ 中任何公式自由出現的變元v
〉 如果Γ┠A,那麼 Γ┠∀vA

〉 關於全稱引入規則的直覺表述:
〉 如果我們能夠用一組與變元v無關的前提演繹出A(v)
〉 表明我們已經對任意的v導出了A(v),也就是vA(v)
〉 反過來,如果前提中有公式B(v)包含了自由變元v
〉 那麼導出的A(v)是以B(v)爲前提的,即v不是任意的,所以不會有vA(v)成立

  • 存在消除規則(existential instantiation)

〉 設A,B爲任意公式,變元x是公式A,但不是公式B的自由變元
〉 那麼當 ┠∃xA(x),A(x)┠B 同時成立時,有┠B
〉 同樣具有演繹的推廣形式
意義:如果A(x)能推出B成立,而 B 中並不包含變元x,說明 B的成立與x的具體取值無關,只需要有x能使A(x)爲真,B即爲真。
〉 數學證明中經常使用的“不妨設……”句式,即爲存在消除規則。

六、自然推理系統

  • PC和FC的不足之處

〉 FC 和 PC 一樣,證明和演繹過程都過於繁複
〉 爲了追求簡潔,只用2個聯結詞、1個量詞和1條推理規則
〉 如果能夠引入更多的聯結詞、量詞、推理規則,那麼證明和演繹過程會顯得】自然

  • 人們經常在推理過程中使用假設

〉(演繹)爲了證明A→B,常假設A成立,如果能夠證明B成立,則完成了A→B的證明;
〉(歸謬/反證)爲了證明A,常假設¬A,如果導出矛盾(假命題f),則A成立;
〉(窮舉)已知A∨B,要證明C,常假設AB成立分別證明C,如果都能成功,則完成C的證明
〉(不妨設)已知vA(v),要證明與v無關的C,常假設A(v0),如果能夠證明C,則完成C的證明
〉在形式系統中引入帶假設推理規則,能夠使推理過程更加接近人的思維,更加高效和便捷

  • 自然推理系統ND(Natural Deduction)

〉 採用5個聯結詞,2個量詞

少數公理,更多的規則,引入假設
〉 用推理規則體現人的推理習慣

ND的符號系統

〉 引入5個聯結詞、2個量詞
〉 ND的公理
Γ; A┠A(Γ是公式集合
假設引入規則
〉 Γ┠B
〉 Γ; A┠B(源於重言式B→(A→B))
假設消除規則
〉 Γ; A┠B,Γ; ¬A┠B
〉 Γ┠B(源於重言式¬A→(A→B))
〉 推理中的分情況證明
 

  • 自然推理系統ND的推理規則
∨ 引入規則
〉 Γ┠A
〉 Γ┠A∨B(源於重言式A→(A∨B))
∨引入規則(加強形式)
〉 Γ; ¬B┠A
〉 Γ┠A∨B(源於重言式(¬B→A)↔(B∨A))
∨ 消除規則
〉 Γ; A┠C,Γ; B┠C,Γ┠A∨B
〉 Γ┠C(源於重言式(A∨B)∧(A→C)∧(B→C)→C)
∧ 引入規則
〉 Γ┠A,Γ┠B
〉 Γ┠A∧B
∧ 消除規則
〉 Γ┠A∧B
〉 Γ┠A
→引入規則
〉 Γ; A┠B
〉 Γ┠ A→B(即演繹定理)
→消除規則
〉 Γ┠ A→B,Γ┠A
〉 Γ┠B(即分離規則)
¬引入規則
〉 Γ; A┠B,Γ; A┠ ¬B
〉 Γ┠ ¬A
¬引入規則(2)
〉 Γ; A┠f
〉 Γ┠ ¬A(反證法)

¬消除規則
〉 Γ┠A, Γ┠ ¬A
〉 Γ┠B(虛假的前提可以蘊涵任何結論)

¬¬引入規則
〉 Γ┠ A
〉 Γ┠ ¬ ¬A
¬¬消除規則
〉 Γ┠ ¬ ¬A
〉 Γ┠ A
↔引入規則
〉 Γ┠A→B,Γ┠B→A
〉 Γ┠A↔B
↔消除規則
〉 Γ┠A↔B
〉 Γ┠A→B
∀引入規則
〉 Γ┠ A
〉 Γ┠ vA(v在A中無自由出現,FC公理)
∀引入規則(2)
〉 Γ┠ A(v)
〉 Γ┠ vA(v)(v在Γ中無自由出現,全稱引入規則)
∀消除規則
〉 Γ┠ vA(v)
〉 Γ┠ A(t/v)(t對v可代入)
〉 源於FC的公理A4:xA(x)→A(t/x)
∃引入規則
〉 Γ┠ A(t)
〉 Γ┠ vA(v/t)(源於永真式A(t)→vA(v/t))
∃消除規則
〉 Γ┠ vA(v),Γ; A(e/v)┠C
〉 Γ┠C
 

 

  • ND的一些重要性質

〉 FC的公理和定理都是ND的定理
〉 我們這裏引入的 ND 和前面引入的PC, 和 FC 一樣都是合理的、一致的、完備的。但需要注意並不是所有的形式系統都是完備的,有些系統中的定理可能並不能在自身的形式系統內得到判定和證明。
 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章