從命題演算到 TNT#

Figure 42: 〈螃蟹卡農〉,艾雪

Figure 43: 螃蟹基因片段(DNA 雙螺旋示意)
本章建構印刷數論(Typographical Number Theory, TNT),把命題演算整個納入,再加上能談論自然數的符號與規則。為避免術語混淆:
- N:非形式的數論(人類熟悉的那種)
- TNT:本章將要建構的形式系統
TNT 只處理自然數(0, 1, 2, …),不涉及負數。哥德爾構造的奇妙之處將是:TNT 不只能描述字串的內容,還能描述字串自身的形式。
想表達的數論句子#
從幾個典型數論陳述出發:
- 5 是質數
- 2 不是平方數
- 1729 是兩個立方數之和(拉馬努金的計程車數)
- 沒有任何兩個正立方數之和本身是立方數(費馬大定理的 n=3 情形)
- 存在無窮多質數
- 6 是偶數
這些陳述全可重新用更基本的語彙表達,提煉出以下核心元素:
- 對所有數 b(universal quantifier)
- 存在某數 b 使得(existential quantifier)
- 等於、加、乘
- 0, 1, 2, …
- 大於(可化約為「存在非零差」)
TNT 的符號系統#
自然數(numerals)#
zero: 0
one: S0
two: SS0
three: SSS0S 解讀為「…… 的後繼」。
變數與項#
- 變數:a, b, c, d, e;可無限地附加撇號得 a′, b′, c″ ……
- 項(terms):
- 0 與所有變數是項
- 若 t 是項,則 St 也是項
- 若 s, t 是項,則 (s+t) 與 (s·t) 也是項
括號是強制性的。
(SO+SS0+SSS0)不是良構,必須明確寫成(SO+(SS0+SSS0))或((SO+SS0)+SSS0)之一。
原子與量詞#
- 原子(atom):形如
s=t的字串 - 量詞:
∃b:(存在某 b 使得)∀b:(對所有 b)
書中以
∃與∀表示量詞(原文使用Ǝ與∀)。
自由變數與量化變數#
(b+S0)=SS0 ← 開放公式(b 為自由變數),不是真也不是假
∃b:(b+S0)=SS0 ← 句子,斷言「存在某 b 使 b+1=2」,為真
∀b:(b+S0)=SS0 ← 句子,斷言「所有 b 滿足 b+1=2」,為假- 開放公式:含自由變數,類似於英文中的「謂語」(“is clumsy”)
- 句子:所有變數皆被量化;可確定真假
範例翻譯#
6 是偶數
→ ∃e:(SS0·e)=SSSSSS0
2 不是平方數
→ ~∃b:(b·b)=SS0
1729 是兩個立方數之和
→ ∃b:∃c:SSSSS...S0 = (((b·b)·b)+((c·c)·c))
(SSSS...S0 共 1729 個 S)
費馬 n=3
→ ∀a:~∃b:∃c:((a·a)·a) = (((Sb·Sb)·Sb)+((Sc·Sc)·Sc))
(巧用 Sb, Sc 保證 b、c 為正)
5 是質數
→ ~∃b:∃c:SSSSS0 = (SSb·SSc)
(巧用 SSb, SSc 把「兩數皆 ≥ 2」內建)
質數無窮多
→ ∀d:∃e:~∃b:∃c:(d+Se) = (SSb·SSc)公理與規則#
命題演算規則全數承繼#
第 7 章建構的命題演算規則全部沿用。
TNT 的五條公理#
公理 1: ∀a:~Sa=0 (0 不是任何數的後繼)
公理 2: ∀a:(a+0)=a
公理 3: ∀a:∀b:(a+Sb)=S(a+b)
公理 4: ∀a:(a·0)=0
公理 5: ∀a:∀b:(a·Sb)=((a·b)+a)這五條公理大致對應 1889 年皮亞諾(Giuseppe Peano)提出的五大公設。皮亞諾用「精靈(djinn)」、「神燈(Genie)」、「mesa(後繼)」等中性詞重述為:
(1) 神燈是精靈。
(2) 每個精靈都有 mesa(也是精靈)。
(3) 神燈不是任何精靈的 mesa。
(4) 不同精靈有不同 mesa。
(5) 若神燈擁有 X,且每個精靈把 X 傳給其 mesa,則所有精靈皆得 X。第五條即數學歸納法。所有精靈的集合稱為 GOD——呼應克羅內克(Leopold Kronecker)名言「上帝創造自然數,其餘皆人為」。
新規則#
量詞操作#
- 特化規則(Specification):若
∀u:x是定理,則把 u 在 x 中所有出現處替換為任一項所得的字串也是定理(受限制:替換項不可包含已在 x 中被量化的變數) - 一般化規則(Generalization):若定理 x 中含自由變數 u,則
∀u:x也是定理(受限制:在幻想內,不可對幻想前提中自由出現的變數作一般化) - 互換規則(Interchange):
∀u:~與~∃u:可在任意定理中互相替換 - 存在規則(Existence):定理中任一項可被替換為一個尚未出現的新變數,並在前面加上對應的存在量詞
等號與後繼#
- 對稱(Symmetry):若
r=s,則s=r - 遞移(Transitivity):若
r=s且s=t,則r=t - 加 S(Add S):若
r=t,則Sr=St - 減 S(Drop S):若
Sr=St,則r=t
規則限制的必要性#
若無限制,可導出災難:
[ push
a=0 premise
∀a:a=0 generalization(錯!不該對前提中的自由變數一般化)
Sa=0 specification
]
<a=0 ⊃ Sa=0> fantasy
∀a:<a=0 ⊃ Sa=0> generalization
<0=0 ⊃ S0=0> specification
S0=0 detachment(與「0 不是任何數的後繼」矛盾)ω-不完備:缺失的歸納#
僅憑上述規則,可以證明這個「金字塔」般的家族:
(0+0) = 0
(0+S0) = S0
(0+SS0) = SS0
(0+SSS0)= SSS0
...每一條都不難導出,但統括它們的句子 ∀a:(0+a)=a 卻無法被證!
若一個系統的「金字塔家族中所有字串皆為定理,但其全稱統括式不是定理」,這個系統就稱為 ω-不完備(omega-incomplete)。
而 ~∀a:(0+a)=a 也不是定理——這個字串在 TNT 中不可判定(undecidable)。
不可判定不是神秘的事,只表示系統可被擴展。例如歐幾里得第五公設在絕對幾何中不可判定,可加它得歐氏幾何,或加其否定得非歐幾何。
非歐 TNT 與 ω-不一致#
若把 ~∀a:(0+a)=a 當作第六公理加入,系統仍然「一致」(不會同時生成 x 與 ~x),但出現一種較弱的衝突——金字塔家族中所有具體實例都為真,卻又有一條句子斷言「並非全部成立」。
這稱為 ω-不一致。要在心中容納它,需想像存在某些「超自然數」——它們沒有
SSS...0形式的數字符號,因此不會出現在金字塔家族中,但確實是該系統的合法模型。
歸納規則:補上最後一塊#
要解決 ω-不完備,必須形式化第五皮亞諾公設:
歸納規則(Induction):
若 X{0/u} 與 ∀u:<X{u} ⊃ X{Su/u}> 皆為定理,
則 ∀u:X{u} 也是定理。(記號 X{u} 表示一個含自由變數 u 的公式;X{Su/u} 表示把所有 u 替換為 Su 的結果。)
加上這條規則後,便可導出 ∀a:(0+a)=a 與加法交換律等。書中展示了一條約五十多行的長推導,最終得 ∀d:∀c:(c+d)=(d+c)。
TNT 的張力與消解#
一段推導讀來具有音樂般的節奏:中間步驟(如交換律推導的第 28 行)猶如 AABB 形式樂曲的中段解決,引發暫時的滿足與下一階段的張力。引理(lemma)就是這種「中途休止」。
TNT 雖然能形式化整個推導,但沒有把這種張力編碼進系統內——猶如樂曲不會包含和聲學教科書。
形式 vs. 非形式推理#
TNT 達到了「臨界質量」——與《數學原理》(Principia Mathematica)同等強度,標準數論教材中的所有定理皆能在其中推導。但實務上沒人會這樣做:要證明 1000 × 1000 = 1,000,000,不會真的畫 1000×1000 的方格逐一計算。
形式化的價值在於原則上的嚴格與機械化,不在於可用性。實際數論研究須把 TNT 嵌入更大脈絡(衍生規則、後設語言),但這只是加速,並未增強系統。
若 TNT 完備,數論家就要失業了#
假設 TNT 完備:
- 想知 N 中陳述 X 真假
- 把 X 編碼為 TNT 句子 x
- 系統地枚舉所有 TNT 定理
- 遲早會碰到 x 或 ~x,從而判定真假這意味著數論的所有問題都可機械解決。哥德爾將證明這不可能——對數論家而言究竟是幸是不幸,取決於觀點。
希爾伯特計畫的命運#
是否能用比 TNT「更輕的繩」(不訴諸完整 TNT 規則的子集)證明 TNT 的一致性?這正是希爾伯特計畫的核心希望:
[輕的繩] 有限主義方法(finitistic methods)
↓
[重的繩] TNT 的一致性哥德爾的結果摧毀了這個希望:任何強到能證明 TNT 一致性的系統,至少和 TNT 本身一樣強。循環不可避免。
下一章將進入哥德爾本人的構造——透過編號將 TNT 的形式特性編進 TNT 自身。