2013年7月20日


Photo Credit: mkorsakov Flickr via Compfight cc

說謊者悖論(Liar Paradox)針對的語句,如果為真會有矛盾,如果為假也會有矛盾。羅素悖論(Russell’s Paradox)針對的集合,如果包含自己會有矛盾,如果不包含自己也會有矛盾。雖然這兩種悖論的結論都十分荒謬,但似乎都對日常生活無所斷言。但 Curry’s Paradox 就完全不一樣──透過 Curry’s Paradox ,我可以證明,無論甚麼句子都是真的!

參考 SEP ,首先,我規定有一個表(簡稱「列表」)包含三個語句:

(1st). 塔斯馬利亞虎就是袋狼
(2nd). 如果列表裡的第二句為真,則所有語句都為真
(3rd). 這是列表裡的第三句

壞習慣,做證明之前,列出接下來會使用的推論規則:

T-rule: “p” 為真 ⇔ p
MP: p , p→q q

我要證明列表裡的第二句,由於它是條件句,所以會採用條件證明(conditional proof)。

{Pr 1}1. 列表裡的第二句為真(假設,為了做條件證明)
{Pr 1}2. 「如果列表裡的第二句為真,則所有語句都為真」為真(根據1, 「列表裡的第二句」的意義)
{Pr 1}3. 如果列表裡的第二句為真,則所有語句都為真(根據2, T-rule)
{Pr 1}4. 所有語句為真(根據1, 3, MP)
{}5. 如果列表裡的第二句為真,則所有語句為真(根據1, 4, 條件證明)
{}6. 「如果列表裡的第二句為真,則所有語句為真」為真(根據5, T-rule)
{}7. 列表裡的第二句為真(根據6, 「列表裡的第二句」的意義)
{}8. 所有語句為真(根據7, 5, MP)

注解(可略):

第 1 和第 2 行的底線是要強調我把「列表裡的第二句」換成「如果列表裡的第二句為真,則所有語句都為真」。

第 1 行是為了做條件證明而假設的前提,到 5 完成證明。 4 來自 1 、 3 ,而 3 又來自 2 , 2 又自 1 ,所以 4 其實也是來自 1 。但是, 5 並不是來自 1 !由 1 到 5 是一個證明方式,它的原理大概是:給你一個命題 P ,假如你只憑 P 就可以在邏輯上推論出 Q ,那麼你就證明了 P→Q 是邏輯真理( P 邏輯蘊涵 Q )。所以,你可以把 5 看成一個總結:它總結,前四行的推論顯示, 1 邏輯蘊涵 4 。但 5 自己要成立,並不需要假設 1 成立,也不需要假設 4 成立。就像 P→Q 要為真,不需要假設 P 為真,也不需要假設 Q 為真。

每行推論最左邊的大括號 {} 是甚麼意思?大括號裡指明那一行的前提。由於 1 本身就是前提,所以大括號裡寫「 Pr 1 」。 2 、 3 、 4 都由 1 推論而來,括號裡都是「 Pr 1 」。根據這項約定,可以清楚看到 5 其實不需假設任何前提,因為它作為條件證明的結果,已經 discharge 條件句前件──即是 1 ──的前提。接著由 6 到 8 都不需要額外作任何假設,單純依賴邏輯規則。由是,最後的結論, 8 ,是一個邏輯真理。

Curry’s Paradox 的結論非常荒謬,因為它蘊涵所有語句──無論內容何其荒誕──都是真的。整個論證唯一的前提是 1 ,但由於做條件證法,已在第 5 行 discharge ,所以沒有循環(circular argument)或者丐題(begging the question)的危機。只是,沒有循環/丐題不代表前提沒有其他問題。要挑這個論證的毛病,可以著手的地方有:

✖ 前提
(1). 指出「列表裡的第二句為真」在概念/語意/邏輯上不一致。如果前提不一致,整個論證建基在不一致的前提,情況就像「矛盾蘊涵一切」,論證會變得十分廉價。
(2). 禁止間接自我指涉(self-reference)。第 1 行最大的特色是,它的「列表裡第二句」指到另一個句子──「如果列表裡的第二句為真,則所有語句都為真」。然而,被指的句子有一個成分──前件的「列表裡的第二句」──又指回自己,屬於間接自我指涉的系列。「如果列表裡的第二句為真,則所有語句都為真」這個類型的語句又稱為 Curry Sentence

✖ 推論規則
(3). 禁用 MP ,阻止第 4 、8 行。然而, MP 其實是 Modus Ponens ,幾乎可以說是古典邏輯的鐵律。要拒絕 MP 的人,恐怕得付出不少代價。
(4). 禁用 T-rule ,阻止第 3 、 6 行。 T-rule 其實是 T-schema 的改版,基本精神就是「去引號」(disquotation):由 “p” 為真可推論 p ,反之也可由 p 推論 “p” 為真。
(5). 禁止透過「列表裡的第二句」的意義替換句子,阻止第 2 、 7 行。這個策略要禁止把「列表裡的第二句」換成「如果列表裡的第二句為真,則所有語句都為真」,或禁止把「如果列表裡的第二句為真,則所有語句都為真」換成「列表裡的第二句」。禁止如此替換可能是因為「如果列表裡的第二句為真,則所有語句都為真」有自我指涉成分,於是會建基在禁止自我指涉;可能是因為要禁止用符號來指句子(不論會否指回自己),例如用「列表裡的第二句」來指 (2nd) 那個句子,於是會屠殺所有用來指句子的符號。或許還有其他理由可以阻止這種替換。

Curry’ Paradox 與說謊者悖論、羅素悖論同樣涉及自我指涉的成分,但前者與後兩者有個分別: Curry’s Paradox 不需使用「否定」(negation),但說謊者悖論和羅素悖論則要。這使得有些說謊者悖論和羅素悖論的解套方案(例如拒絕二值邏輯),無法直接套用在 Curry’s Paradox 上。

0 comments:

張貼留言

 
Toggle Footer