本文的閱讀等級:中級
英國數學家哈代 (G. H. Hardy) 說[1]:「歐幾里得喜好的歸謬法 (reductio ad absurdum) 是數學家最精良的武器之一。它比起棋手所用的任何戰術還要好:棋手可能需要犧牲一個卒子或其他棋子,但數學家提供整個遊戲。」歸謬法是一種間接論證方式,先假設某個命題不成立,然後推理出矛盾、不符合已知的事實或荒謬的結果,從而論斷該命題成立。在命題易於作否定陳述,假設條件僅提供少量訊息,或缺乏明確的直接證明思路時,歸謬法便可派上用場。反證法 (proof by contradiction) 是狹義的歸謬法,兩者的差別在於反證法只限於推理出邏輯上矛盾的結果。因此,反證法經常應用於證明數學定理。具體地說,我們要證明一個陳述「若 則 」,記為 ,其中 是條件, 是命題,也就是說, 是 的一個充分條件, 是 的一個必要條件。反證法假定 與 (非 ) 同時成立,然後設法推論出 。但 是某個已知的事實或條件,這樣就得到一個矛盾 。在反證法中, 可以是 ,,或其他已知的事實或條件。如果 ,反證法要證明 ,即 。如果 ,反證法要證明 。
另一種很容易與反證法混淆的證明方法稱為逆否命題法 (proof by contrapositive),也就是證明 的等價陳述 。逆否命題法假定 成立,然後設法推理出 。反證法與逆否命題法的主要差異在於反證法使用了條件 ,逆否命題法則否。請注意,反證法的推理過程中必須使用假設條件 與 。如果在不使用 的情況下, 可以推論出 ,我們不須說「因為 與 相矛盾,因此得證」。這樣的證明其實是一個直接證法,但由於在論證敘述引入矛盾一詞,你可以稱之為「假反證法」。類似地,如果在不使用 的情況下, 可以推論出 ,這個證明誠然是一個逆否命題法,因此也可以稱之為「假反證法」。
為便利理解,我們將三種證明方法以邏輯符號表示如下:欲證明 為真,
- 直接證法:
- 反證法: (假定 成立)
- 逆否命題法:
下面舉幾個例子說明。
定理 1. 令 為一個方陣。若存在一個非零向量 使得 ,則 是不可逆的。
定理 1 的條件 是「存在一個非零向量 使得 」,命題 是「 是不可逆的」。定理 1 有很多種直接證法,但必須引進一些線性代數知識,證明 1.1, 1.2, 1.3 分別使用秩─零度定理、線性相關以及特徵值 (見“可逆矩陣定理”)。
證明 1.1. 令 為一個 階矩陣。假設存在 使得 ,意即 的零空間 (nullspace) 包含非零向量,。秩─零度定理聲明 ,故 是一個奇異矩陣 (singular matrix),也就是說, 是不可逆的。
證明 1.2. 令 為一個 階矩陣。假設存在 使得 ,即 ,表明 是一個線性相關向量集,故 ( 等於 的最大線性獨立行向量數),證畢。
證明 1.3. 假設存在 使得 ,可知 有一個特徵值 ,故 (行列式等於特徵值之積),證畢。
證明 1.4. 使用逆否命題法。假設 是可逆的 (條件 ),我們的目標要證明不存在非零向量 使得 ,也就是說 蘊含 (命題 )。考慮 。等號兩邊左乘 ,
證明 1.5. 使用反證法。假設存在非零向量 使得 (條件 ) 且 是可逆的 (條件 ),我們的目標要推理出 (命題 )。逆否命題法的論證稍加修飾即可寫出反證法,如下:若 使得 ,上式左乘 可導出 ,我們得到一個矛盾,證畢。
討論:證明 1.5 與證明 1.4 的推論步驟相同,皆未使用條件 。因此,證明 1.5 其實是逆否命題法的偽裝,它是一個「假反證法」。
定理 2. 令 與 為兩個同階方陣。若 ,則 的所有特徵值為零。
令 為一個 階矩陣。我們稱 為冪零矩陣 (nilpotent matrix),若存在一個正整數 使得 。冪零矩陣的一個充要條件為所有的特徵值為零 (見“特殊矩陣 (1):冪零矩陣”)。因此,定理 2 可以這樣描述:若 ,則 是一個冪零矩陣。
證明 2.1. 使用直接證法。因為 ,,可知 是一個冪零矩陣,其特徵值全部為零。
證明 2.2. 使用直接證法。考慮特徵方程 ,。因為 ,可得 。分開兩個情況討論:若 ,則 ;若 ,則 ,也就有 。但 ,推得 。
證明 2.3. 使用逆否命題法。假設 有一個非零特徵值。使用這個性質 (見“AB 和 BA 有何關係?”): 與 有相同的非零特徵值 (包含相重數),推論 也有相同的一個非零特徵值,故 。
證明 2.4. 使用反證法。假設 , 且 。因為 ,可得 ,就有 ,故 ,意味 或 ,我們得到一個矛盾,證畢。
討論:證明 2.3 假設 有一個非零特徵值 (條件 ),利用 與 的特徵值不變性推理出 (命題 )。證明 2.3 可以改寫為直接證法:因為 , 的特徵值為零,故 的特徵值也為零。證明 2.4 使用了 (條件 ) 與 有非零特徵值 (條件 ),推理出 的特徵值必為零 (命題 )。因此,證明 2.4 確實是一個反證法。
定理 3. 令 為一個 階矩陣, 為特徵值, 為對應的特徵向量。若 為相異特徵值,則 組成一個線性獨立集。
定理 3 說對應相異特徵值的特徵向量是線性獨立的。直接證法請參見“相異特徵值對應線性獨立的特徵向量之簡易證明”,底下給出一個使用逆否命題法的證明。
證明 3. 使用逆否命題法。假設 是一個線性相關集。在不失一般性的原則下,設 為最大的線性獨立集使得 ,其中 不全為零 (因為 )。上式左乘 ,可得
而且
。
令上面兩式相減,。因為 是線性獨立的,,。但至少有一個 使得 ,證畢。
討論:如果證明 3 的最後一段改成:「因為 是線性獨立的,且 兩兩相異,可推論 ,。我們得到一個矛盾,故得證。」修改後的證明就變成了反證法。
直接證法是建構式的證明方法,往往須引用較多的關聯性質與技巧,而反證法則相對簡單,原因在於矛盾可以是任何一樣東西。因此,反證法比逆否命題法的應用範圍來得廣泛。使用反證法的主要缺點是無從掌握從條件至命題的推理路徑,空白的部分只能仰賴你的直覺來彌補。
註解
[1] 原文:“Reductio ad absurdum, which Euclid loved so much, is one of a mathematician’s finest weapons. It is a far finer gambit than any chess play: a chess player may offer the sacrifice of a pawn or even a piece, but a mathematician offers the game. ”