上一節用餘因子展開定義了行列式。這個定義是基礎,但面對較大的矩陣,
逐層展開通常不是最有效率的計算方法。行化簡提供另一條路:把矩陣化
成較容易處理的形式,在每一步記下準確的行列式倍數,最後從三角矩陣
的對角線讀出結果。
行變換的倍數規則給出以下恆等式:
行變換規則⟹det(EX)=det(E)det(X)⟹det(AB)=det(A)det(B)⟹det(A)=0⟺A 可逆
凡是寫出行列式,矩陣都默認為方陣;在乘積中,兩個方陣的尺寸相同。
追蹤消元怎樣改變行列式
行化簡會改變矩陣元素,但各類操作對行列式的影響不同:換行使它變號,縮放一行使它乘以同一個數,把一行的倍數加到另一行則使它保持不變。
概念視角算法
把消元讀成行列式記帳
在每一個箭頭旁寫出操作及其行列式倍數:換行是 −1,非零縮放是
β,兩條不同的行作替換是 1。對角線乘積屬於最後的三角矩陣,
記帳表則負責把這個值準確地傳回初始矩陣。
可逆操作及其矩陣
定義
基本行變換與基本矩陣
本節在實數域上討論。設 A 是 n×n 矩陣。基本行變換包括以下三類;涉及兩條行時,
行號必須不同:
- Rp↔Rq:交換第 p、q 行;
- Rp←βRp,其中 β=0;
- Rq←Rq+αRp。
把同一操作套用在 In 上所得的矩陣稱為基本矩陣 E。左乘 E 會
把同一操作套用到任意 n×m 矩陣 X,結果就是 EX。要求
β=0,是因為基本行變換必須可逆。
當 β=0 時,縮放規則仍然給出正確等式:矩陣有零行,行列式就是
零。但零縮放不可逆,所以不能把它當作稍後要撤銷的基本因子。分清
「等式仍成立」和「操作可逆」這兩件事,可以避免錯誤地約去零因子。
每類行變換的乘數
定理
三種行變換對行列式的影響
對 n×n 矩陣 A,其中 1≤p,q≤n,凡涉及兩條行時均要求
p=q:
- 若 B 由 A 交換第 p、q 行得到,則
det(B)=−det(A);
- 若 B 由 A 把第 p 行乘以 β 得到,則
det(B)=βdet(A),包括 β=0 的情形;
- 若 p=q,且 B 由 A 作
Rq←Rq+αRp 得到,則 det(B)=det(A)。
第一條是行列式的交錯性。第二條固定其他各行,只對第 p 行使用線性
性,因此把這一行換成 βap 會產生倍數 β。
行替換中的兩個行號必須不同。若寫成 Rp←Rp+αRp,新行是 (1+α)ap,所以行列式乘以 1+α。
證明
用多重線性證明行替換規則
把 A 的各行寫成 a1,…,an。令 C 把第 q 行替換為
aq+αap,其中 p=q。再令 A⋆ 把第 q 行換成
ap。由於其他各行都相同,多重線性給出
det(C)=det(A)+αdet(A⋆)A⋆ 的第 p、第 q 行相同,所以 det(A⋆)=0。因此
det(C)=det(A)。這個證明清楚顯示額外項為何消失,也顯示兩條行必
須是不同的行。
定理
混合行變換的記帳公式
若一串基本行變換把 A 變成 U,其中有 s 次換行,並把行分別乘以
非零數 β1,…,βq,則
det(U)=(−1)s(j=1∏qβj)det(A)因此
det(A)=(−1)s∏j=1qβjdet(U)行替換的倍數是 1,所以不出現在分母中。
若 U 是方形的行階梯形,它同時是上三角矩陣,並且
det(U) 等於對角線元素的乘積。零行會令這個乘積為零;由於記帳分母
只含非零因素,原矩陣的行列式也必為零。若這個行階梯形沒有零行,每個
對角位置都是主元,對角線乘積才必為非零。任意上三角矩陣未必如此,例
如 [0011] 是上三角矩陣但行列式為零。
用記帳表執行行化簡
開始前先寫清楚矩陣的尺寸,並標出每一行在當前步驟的作用。每一步都要
是合法的基本變換:換行或行替換涉及的行號必須不同,縮放因素必須是非
零數。接着按以下次序處理:
- 在每個主元下方消去元素;可以用行替換時就優先使用行替換。需要移動
主元時,立即在記帳表中加入一次換行。
- 若把主元行正規化,立刻記下縮放數 β,包括符號和出現次序。最
後的對角線乘積屬於縮放後矩陣,所以必須除回這個因素。
- 到達上三角矩陣便停止。若出現零行,不應再把它當作主元作除法;此時
行列式已由零行定理確定為零。
- 乘出最後的對角線元素,再使用
det(A)=det(U)/((−1)s∏βj),不要靠記憶在腦中補回符號。
不同的消元路線可能產生不同的中間矩陣和主元,但各自的記帳結果必須回
到同一個初始行列式。這是檢查算術的實用方法,也是定理保證的結果。解
Ax=b 時同樣要留意範圍:基本行變換作用在完整的 [A∣b] 上;行
列式記帳則只對方形的係數矩陣 A 讀值。
從初等因子到乘積定理
對單個基本矩陣 E,當 X 也是同尺寸方陣時,EX 仍是方陣。E 是把操作套用於 In 的結果,所以三條規則分別
給出 det(E)=−1,β,1。對 X 套用同一規則即得
det(EX)=det(E)det(X)。若有 Es⋯E1,歸納得到
det(Es⋯E1X)=(j=1∏sdet(Ej))det(X)
若 A 可逆,前面關於行化簡的結論給出 A=Es⋯E1。先取
X=In,再取 X=B,便有
det(A)=j∏det(Ej)=0det(AB)=(j∏det(Ej))det(B)
若 A 奇異,把它化為行階梯形 R。早先的可逆性判準說明 R 有零行。
設 Es⋯E1A=R,並令 c=∏jdet(Ej)。每個因素非零,
因為每個操作都可逆;而 R 的零行在 RB 中仍是零行,所以
cdet(A)=det(R)=0cdet(AB)=det(RB)=0
取消非零的 c 得 det(A)=0 和 det(AB)=0,兩邊再次相等。
記號 Es⋯E1A 也記錄了操作次序:最右邊的 E1 先作用,接着
是 E2,如此類推。證明沒有使用矩陣乘法的交換性。所有因素都是
n×n,而 B 也是同尺寸方陣,所以每一個中間乘積都有定義;這
個尺寸條件是定理的一部分,不是可有可無的記號約定。
定理
乘積的行列式
若 A、B 是同尺寸的方陣,則
det(AB)=det(A)det(B)
雖然 AB 與 BA 通常不是同一個矩陣,但純量乘法可以交換,因此也有
det(AB)=det(A)det(B)=det(B)det(A)=det(BA)
行列式與可逆性
定理
用行列式判定可逆性
對方陣 A,
A 可逆⟺det(A)=0
乘積定理的證明已經給出兩個方向:可逆矩陣可以分解為行列式非零的基本矩陣;奇異矩陣則化為含零行的行階梯形。消元的總倍數非零,因此後一種情況的原矩陣行列式也為零。
例題詳解
例題
只用行替換:不累積行列式因素
令
A=1232583710按順序做行替換:
1232583710R2←R2−2R1,R3←R3−3R1100212311R3←R3−2R210021031−1=U每一步都把一行的倍數加到另一條不同的行上,記帳倍數都是 1。故
det(A)=det(U)=1⋅1⋅(−1)=−1第二步使用已更新的第 2 行;操作順序影響中間矩陣,但不增加行列式因
素。
例題
換行、縮放與替換的混合記帳
令
B=[0413]繼續化到單位矩陣:
[0413]R1↔R2[4031]R1←41R1[10431]R1←R1−43R2I2三步的倍數依次為 −1,41,1,所以
1=det(I2)=(−1)(41)det(B)det(B)=−4中間三角矩陣的行列式為 4,與第一步的關係
4=−det(B) 完全一致;最後的行替換只消去非對角線元素,並保持縮放修
正後的矩陣行列式 1。
例題
參數、子式計算與核向量檢驗
令
A(x)=20101102010311x1沿第一欄展開。位置 (3,1) 的餘因子符號為 +1,故
det(A)=21021031x1+112013111第一個子式沿第二行展開,唯一可能非零的項是第三項,符號為
(−1)2+3=−1:
1021031x1=−x1213=−x(3−2)=−x第二個子式沿第一行展開:
112013111=1311+1213=(−2)+1=−1於是 det(A)=−2x−1,所以矩陣奇異,當且僅當 x=−21。在這
個值下,向量 v=(1,−4,2,2)T 滿足
Av=2−4+2−4+2+21−1−8+6+2=0000這是對奇異性的直接檢驗。其他 x 令行列式非零,因此齊次系統只有零
解。
定理
逆矩陣與整數冪
若 A 可逆,則
det(A−1)=det(A)1對任意方陣 A 和正整數 m,
det(Am)=(detA)m若 A 可逆,同一公式對所有整數 m(包括負整數)成立。
由 A−1A=In 及乘積公式,det(A−1)det(A)=1。正整數冪由
有限次重複乘法得到。約定任意方陣都滿足 A0=In,即使 A 奇異;此
時 det(A0)=1,不把它寫成可能引出 00 的 (detA)0。負冪只
有在 A 可逆時才定義,並由 Am=(A−1)−m 得到相應公式。
常見錯誤
常見錯誤
行變換必須作用於整個增廣矩陣
只有把行變換作用於整個增廣矩陣 [A∣b](包括右端欄)時,解集才
保持不變。不能無條件地說「行等價的係數矩陣有相同解集」。例如
x=1 的增廣矩陣是 [1∣1],而 2x=1 的增廣矩陣是 [2∣1];
只改變係數而固定右端會改變解。齊次系統的增廣欄全為零,所以在那個
特殊情形中只寫係數矩陣的行變換沒有問題。
另外,忘記除回縮放因素、漏數換行次數,或把
Rp←Rp+αRp 當成行列式不變,都是常見錯誤。最後一
個操作其實把該行乘上了 1+α。
練習
思考檢查
若把 A 的其中一行乘上 5,det(A) 會怎樣變?
解答 · 答案
思考檢查
若 A 行化簡後出現零行,對 det(A) 可以下甚麼結論?
解答 · 答案
det(A)=0。階梯形行列式為零,而換行和非零縮放組成的記帳倍數非零,
不會改變這個零的結論。
解答 · 答案
思考檢查
用行化簡計算 det120131014。
解答 · 引導解答
先做 R2←R2−2R1,再用新的 R2 做
R3←R3−R2:
120131014⟶100111014⟶100110013只用了行替換,所以 det=1⋅1⋅3=3。
思考檢查
若 det(A)=4 而 det(B)=−3,其中 A、B 都是 3×3 方陣,求 det(AB)。
解答 · 引導解答
det(AB)=det(A)det(B)=4(−3)=−12
思考檢查
若 det(A)=6,求 det(A−1)。
解答 · 引導解答
det(A−1)=det(A)1=61
相關筆記
若基本定義仍然過於符號化,可以回看
7.1 行列式與餘因子展開。
接着閱讀
7.3 轉置、欄變換與克拉默法則,
從欄的角度理解行列式。
也可參考
5.1 可逆矩陣,
因為本節把行列式判準接到那一章的可逆性詞典上。