有限實矩陣乘法法則的證明
設 m , n , p , q m,n,p,q m , n , p , q 為正整數,A ∈ R m × n A\in\mathbb R^{m\times n} A ∈ R m × n 、B ∈ R n × p B\in\mathbb R^{n\times p} B ∈ R n × p 、C ∈ R p × q C\in\mathbb R^{p\times q} C ∈ R p × q 。以下只用行乘欄定義與實數的有限求和。對任意輸出位置 ( i , ℓ ) (i,\ell) ( i , ℓ ) ,
( ( A B ) C ) i ℓ = ∑ k = 1 p ( ∑ j = 1 n a i j b j k ) c k ℓ = ∑ j = 1 n a i j ( ∑ k = 1 p b j k c k ℓ ) = ( A ( B C ) ) i ℓ . \begin{aligned}
((AB)C)_{i\ell}
&=\sum_{k=1}^{p}\left(\sum_{j=1}^{n}a_{ij}b_{jk}\right)c_{k\ell}\\
&=\sum_{j=1}^{n}a_{ij}\left(\sum_{k=1}^{p}b_{jk}c_{k\ell}\right)
=(A(BC))_{i\ell}.
\end{aligned} (( A B ) C ) i ℓ = k = 1 ∑ p ( j = 1 ∑ n a ij b jk ) c k ℓ = j = 1 ∑ n a ij ( k = 1 ∑ p b jk c k ℓ ) = ( A ( BC ) ) i ℓ .
中間等號只交換兩個有限和的求和次序,並使用實數分配律。兩邊同為 m × q m\times q m × q 矩陣,每個位置相等,便證明結合律;沒有調換矩陣因子的次序。
對 D ∈ R n × p D\in\mathbb R^{n\times p} D ∈ R n × p ,同一定義給出
[ A ( B + D ) ] i k = ∑ j = 1 n a i j ( b j k + d j k ) = ( A B ) i k + ( A D ) i k . [A(B+D)]_{ik}=\sum_{j=1}^{n}a_{ij}(b_{jk}+d_{jk})
=(AB)_{ik}+(AD)_{ik}. [ A ( B + D ) ] ik = j = 1 ∑ n a ij ( b jk + d jk ) = ( A B ) ik + ( A D ) ik .
對 E ∈ R m × n E\in\mathbb R^{m\times n} E ∈ R m × n ,則有
[ ( A + E ) B ] i k = ∑ j = 1 n ( a i j + e i j ) b j k = ( A B ) i k + ( E B ) i k . [(A+E)B]_{ik}=\sum_{j=1}^{n}(a_{ij}+e_{ij})b_{jk}
=(AB)_{ik}+(EB)_{ik}. [( A + E ) B ] ik = j = 1 ∑ n ( a ij + e ij ) b jk = ( A B ) ik + ( EB ) ik .
所以在所寫的相容大小下,兩條分配律均成立。對任意實純量 c c c ,
[ ( c A ) B ] i k = ∑ j ( c a i j ) b j k = c ∑ j a i j b j k = ∑ j a i j ( c b j k ) = [ A ( c B ) ] i k , [(cA)B]_{ik}=\sum_j(ca_{ij})b_{jk}
=c\sum_j a_{ij}b_{jk}
=\sum_j a_{ij}(cb_{jk})=[A(cB)]_{ik}, [( c A ) B ] ik = j ∑ ( c a ij ) b jk = c j ∑ a ij b jk = j ∑ a ij ( c b jk ) = [ A ( c B ) ] ik ,
逐項相等便證明 ( c A ) B = c ( A B ) = A ( c B ) (cA)B=c(AB)=A(cB) ( c A ) B = c ( A B ) = A ( c B ) 。特別地,對 x , y ∈ R n x,y\in\mathbb R^n x , y ∈ R n 與實數 s , t s,t s , t ,
[ A ( s x + t y ) ] i = ∑ j a i j ( s x j + t y j ) = s ( A x ) i + t ( A y ) i . [A(sx+ty)]_i=\sum_j a_{ij}(sx_j+ty_j)
=s(Ax)_i+t(Ay)_i. [ A ( s x + t y ) ] i = j ∑ a ij ( s x j + t y j ) = s ( A x ) i + t ( A y ) i .
這證明了比較同一線性系統的解時所用的矩陣乘向量線性性質。所有恆等式都只針對大小相容的有限實矩陣,不聲稱任意矩陣因子可交換或可消去。
由單位矩陣建立初等矩陣
假設一個初等 行變換 ρ \rho ρ 作用於有 p p p 行的矩陣。先從單位矩陣 I p I_p I p
開始,對 I p I_p I p 做同一個初等行變換,所得矩陣記作 E ρ E_\rho E ρ 。
所有純量都屬於矩陣所採用的底域;特別地,每個非零倍數 c c c 在該域中都有倒數
1 / c 1/c 1/ c 。
定義
初等行變換矩陣 與 p p p 行矩陣上的初等行變換 ρ \rho ρ 對應的初等行變換矩陣 ,就是把
ρ \rho ρ 作用在 I p I_p I p 上所得的 p × p p \times p p × p 矩陣。
這種矩陣亦簡稱初等矩陣 ;較長的名稱可以明確指出它與指定行變換的關係。
換句話說,
E ρ = ρ ( I p ) . E_\rho = \rho(I_p). E ρ = ρ ( I p ) .
這個定義有用,是因為以下定理。
定理
初等行變換等同於左乘矩陣 設 A A A 是任何有 p p p 行的矩陣,ρ \rho ρ 是一個初等行變換,並以
ρ ( A ) \rho(A) ρ ( A ) 表示把它作用於 A A A 後得到的矩陣。則
ρ ( A ) = E ρ A . \rho(A) = E_\rho A. ρ ( A ) = E ρ A . 所以,對 A A A 做這個初等行變換,等同於用同一個操作在 I p I_p I p 上得到的
初等行變換矩陣左乘 A A A 。
這裏必須是左乘。初等行變換改變的是行,會把新行寫成舊行的線性組合;左乘正是把
A A A 的新行寫成舊行的線性組合。右乘則會混合欄,不是同一件事。
維數亦說明了同一點。若 A A A 是 p × n p \times n p × n 矩陣,則 E ρ E_\rho E ρ 是
p × p p \times p p × p 矩陣,所以 E ρ A E_\rho A E ρ A 有定義,而且仍是 p × n p \times n p × n 。
這裏完全不要求 A A A 是方陣。相反,對這 n n n 欄進行欄變換的矩陣大小為 n × n n \times n n × n ,並從右邊相乘。
為甚麼左乘會執行指定行變換
證明
對三類初等行變換逐行驗證 把任意 p × n p \times n p × n 矩陣 A A A 的各行記作
a 1 , a 2 , … , a p a_1,a_2,\ldots,a_p a 1 , a 2 , … , a p ,並以 e k T e_k^{\mathsf T} e k T 表示 I p I_p I p 的第 k k k 行。
基本等式
e k T A = a k e_k^{\mathsf T}A=a_k e k T A = a k 表示左乘矩陣的一行會選取 A A A 的相應行。現在逐類檢查。
對 R i ↔ R j R_i\leftrightarrow R_j R i ↔ R j ,E ρ E_\rho E ρ 的第 i i i 行是
e j T e_j^{\mathsf T} e j T ,第 j j j 行是 e i T e_i^{\mathsf T} e i T ,其餘第 k k k 行仍是
e k T e_k^{\mathsf T} e k T 。因此 E ρ A E_\rho A E ρ A 恰好交換 A A A 的第 i , j i,j i , j 行。
對 R i ← c R i R_i\leftarrow cR_i R i ← c R i (c ≠ 0 c\ne0 c = 0 ),E ρ E_\rho E ρ 的第 i i i 行是
c e i T c e_i^{\mathsf T} c e i T ,其餘行不變。因此乘積的第 i i i 行為
( c e i T ) A = c a i , (c e_i^{\mathsf T})A=c a_i, ( c e i T ) A = c a i ,
而每個 k ≠ i k\ne i k = i 的第 k k k 行仍為 a k a_k a k 。
對 R j ← R j + c R i R_j\leftarrow R_j+cR_i R j ← R j + c R i (i ≠ j i\ne j i = j ),E ρ E_\rho E ρ 的第 j j j 行是
e j T + c e i T e_j^{\mathsf T}+c e_i^{\mathsf T} e j T + c e i T ,其餘行不變,所以新的第 j j j 行為
( e j T + c e i T ) A = a j + c a i , (e_j^{\mathsf T}+c e_i^{\mathsf T})A=a_j+c a_i, ( e j T + c e i T ) A = a j + c a i ,
正是指定的行加法。
三類情形窮盡了初等行變換,因此對每個相容矩陣 A A A 都有
E ρ A = ρ ( A ) E_\rho A=\rho(A) E ρ A = ρ ( A ) 。這個證明沒有聲稱任意改動行的方式都對應一個初等矩陣;
ρ \rho ρ 必須是剛才檢查的三類操作之一。
作用於增廣矩陣
假設 A x = b Ax=b A x = b 由增廣矩陣 [ A ∣ b ] [A\mid b] [ A ∣ b ] 表示。初等行變換必須作用於整個增廣
矩陣,不能只改其中一邊。相應的乘法等式是
E ρ [ A ∣ b ] = [ E ρ A ∣ E ρ b ] . E_\rho[A\mid b]=[E_\rho A\mid E_\rho b]. E ρ [ A ∣ b ] = [ E ρ A ∣ E ρ b ] .
因此,係數和右端常數會接受完全相同的行組合。向量 x x x 滿足 A x = b Ax=b A x = b ,若且唯若
它滿足 E ρ A x = E ρ b E_\rho Ax=E_\rho b E ρ A x = E ρ b :正向可把原等式左乘 E ρ E_\rho E ρ ,反向則施加逆向
初等行變換。這才是解集保持不變的嚴格理由。
若只改 A A A 而固定 b b b ,或只改 b b b ,一般會得到另一個方程組。增廣線只是視覺
上的分隔,不是行變換可以中途停止的邊界。
一串初等行變換就是一個矩陣乘積
真正的用途不只是表示一個初等步驟,而是把整串初等行變換寫成一個矩陣乘積。
定理
一串初等行變換的乘積表示 假設
A 1 → ρ 1 A 2 → ρ 2 A 3 → ρ 3 ⋯ → ρ k A k + 1 . A_1 \xrightarrow{\rho_1} A_2 \xrightarrow{\rho_2} A_3
\xrightarrow{\rho_3} \cdots \xrightarrow{\rho_k} A_{k+1}. A 1 ρ 1 A 2 ρ 2 A 3 ρ 3 ⋯ ρ k A k + 1 . 則
A k + 1 = E ρ k E ρ k − 1 ⋯ E ρ 2 E ρ 1 A 1 . A_{k+1}
= E_{\rho_k}E_{\rho_{k-1}}\cdots E_{\rho_2}E_{\rho_1}A_1. A k + 1 = E ρ k E ρ k − 1 ⋯ E ρ 2 E ρ 1 A 1 . 這裏每個 ρ j \rho_j ρ j 都必須是作用於同樣行數矩陣的初等行變換。這個乘積表示整串
操作,但乘積本身未必仍是單一個初等行變換矩陣。
這個公式中的次序很重要。第一個行變換最靠近 A 1 A_1 A 1 ,因為它最先作用:
A 2 = E ρ 1 A 1 , A 3 = E ρ 2 A 2 = E ρ 2 E ρ 1 A 1 . A_2 = E_{\rho_1}A_1,
\qquad
A_3 = E_{\rho_2}A_2 = E_{\rho_2}E_{\rho_1}A_1. A 2 = E ρ 1 A 1 , A 3 = E ρ 2 A 2 = E ρ 2 E ρ 1 A 1 .
例題
合併兩個行變換 令
A = [ 1 0 1 0 2 1 1 0 0 ] . A =
\begin{bmatrix}
1 & 0 & 1\\
0 & 2 & 1\\
1 & 0 & 0
\end{bmatrix}. A = 1 0 1 0 2 0 1 1 0 . 依次做
ρ 1 : R 2 ← R 2 + R 1 , ρ 2 : R 1 ← R 1 + 2 R 2 . \rho_1:\ R_2 \leftarrow R_2 + R_1,
\qquad
\rho_2:\ R_1 \leftarrow R_1 + 2R_2. ρ 1 : R 2 ← R 2 + R 1 , ρ 2 : R 1 ← R 1 + 2 R 2 . 對應的行變換矩陣是
E ρ 1 = [ 1 0 0 1 1 0 0 0 1 ] , E ρ 2 = [ 1 2 0 0 1 0 0 0 1 ] . E_{\rho_1} =
\begin{bmatrix}
1 & 0 & 0\\
1 & 1 & 0\\
0 & 0 & 1
\end{bmatrix},
\qquad
E_{\rho_2} =
\begin{bmatrix}
1 & 2 & 0\\
0 & 1 & 0\\
0 & 0 & 1
\end{bmatrix}. E ρ 1 = 1 1 0 0 1 0 0 0 1 , E ρ 2 = 1 0 0 2 1 0 0 0 1 . 兩個操作完成後,結果就是
E ρ 2 E ρ 1 A = [ 3 2 0 1 1 0 0 0 1 ] [ 1 0 1 0 2 1 1 0 0 ] = [ 3 4 5 1 2 2 1 0 0 ] . E_{\rho_2}E_{\rho_1}A
=
\begin{bmatrix}
3&2&0\\
1&1&0\\
0&0&1
\end{bmatrix}
\begin{bmatrix}
1&0&1\\
0&2&1\\
1&0&0
\end{bmatrix}
=
\begin{bmatrix}
3&4&5\\
1&2&2\\
1&0&0
\end{bmatrix}. E ρ 2 E ρ 1 A = 3 1 0 2 1 0 0 0 1 1 0 1 0 2 0 1 1 0 = 3 1 1 4 2 0 5 2 0 . 若不想直接相乘 E ρ 2 E ρ 1 E_{\rho_2}E_{\rho_1} E ρ 2 E ρ 1 ,也可以把同一串行變換按同一次序作用在
I 3 I_3 I 3 上,所得矩陣就是合併後的左乘矩陣。最後的數值結果亦確認:第二步使用的
是已經更新後的第 2 2 2 行。
反向行變換與逆矩陣
每個初等行變換都有反向操作:
R j ← R j + c R i R_j \leftarrow R_j + cR_i R j ← R j + c R i 的反向操作是
R j ← R j − c R i R_j \leftarrow R_j - cR_i R j ← R j − c R i ;
R i ← c R i R_i \leftarrow cR_i R i ← c R i (其中 c ≠ 0 c \ne 0 c = 0 )的反向操作是
R i ← ( 1 / c ) R i R_i \leftarrow (1/c)R_i R i ← ( 1/ c ) R i ;
交換兩行的反向操作仍然是同一次交換。
這給出一個精確的矩陣敘述。
定理
初等行變換矩陣都是可逆矩陣 每個初等行變換矩陣都是可逆的。它的逆矩陣,就是反向初等行變換所對應的
初等行變換矩陣。
證明
為甚麼反向矩陣是雙側逆矩陣 設 E ρ E_\rho E ρ 表示初等行變換 ρ \rho ρ ,而 E ρ − 1 E_{\rho^{-1}} E ρ − 1 表示它的反向初等
操作。對每個有 p p p 行的矩陣 X X X ,先做 ρ \rho ρ 再撤銷,都會恢復 X X X 。由左乘
定理,
E ρ − 1 E ρ X = X . E_{\rho^{-1}}E_\rho X=X. E ρ − 1 E ρ X = X . 這個等式對每個這樣的 X X X 都成立;特別取 X = I p X=I_p X = I p ,得到
E ρ − 1 E ρ = I p E_{\rho^{-1}}E_\rho=I_p E ρ − 1 E ρ = I p 。先做反向操作再做 ρ \rho ρ ,同理得到
E ρ E ρ − 1 = I p E_\rho E_{\rho^{-1}}=I_p E ρ E ρ − 1 = I p 。因此
E ρ − 1 = E ρ − 1 . E_\rho^{-1}=E_{\rho^{-1}}. E ρ − 1 = E ρ − 1 . 具體來說,交換兩行的逆仍是同一次交換;乘以 c ≠ 0 c\ne0 c = 0 的逆是乘以 1 / c 1/c 1/ c ;
把第 i i i 行的 c c c 倍加到第 j j j 行,則由加上 − c -c − c 倍第 i i i 行來撤銷。
例如,若
E = [ 1 0 0 3 1 0 0 0 1 ] E =
\begin{bmatrix}
1 & 0 & 0\\
3 & 1 & 0\\
0 & 0 & 1
\end{bmatrix} E = 1 3 0 0 1 0 0 0 1
表示 R 2 ← R 2 + 3 R 1 R_2 \leftarrow R_2 + 3R_1 R 2 ← R 2 + 3 R 1 ,則
E − 1 = [ 1 0 0 − 3 1 0 0 0 1 ] E^{-1} =
\begin{bmatrix}
1 & 0 & 0\\
-3 & 1 & 0\\
0 & 0 & 1
\end{bmatrix} E − 1 = 1 − 3 0 0 1 0 0 0 1
表示 R 2 ← R 2 − 3 R 1 R_2 \leftarrow R_2 - 3R_1 R 2 ← R 2 − 3 R 1 。
這就是初等行變換可逆的代數原因,也解釋了為甚麼行化簡和可逆矩陣有密切關係。
證明
先撤銷最後一步操作 設 E 1 , … , E k E_1,\ldots,E_k E 1 , … , E k 按時間順序編碼同一組 p p p 行矩陣上的操作,合併左乘矩陣就是 J = E k ⋯ E 1 J=E_k\cdots E_1 J = E k ⋯ E 1 。每個 E j − 1 E_j^{-1} E j − 1 表示對應初等行變換的反向操作。要恢復輸入,首先必須撤銷 E k E_k E k ,因為它是最後一次對行所作的改變;然後依次撤銷 E k − 1 , … , E 1 E_{k-1},\ldots,E_1 E k − 1 , … , E 1 。因此,反向鏈的合併矩陣為
K = E 1 − 1 E 2 − 1 ⋯ E k − 1 . K=E_1^{-1}E_2^{-1}\cdots E_k^{-1}. K = E 1 − 1 E 2 − 1 ⋯ E k − 1 . 這裏必須區分兩種次序:反向操作的時間順序從 E k − 1 E_k^{-1} E k − 1 開始;寫成乘積時,最先作用的因子卻放在最靠近待恢復矩陣的位置。以三步為例,由結合律可得
K J = E 1 − 1 E 2 − 1 ( E 3 − 1 E 3 ) E 2 E 1 = E 1 − 1 ( E 2 − 1 E 2 ) E 1 = I p . KJ=E_1^{-1}E_2^{-1}(E_3^{-1}E_3)E_2E_1
=E_1^{-1}(E_2^{-1}E_2)E_1=I_p. K J = E 1 − 1 E 2 − 1 ( E 3 − 1 E 3 ) E 2 E 1 = E 1 − 1 ( E 2 − 1 E 2 ) E 1 = I p . 另一個乘積 J K JK J K 則從相鄰的 E 1 E 1 − 1 E_1E_1^{-1} E 1 E 1 − 1 開始消去,最後同樣得到 I p I_p I p 。任意有限鏈都可這樣逐對消去。整個論證沒有交換因子,也不要求被變換的矩陣本身是方陣。
把這個讀法用於前面的兩步例子:合併矩陣是 E ρ 2 E ρ 1 E_{\rho_2}E_{\rho_1} E ρ 2 E ρ 1 ,所以逆矩陣是 E ρ 1 − 1 E ρ 2 − 1 E_{\rho_1}^{-1}E_{\rho_2}^{-1} E ρ 1 − 1 E ρ 2 − 1 。從最終矩陣開始,先從第一行減去目前第二行的兩倍,第一行便恢復為 [ 1 0 1 ] [1\ 0\ 1] [ 1 0 1 ] ;再從第二行減去剛恢復的第一行,第二行便恢復為 [ 0 2 1 ] [0\ 2\ 1] [ 0 2 1 ] 。撤銷操作是在逐個恢復中間狀態,乘積次序也就隨之確定,無須另背一個口訣。
有限消元必停止,並保持解集
設 A ∈ R m × n A\in\mathbb R^{m\times n} A ∈ R m × n 、b ∈ R m b\in\mathbb R^m b ∈ R m ,其中 m , n m,n m , n 是有限正整數。允許的行變換為交換不同的兩行、以非零標量乘一行,以及把一行的標量倍加到另一行。逆變換分別為同一交換、乘以倒數,以及減去該倍數。因此對整個增廣陣施行變換恰好保持 A x = b Ax=b A x = b 的解集:新方程由舊方程推出,逆變換給出反向蘊含。每個行變換也等於左乘把同一變換施於單位矩陣所得的可逆初等矩陣。
從左到右掃描係數欄,並記錄下一未使用行。若當前欄在未使用行中有非零元素,就將其所在行交換到下一位置,除以非零主元,再從其餘各行減去適當倍數,清空該欄其他元素,然後推進未使用行指標。若該欄所有未使用位置都是零,就跳過該欄。先前主元欄始終是單位欄:當前未使用行在這些欄均為零,所以新主元行以及後續減法保留這些零與原主元。總共只有 n n n 次欄掃描及至多 min ( m , n ) \min(m,n) min ( m , n ) 個主元,每次只作有限個行變換,故算法必停止。最後非零係數行的主元欄依次遞增,各主元上下均為零,其餘係數行全零。這證明下面使用的簡化階梯形確實能得到,而非假設它最終出現。
解的分類與齊次自由度
令 r r r 為係數部分的主元數。若某個零係數行對應非零變換後右端,就出現不可能的方程 0 = c 0=c 0 = c ,因此無解。否則任意指定 n − r n-r n − r 個非主元變量的實數值。每個主元行都把其主元變量寫成變換後右端減去自由變量的已知線性組合,其中沒有其他主元變量。這些公式既構造解,也恢復每一個解。若 r = n r=n r = n ,解唯一;若 r < n r<n r < n ,改變自由變量就改變解向量,故有無窮多解。
對 A z = 0 Az=0 A z = 0 ,全部自由變量取零給出零解。若 r < n r<n r < n ,將一個自由變量設為一,其餘設為零,再按主元公式求解,就構造出非零齊次解;若 r = n r=n r = n ,公式迫使所有齊次變量為零。對相容系統固定一個解 x p x_p x p ,兩解相減表明每個解均為 x p + z x_p+z x p + z ,其中 A z = 0 Az=0 A z = 0 ;代入又證明反向包含。
當 A A A 為方陣且每欄都有主元時,係數階梯形為 I I I 。有限個初等矩陣之積 E E E 滿足 E A = I EA=I E A = I 。因為 E E E 可逆,A = E − 1 A=E^{-1} A = E − 1 ,故也有 A E = I AE=I A E = I ,所以 E E E 是雙側逆。若缺少主元,上面構造的非零齊次解排除可逆性。這也證明可逆時,對 [ A ∣ I ] [A\mid I] [ A ∣ I ] 作相同行變換會得到 [ I ∣ A − 1 ] [I\mid A^{-1}] [ I ∣ A − 1 ] 。
不預設計數結論的有限基存在與擴充
設實向量空間 V V V 已給定有限生成列表 t 1 , … , t N t_1,\ldots,t_N t 1 , … , t N 。先證明任何線性無關列表 u 1 , … , u k u_1,\ldots,u_k u 1 , … , u k 的長度不超過 N N N 。插入 j j j 個向量後,維持一個由 u 1 , … , u j u_1,\ldots,u_j u 1 , … , u j 與 N − j N-j N − j 個剩餘舊向量組成的生成列表。將 u j + 1 u_{j+1} u j + 1 按此列表展開,至少一個剩餘舊向量的係數非零;否則它在先前 u i u_i u i 的張成空間中,與無關性矛盾。解出這個舊向量,再以 u j + 1 u_{j+1} u j + 1 取代它。新列表仍張成同一空間,而且保留全部先前插入向量。若 k > N k>N k > N ,則 N N N 步後前 N N N 個向量已張成 V V V ,與 u N + 1 u_{N+1} u N + 1 的無關性矛盾。此即所需上界,也包括 N = 0 N=0 N = 0 。
每個子空間 W W W 都有有限基。從空的無關列表開始;若當前張成空間尚不是 W W W ,就在 W W W 中取一個不在該張成空間內的向量。若新向量在某關係中的係數非零,就能由舊向量表示它,矛盾,故新列表仍無關。已證上界允許至多添加 N N N 次,所以過程必停止於 W W W 的無關生成列表。若 W = { 0 } W=\{0\} W = { 0 } ,立即得到空基。改從 W W W 內任意給定無關列表開始,同樣證明該列表可擴充為 W W W 的基;只需有界有限次選擇。最後,若兩組基的長度為 p , q p,q p , q ,分別把它們用作上界證明中的有限生成列表,得到 p ≤ q p\le q p ≤ q 與 q ≤ p q\le p q ≤ p 。故基的長度有良定義,稱為維數。這些論證補足秩–零度定理所用的基存在、擴充與維數事實。
本節是可選的證明附錄,矩陣元素取實數。論證只使用域運算和可逆行變換,因此也適用於任意域。它要建立的是結構性結論,並不是另給一套消元算法。
高斯消元看起來是一套算法,但仍有一個重要的理論問題需要處理:
如果兩個人用不同合法路徑化簡同一個矩陣,為甚麼最後得到的 RREF 必須相同?
存在性只說明至少可以到達某個 RREF。唯一性則說明可能的 RREF 只有一個。正
因為有這個唯一性,我們才可以說一個矩陣的 唯一的 RREF ,也才可以不依賴某
次計算路徑去定義 秩 。
閱讀前準備
本附錄會使用三個早前已建立的事實。
行等價可以寫成左乘某個可逆矩陣。
行等價會保留對應欄之間的線性關係。
在 RREF 中,主元欄與自由欄有很固定的形狀。
證明比一次行化簡計算長,但想法很清楚:由左至右比較兩個可能的 RREF。先逼
出同一批主元欄,再用自由欄與主元欄之間的線性關係逼出所有自由欄。
定理
定理
RREF 的唯一性 設 A A A 是任意矩陣。假設 B B B 與 C C C 都是最簡行階梯形。若 B B B 與 A A A 行等價,
而 C C C 也與 A A A 行等價,則
B = C . B = C. B = C .
由於行等價有傳遞性,只要證明以下較直接的形式便足夠。
定理
等價表述 若 B B B 與 C C C 是同尺寸的最簡行階梯形,且 B B B 與 C C C 行等價,則 B = C B=C B = C 。
請留意「最簡」二字。普通行階梯形不唯一;同一個矩陣可以有許多不同 REF,但
只有一個 RREF。
行等價會保留欄之間的線性關係
把兩個行等價的 p × q p \times q p × q 矩陣寫成欄向量形式:
B = [ b 1 b 2 ⋯ b q ] , C = [ c 1 c 2 ⋯ c q ] . B=[b_1\ b_2\ \cdots\ b_q],
\qquad
C=[c_1\ c_2\ \cdots\ c_q]. B = [ b 1 b 2 ⋯ b q ] , C = [ c 1 c 2 ⋯ c q ] .
若 B B B 與 C C C 行等價,則存在某個可逆 p × p p \times p p × p 矩陣 G G G ,使得
B = G C . B = GC. B = GC .
因此對每個欄指標 j j j ,都有 b j = G c j b_j = Gc_j b j = G c j 。
定理
欄關係的保留 假設
c j = α 1 c k 1 + α 2 c k 2 + ⋯ + α n c k n . c_j=\alpha_1c_{k_1}+\alpha_2c_{k_2}+\cdots+\alpha_nc_{k_n}. c j = α 1 c k 1 + α 2 c k 2 + ⋯ + α n c k n . 則
b j = α 1 b k 1 + α 2 b k 2 + ⋯ + α n b k n . b_j=\alpha_1b_{k_1}+\alpha_2b_{k_2}+\cdots+\alpha_nb_{k_n}. b j = α 1 b k 1 + α 2 b k 2 + ⋯ + α n b k n . 反過來,任何對應 b b b 欄之間的線性關係,也會給出對應 c c c 欄之間的同一個
線性關係。
反方向要用 G − 1 G^{-1} G − 1 。這正是 G G G 必須可逆的原因:欄關係可以在兩個行等價矩
陣之間來回移動。
更明確地說,由分配律,
G ( ∑ i = 1 n α i c k i ) = ∑ i = 1 n α i G c k i . G\left(\sum_{i=1}^n\alpha_i c_{k_i}\right)
=\sum_{i=1}^n\alpha_i Gc_{k_i}. G ( i = 1 ∑ n α i c k i ) = i = 1 ∑ n α i G c k i .
欄向量通常會改變,係數卻保持不變。再作用 G − 1 G^{-1} G − 1 ,就得到反方向。因此,若只有一邊的某欄能由較早各欄表示,把那個表示式反向傳回便會與另一邊的假設矛盾。這不僅證明等式可以傳遞,也證明「不屬於較早各欄的張成空間」這一否定性質可以傳遞。
RREF 的欄長甚麼樣子
設 C C C 是一個 RREF。假設它的主元欄為
d 1 < d 2 < ⋯ < d r . d_1\lt d_2\lt \cdots\lt d_r. d 1 < d 2 < ⋯ < d r .
那麼這些主元欄具有標準基向量的形狀:
c d 1 = e 1 , c d 2 = e 2 , … , c d r = e r , c_{d_1}=e_1,\quad c_{d_2}=e_2,\quad \ldots,\quad c_{d_r}=e_r, c d 1 = e 1 , c d 2 = e 2 , … , c d r = e r ,
其中向量長度由 C C C 的行數決定。
自由欄則由其左方的主元欄控制。若 c j c_j c j 是自由欄,而其左方的主元欄為
c d 1 , … , c d h c_{d_1},\ldots,c_{d_h} c d 1 , … , c d h ,則
c j = γ 1 j c d 1 + γ 2 j c d 2 + ⋯ + γ h j c d h . c_j=\gamma_{1j}c_{d_1}+\gamma_{2j}c_{d_2}+\cdots+\gamma_{hj}c_{d_h}. c j = γ 1 j c d 1 + γ 2 j c d 2 + ⋯ + γ hj c d h .
這些係數並不神秘:它們就是 c j c_j c j 在主元行中的條目。
此外,每個主元欄在出現時都真正帶來新方向:
c d k 不是其左方各欄的線性組合。 c_{d_k}
\quad\text{不是其左方各欄的線性組合。} c d k 不是其左方各欄的線性組合。
這三點就是唯一性證明的核心。
為甚麼只需要較早的主元?若某行的主元在第 j j j 欄之後,該行直到第 j j j 欄的元素全為零;零行也沒有貢獻。因此,自由欄的非零元素只能出現在主元已經出現的各行。若尚無主元,右邊是空和,該欄就是零欄。反過來,在第 k k k 個主元處,所有較早欄的第 k k k 個元素都是零,但 e k e_k e k 的該元素是 1 1 1 ,故較早欄的任何線性組合都不能產生這個主元欄。
對主元數目作歸納
為避免循環論證,在本證明中,「一個 RREF 的秩」暫時只解作「該 RREF 的主元欄數目」。只有在唯一性證明完成後,我們才正式定義任意矩陣的秩。
證明
RREF 唯一性的完整證明 令 P ( r ) P(r) P ( r ) 表示以下命題:
若 B B B 與 C C C 是同尺寸 RREF,B B B 與 C C C 行等價,且 C C C 有正好 r r r 個主元
欄,則 B = C B=C B = C 。
我們證明所有 r ≥ 0 r\ge 0 r ≥ 0 的 P ( r ) P(r) P ( r ) 。
基本情況。 假設 C C C 沒有主元欄。那麼 C C C 沒有非零行,所以 C C C 是零矩
陣。由於 B B B 與 C C C 行等價,存在可逆矩陣 G G G 使 B = G C B=GC B = GC 。因此
B = G 0 = 0 B=G0=0 B = G 0 = 0 ,所以 B = C B=C B = C 。
歸納步驟。 假設 P ( s ) P(s) P ( s ) 成立。現在令 C C C 有 s + 1 s+1 s + 1 個主元欄,位置為
d 1 < d 2 < ⋯ < d s < d s + 1 . d_1\lt d_2\lt \cdots\lt d_s\lt d_{s+1}. d 1 < d 2 < ⋯ < d s < d s + 1 . 在最後一個主元欄處把兩個矩陣切開:
B = [ B ♭ B ♮ ] , C = [ C ♭ C ♮ ] , B=[B^\flat\ B^\natural],
\qquad
C=[C^\flat\ C^\natural], B = [ B ♭ B ♮ ] , C = [ C ♭ C ♮ ] , 其中 B ♭ B^\flat B ♭ 與 C ♭ C^\flat C ♭ 包含所有嚴格在第 d s + 1 d_{s+1} d s + 1 欄左邊的欄。
從 RREF 刪去末尾若干欄,所得仍是 RREF:保留了主元的行仍有領先的 1 1 1 ,其主元欄的其他元素仍為零;主元被刪去的行則成為零行,而且本來就在保留主元的各行下方。這個理由分別適用於兩個左方分塊,無須預先假設兩者的主元數相同。
把 C C C 變為 B B B 的同一串初等行變換,也把左方分塊相互變換,因為截取欄與每一步行變換可以交換先後。特別地,B ♭ = G C ♭ B^\flat=GC^\flat B ♭ = G C ♭ ,左乘矩陣仍是原來的可逆 p × p p\times p p × p 矩陣。因此兩分塊行等價,而 C ♭ C^\flat C ♭ 恰有 s s s 個主元。當左方分塊至少有一欄時,可用歸納假設得到
B ♭ = C ♭ . B^\flat=C^\flat. B ♭ = C ♭ . 若 d s + 1 = 1 d_{s+1}=1 d s + 1 = 1 ,兩個左方分塊都沒有欄,而且必有 s = 0 s=0 s = 0 ;此時它們相同是空泛成立的,不必把歸納假設應用於沒有欄的矩陣。若 s = 0 s=0 s = 0 但 d 1 > 1 d_1\gt1 d 1 > 1 ,左方分塊則是通常的零矩陣,由基本情況可知相同。這樣便同時處理了前導零欄和空前綴兩種邊界。
所以兩個矩陣在第 d s + 1 d_{s+1} d s + 1 欄之前已經完全相同。
接着比較第 d s + 1 d_{s+1} d s + 1 欄。在 C C C 中,這個主元欄不是其左方各欄的線性組合。
行等價會保留這個「不是線性組合」的性質,所以 B B B 的第 d s + 1 d_{s+1} d s + 1 欄也不
是其左方各欄的線性組合。
由於左方分塊已相同,B B B 的前 s s s 個主元欄正是
e 1 , e 2 , … , e s . e_1,e_2,\ldots,e_s. e 1 , e 2 , … , e s . 若這欄在第 s s s 行以下全為零,它就等於以最上方 s s s 個元素為係數的 e 1 , … , e s e_1,\ldots,e_s e 1 , … , e s 的線性組合,與剛才的非組合性質矛盾。因此,第 s s s 行以下至少有一個非零元素。
取其中最上方的一行。由於左方分塊相同,這一行在更早各欄的元素全為零,所以它的主元就在第 d s + 1 d_{s+1} d s + 1 欄。這必定是第 s + 1 s+1 s + 1 行:若中間還有其他行,那些行要麼是位於非零行上方的零行,要麼有更靠右的主元卻排在更靠左的主元上方,兩者都違反階梯次序。最後,最簡條件使該主元等於 1 1 1 ,並使同欄其他元素全為零。因此
b d s + 1 = e s + 1 = c d s + 1 . b_{d_{s+1}}=e_{s+1}=c_{d_{s+1}}. b d s + 1 = e s + 1 = c d s + 1 . 最後比較 d s + 1 d_{s+1} d s + 1 右方各欄。由於 d s + 1 d_{s+1} d s + 1 是 C C C 的最後 一個主元位置,右方每一欄都是自由欄。令 ℓ > d s + 1 \ell\gt d_{s+1} ℓ > d s + 1 ,主元行中的元素給出唯一表示式
c ℓ = γ 1 ℓ c d 1 + ⋯ + γ s ℓ c d s + γ s + 1 , ℓ c d s + 1 . c_\ell
=
\gamma_{1\ell}c_{d_1}
+\cdots+
\gamma_{s\ell}c_{d_s}
+\gamma_{s+1,\ell}c_{d_{s+1}}. c ℓ = γ 1 ℓ c d 1 + ⋯ + γ s ℓ c d s + γ s + 1 , ℓ c d s + 1 . 行等價保留這個關係,所以
b ℓ = γ 1 ℓ b d 1 + ⋯ + γ s ℓ b d s + γ s + 1 , ℓ b d s + 1 . b_\ell
=
\gamma_{1\ell}b_{d_1}
+\cdots+
\gamma_{s\ell}b_{d_s}
+\gamma_{s+1,\ell}b_{d_{s+1}}. b ℓ = γ 1 ℓ b d 1 + ⋯ + γ s ℓ b d s + γ s + 1 , ℓ b d s + 1 . 但 B B B 與 C C C 的主元欄已被證明相同,所以 b ℓ = c ℓ b_\ell=c_\ell b ℓ = c ℓ 。
每一欄都相同,因此 B = C B=C B = C 。這證明 P ( s + 1 ) P(s+1) P ( s + 1 ) ,歸納完成。
證明透視
每一步歸納究竟可以使用甚麼 歸納參數只數 C C C 的主元。我們沒有假定 B B B 也有同樣多主元;矩陣相等將會證明這件事。截取前綴在保留行等價的同時產生較小情形,前綴相等又固定了前 s s s 個主元行。接着,不能由前欄組合的性質與 RREF 條件共同逼出下一個主元。最後,C C C 的其餘各欄都已由這些匹配的主元表示;把確切係數傳給 B B B ,就排除了額外主元或不同自由元素的可能。
一個具體縮小版
例題
兩主元 RREF 中逐欄被確定的元素 上面的證明追蹤任意欄,可能看起來較抽象。以下用一個小 RREF 展示同一邏輯:
C = [ 1 2 0 − 1 0 0 1 3 0 0 0 0 ] . C=
\begin{bmatrix}
1 & 2 & 0 & -1\\
0 & 0 & 1 & 3\\
0 & 0 & 0 & 0
\end{bmatrix}. C = 1 0 0 2 0 0 0 1 0 − 1 3 0 . 主元欄是第 1 1 1 欄與第 3 3 3 欄:
c 1 = e 1 , c 3 = e 2 . c_1=e_1,
\qquad
c_3=e_2. c 1 = e 1 , c 3 = e 2 . 自由欄滿足
c 2 = 2 c 1 , c 4 = − c 1 + 3 c 3 . c_2=2c_1,
\qquad
c_4=-c_1+3c_3. c 2 = 2 c 1 , c 4 = − c 1 + 3 c 3 . 現在假設 B B B 是另一個與 C C C 行等價的 RREF。第一個主元欄不能消失,所以
b 1 = e 1 b_1=e_1 b 1 = e 1 。由於關係 c 2 = 2 c 1 c_2=2c_1 c 2 = 2 c 1 被保留,b 2 = 2 b 1 = 2 e 1 b_2=2b_1=2e_1 b 2 = 2 b 1 = 2 e 1 ,第二欄也被逼出。
第三欄不是第 1 1 1 、2 2 2 欄的線性組合,所以它必須成為 B B B 的下一個主元欄:
b 3 = e 2 b_3=e_2 b 3 = e 2 。最後,關係 c 4 = − c 1 + 3 c 3 c_4=-c_1+3c_3 c 4 = − c 1 + 3 c 3 被保留,所以
b 4 = − b 1 + 3 b 3 = − e 1 + 3 e 2 = c 4 . b_4=-b_1+3b_3=-e_1+3e_2=c_4. b 4 = − b 1 + 3 b 3 = − e 1 + 3 e 2 = c 4 . 因此 B = C B=C B = C 。整個矩陣逐欄被迫相同。
例題
前導零欄不會中斷證明 考慮
C = [ 0 1 − 2 0 3 0 0 0 1 4 0 0 0 0 0 ] . C=\begin{bmatrix}0&1&-2&0&3\\0&0&0&1&4\\0&0&0&0&0\end{bmatrix}. C = 0 0 0 1 0 0 − 2 0 0 0 1 0 3 4 0 . 設 B B B 是與 C C C 行等價的 RREF。由於 c 1 = 0 c_1=0 c 1 = 0 ,關係傳遞給出 b 1 = 0 b_1=0 b 1 = 0 。c 2 c_2 c 2 非零,可逆性保證 b 2 b_2 b 2 也非零;它是 RREF 的第一個非零欄,故必須等於 e 1 e_1 e 1 。再由 c 3 = − 2 c 2 c_3=-2c_2 c 3 = − 2 c 2 得 b 3 = − 2 e 1 b_3=-2e_1 b 3 = − 2 e 1 。
c 4 = e 2 c_4=e_2 c 4 = e 2 不能由前三欄張成,因為前三欄的第二個元素都是零。因此 b 4 b_4 b 4 是下一個主元欄,等於 e 2 e_2 e 2 。最後,
c 5 = 3 c 2 + 4 c 4 ⟹ b 5 = 3 b 2 + 4 b 4 = c 5 . c_5=3c_2+4c_4\quad\Longrightarrow\quad b_5=3b_2+4b_4=c_5. c 5 = 3 c 2 + 4 c 4 ⟹ b 5 = 3 b 2 + 4 b 4 = c 5 . 這樣無須選擇消元路徑,就證明了 B = C B=C B = C 。若按歸納證明在最後一個主元處切開,左方分塊有三欄、恰好一個主元,原來的前導零欄仍保留在其中。在唯一性定理已使秩的定義合法後,兩矩陣的秩都是 2 2 2 。
例題
奇異左乘矩陣可以丟失一個欄方向 取
C = I 2 , G = [ 1 0 0 0 ] , B = G C = [ 1 0 0 0 ] . C=I_2,\qquad G=\begin{bmatrix}1&0\\0&0\end{bmatrix},\qquad
B=GC=\begin{bmatrix}1&0\\0&0\end{bmatrix}. C = I 2 , G = [ 1 0 0 0 ] , B = GC = [ 1 0 0 0 ] . B , C B,C B , C 都是 RREF,卻不相同。這不反駁唯一性:G G G 是奇異矩陣,單憑 B = G C B=GC B = GC 不能推出行等價。C C C 的兩欄沒有非平凡關係,但 b 2 = 0 b_2=0 b 2 = 0 是一個新關係,係數向量為 ( 0 , 1 ) (0,1) ( 0 , 1 ) 。若有可逆矩陣把 C C C 變為 B B B ,這個關係就能反向傳回,得到錯誤結論 c 2 = 0 c_2=0 c 2 = 0 。因此,這樣的可逆左乘矩陣並不存在。
對奇異的 G G G ,原有關係仍可由分配律向前傳遞;失敗的是反方向,以及由它保證的「不能組合」性質。正確規則必須要求左乘矩陣可逆。這裏的主元數分別為 2 2 2 和 1 1 1 ,具體顯示了不可逆操作能夠丟失甚麼資訊。
秩因此成為良定概念
定義
秩 對任意矩陣 A A A ,A A A 的 秩 ,記作 rank ( A ) \operatorname{rank}(A) rank ( A ) ,定義為與
A A A 行等價的唯一 RREF 中的主元欄數目。
這個定義之所以合法,是因為唯一性已經被證明。若不同化簡路徑可以得到不同
RREF,那麼主元欄數目便可能依賴路徑。唯一性定理排除了這個可能。
所以秩不是某次計算的記錄,而是矩陣本身的不變量。
因此在計算上可以安全地使用以下流程:
把 A A A 化成 RREF;
標出該 RREF 的主元欄;
數主元欄數目,得到 rank ( A ) \operatorname{rank}(A) rank ( A ) 。
如果題目要求列空間的一組基底,則要用主元位置回到原矩陣中相應的欄。若題目
只要求秩,RREF 本身已經足夠。這個分別很重要:行變換會保留欄關係,但通常
不保留實際的列空間。
常見錯誤
常見錯誤
不要說普通 REF 也唯一 唯一性定理談的是 RREF,不是任意行階梯形。在把主元標準化並清掉其上方項之
前,可以出現許多不同 REF。
常見錯誤
不要把秩定義成某次計算所得的數 可以用行化簡計算秩,但定義不是「我這次算到的主元數」。唯一性定理保證所有
合法 RREF 路徑都給出同一個主元數。
常見錯誤
不要忘記欄關係的角色 證明並不是說行變換保留實際列空間;一般而言它不保留。真正被使用的是對應欄
之間的線性關係模式。
快速檢查
思考檢查
若兩個 RREF 矩陣都與同一個矩陣行等價,可以推出甚麼?
解答 · 答案
思考檢查
RREF 唯一性怎樣保證本節所用秩定義的良定性?
解答 · 答案 秩定義為 RREF 中的主元欄數目。若 RREF 不唯一,不同化簡路徑可能給出不同
主元數。因為 RREF 唯一,主元數便不依賴路徑。
思考檢查
若與 A A A 行等價的唯一 RREF 有第 1 1 1 、3 3 3 、5 5 5 欄為主元欄,rank ( A ) \operatorname{rank}(A) rank ( A ) 是多少?
解答 · 答案
練習
練習 1
設
C = [ 1 4 0 2 0 0 1 − 3 0 0 0 0 ] . C=
\begin{bmatrix}
1&4&0&2\\
0&0&1&-3\\
0&0&0&0
\end{bmatrix}. C = 1 0 0 4 0 0 0 1 0 2 − 3 0 .
指出其主元欄,並把每個自由欄寫成主元欄的線性組合。
解答 · 練習 1 導引解答 主元欄是第 1 1 1 欄與第 3 3 3 欄:
c 1 = e 1 , c 3 = e 2 . c_1=e_1,\qquad c_3=e_2. c 1 = e 1 , c 3 = e 2 . 自由欄是第 2 2 2 欄與第 4 4 4 欄。由它們在主元行中的條目可得
c 2 = 4 c 1 , c 4 = 2 c 1 − 3 c 3 . c_2=4c_1,
\qquad
c_4=2c_1-3c_3. c 2 = 4 c 1 , c 4 = 2 c 1 − 3 c 3 .
練習 2
假設 B B B 是與練習 1 中 C C C 行等價的 RREF。用欄關係說明為何 B = C B=C B = C 。
解答 · 練習 2 導引解答 因為 c 1 c_1 c 1 是第一個主元欄,B B B 的第一欄必須是 b 1 = e 1 = c 1 b_1=e_1=c_1 b 1 = e 1 = c 1 。關係
c 2 = 4 c 1 c_2=4c_1 c 2 = 4 c 1 被保留,所以 b 2 = 4 b 1 = 4 c 1 = c 2 b_2=4b_1=4c_1=c_2 b 2 = 4 b 1 = 4 c 1 = c 2 。
C C C 的第三欄不是其左方各欄的線性組合,所以 B B B 的第三欄被迫成為下一個主元欄:
b 3 = e 2 = c 3 . b_3=e_2=c_3. b 3 = e 2 = c 3 . 最後,c 4 = 2 c 1 − 3 c 3 c_4=2c_1-3c_3 c 4 = 2 c 1 − 3 c 3 被保留,所以
b 4 = 2 b 1 − 3 b 3 = 2 c 1 − 3 c 3 = c 4 . b_4=2b_1-3b_3=2c_1-3c_3=c_4. b 4 = 2 b 1 − 3 b 3 = 2 c 1 − 3 c 3 = c 4 . 因此每一欄都相同,B = C B=C B = C 。
練習 3
解釋為甚麼以下兩個行等價的 REF 矩陣不會反駁 RREF 唯一性:
E 1 = [ 1 2 0 0 ] , E 2 = [ 2 4 0 0 ] . E_1=
\begin{bmatrix}
1&2\\
0&0
\end{bmatrix},
\qquad
E_2=
\begin{bmatrix}
2&4\\
0&0
\end{bmatrix}. E 1 = [ 1 0 2 0 ] , E 2 = [ 2 0 4 0 ] .
解答 · 練習 3 導引解答 它們行等價,而且都有行階梯形外觀,但 E 2 E_2 E 2 不是最簡行階梯形,因為它的首
項是 2 2 2 ,不是 1 1 1 。
RREF 唯一性說的是最簡行階梯代表元唯一。它不是說每個中途得到的 REF 代表元
都唯一。
相關筆記
本節應在
2.5 行階梯形的存在性
和
5.1 可逆矩陣
之後閱讀。它也支撐
6.6 列空間、行空間與秩 。