不可判定性與停機問題

說謊者悖論的類比(liar-paradox analogy)

說謊者悖論是那句古老的話:「這句話是假的」。試著給它指派一個真值,你就會打轉:若它為真,那它所說的成立,所以它為假;若它為假,那它所說的不成立,所以它為真。沒有一致的答案存在,因為這句話談論自己的真假然後又否定它。這個小小的語言陷阱,正是理解「為什麼停機問題無解」的完美直覺幫浦。

停機證明造出了一台「計算版的說謊者」。回想那個建構:假設停機判定器 H 存在,然後造一台機器 D,它問 H「D 在自己的程式碼上會怎樣」,然後做出相反的事。「若你預測我停機,我就迴圈;若你預測我迴圈,我就停機。」這正是「無論你說我是什麼,我就不是什麼」。正如說謊者句無法一致地為真或為假,機器 D 在 H 的判決下也無法一致地停機或迴圈。這個矛盾並不神祕;它是穿著圖靈機戲服的說謊者悖論。

同樣的形狀在數學與邏輯中四處出現:Cantor 的對角線序列(「與每一條列出的序列都不同」)、Russell 悖論(「所有不包含自己的集合所成的集合」)、Gödel 的不完備句(「這個陳述無法被證明」)。每一例中,一個豐富到能指涉自己的系統都能編碼出一個自我否定的陳述,結果要嘛是悖論(在非形式語言中),要嘛是精確的不可能性定理(在形式系統中)。關鍵差別在於:說謊者悖論只是把人弄糊塗,停機證明卻「下了結論」——它沒讓我們卡住,而是乾淨地告訴我們:那個被假設的判定器不可能存在。

說謊者:「這句話是假的」——沒有一致的真值。停機機 D:「若 H 預測我停機,我就迴圈;若 H 預測我迴圈,我就停機」——在 H 之下沒有一致的行為。同樣的自我否定;後者把這份混淆轉化成「H 不可能存在」的證明。

自我否定使說謊者句成為悖論,也使對角線機器成為不可能——同一具引擎。

這是類比,而非等同:說謊者悖論只是沒有真值,而停機證明是嚴謹的矛盾,讓我們得以有效地推論出「判定器不存在」。

又称
this sentence is falsethe self-defeating sentence說謊者悖論這句話是假的