矩陣乘法是第一個真正把「行」與「列」結合起來的矩陣運算。它也是矩陣之所
以能表達複合、線性方程組與逆矩陣的核心原因。所以這條規則不能只靠死記;
讀者需要理解每一步的大小條件所表達的結構。
動機
矩陣加法與數乘都是逐項進行。矩陣乘法則不同:輸出中的一個元素,是由左邊
矩陣的一整行與右邊矩陣的一整列共同決定。
這個大小條件也有結構上的原因。一個 n × p n \times p n × p 矩陣把具有 p p p 個元素的
向量送到具有 n n n 個元素的向量,而一個 m × n m \times n m × n 矩陣恰好可以接收這個
結果,再把它送到具有 m m m 個元素的向量。因此先做 B B B 、再做 A A A 的複合作用
大小為 m × p m \times p m × p ,正好就是 A B AB A B 的大小。相同的內側維數表示兩個作用能夠
銜接,外側維數則記錄複合作用的輸入與輸出。
定義
矩陣乘積何時有定義 若 A A A 是 m × n m \times n m × n 矩陣,B B B 是 n × p n \times p n × p 矩陣,則乘積 A B AB A B
有定義,且結果是 m × p m \times p m × p 矩陣。
若 A A A 的列數不等於 B B B 的行數,則 A B AB A B 未定義。
內側大小必須配對;外側大小則給出結果矩陣的大小。
行乘列規則
定義
矩陣乘法 設 A = [ a i j ] A = [a_{ij}] A = [ a ij ] 是 m × n m \times n m × n 矩陣,B = [ b j k ] B = [b_{jk}] B = [ b jk ] 是 n × p n \times p n × p
矩陣。
則 A B AB A B 的 ( i , k ) (i,k) ( i , k ) 元素為
( A B ) i k = a i 1 b 1 k + a i 2 b 2 k + ⋯ + a i n b n k . (AB)_{ik} = a_{i1}b_{1k} + a_{i2}b_{2k} + \cdots + a_{in}b_{nk}. ( A B ) ik = a i 1 b 1 k + a i 2 b 2 k + ⋯ + a in b nk . 也就是說,輸出中的一個元素,是 A A A 的第 i i i 行與 B B B 的第 k k k 列按位相
乘後再相加。
這個定義同時說明三件事:
矩陣乘法不是逐項相乘;
內側大小必須吻合;
一個輸出元素會用到整行與整列中所有對應位置。
例題
細算一個矩陣乘積 令
A = [ 1 2 3 − 1 ] , B = [ 4 0 5 1 ] . A =
\begin{bmatrix}
1 & 2 \\
3 & -1
\end{bmatrix},
\qquad
B =
\begin{bmatrix}
4 & 0 \\
5 & 1
\end{bmatrix}. A = [ 1 3 2 − 1 ] , B = [ 4 5 0 1 ] . 由於兩者都是 2 × 2 2 \times 2 2 × 2 ,所以 A B AB A B 有定義。其元素為
( A B ) 11 = 1 ⋅ 4 + 2 ⋅ 5 = 14 , (AB)_{11} = 1 \cdot 4 + 2 \cdot 5 = 14, ( A B ) 11 = 1 ⋅ 4 + 2 ⋅ 5 = 14 , ( A B ) 12 = 1 ⋅ 0 + 2 ⋅ 1 = 2 , (AB)_{12} = 1 \cdot 0 + 2 \cdot 1 = 2, ( A B ) 12 = 1 ⋅ 0 + 2 ⋅ 1 = 2 , ( A B ) 21 = 3 ⋅ 4 + ( − 1 ) ⋅ 5 = 7 , (AB)_{21} = 3 \cdot 4 + (-1) \cdot 5 = 7, ( A B ) 21 = 3 ⋅ 4 + ( − 1 ) ⋅ 5 = 7 , ( A B ) 22 = 3 ⋅ 0 + ( − 1 ) ⋅ 1 = − 1. (AB)_{22} = 3 \cdot 0 + (-1) \cdot 1 = -1. ( A B ) 22 = 3 ⋅ 0 + ( − 1 ) ⋅ 1 = − 1. 因此
A B = [ 14 2 7 − 1 ] . AB =
\begin{bmatrix}
14 & 2 \\
7 & -1
\end{bmatrix}. A B = [ 14 7 2 − 1 ] .
矩陣乘向量就是方程組語言
若 x x x 是列向量,那麼 A x Ax A x 只是矩陣乘法的特例,但它剛好把線性方程組的左
邊全部打包起來。
對
A = [ 1 2 − 1 3 − 1 5 ] , x = [ x 1 x 2 x 3 ] , A =
\begin{bmatrix}
1 & 2 & -1 \\
3 & -1 & 5
\end{bmatrix},
\qquad
x =
\begin{bmatrix}
x_1 \\ x_2 \\ x_3
\end{bmatrix}, A = [ 1 3 2 − 1 − 1 5 ] , x = x 1 x 2 x 3 ,
有
A x = [ x 1 + 2 x 2 − x 3 3 x 1 − x 2 + 5 x 3 ] . Ax =
\begin{bmatrix}
x_1 + 2x_2 - x_3 \\
3x_1 - x_2 + 5x_3
\end{bmatrix}. A x = [ x 1 + 2 x 2 − x 3 3 x 1 − x 2 + 5 x 3 ] .
所以 A x = b Ax = b A x = b 並不是純粹縮寫,而是把整個方程組寫成一個矩陣乘積。
逐行讀出 Ax 對應的方程
下面的圖解保留同一個符號化的 2 × 3 2 \times 3 2 × 3 乘 3 × 1 3 \times 1 3 × 1 乘積,同時把 A A A
的每一行讀成 A x = b Ax = b A x = b 裏的方程。它的角色是連接上面的公式和本頁稍後的可編輯乘法工具。
把矩陣乘積讀成方程 觀看行乘列乘法如何把 Ax = b 變成完整方程組:每一行讀出一條方程。
先檢查大小
2 x 3 矩陣可以乘 3 x 1 向量,因為 A 的每一行剛好有三個元素與 x 配對。
讀第 1 行
第一個輸出元素是 A 的第 1 行與 x 配對:a11*x1 + a12*x2 + a13*x3。
設成 b1
當 Ax = b,這個第一輸出元素就成為方程組的第一條方程。
讀第 2 行
第 2 行給出第二條方程:a21*x1 + a22*x2 + a23*x3 = b2。
疊成方程組
Ax = b 就是把所有按行讀出的方程上下疊起,再用一條矩陣方程寫出。
推廣到 AB
若 B = [u v],則 AB = [Au Av]。一般矩陣乘積就是多個 Ax 式乘積並排。
行乘列規則解釋了為何一條緊湊的 Ax = b 可以保存整個線性方程組。A 的每一行提供一條方程;完整乘積 AB 則對 B 的每一列重複同一想法。
單位矩陣是刻意「甚麼也不改變」的矩陣
定義
單位矩陣 對每個正整數 n n n ,I n I_n I n 表示 n × n n \times n n × n 單位矩陣:主對角線上全是 1 1 1 ,
其餘位置全是 0 0 0 。
例如
I 2 = [ 1 0 0 1 ] , I 3 = [ 1 0 0 0 1 0 0 0 1 ] . I_2 =
\begin{bmatrix}
1 & 0 \\
0 & 1
\end{bmatrix},
\qquad
I_3 =
\begin{bmatrix}
1 & 0 & 0 \\
0 & 1 & 0 \\
0 & 0 & 1
\end{bmatrix}. I 2 = [ 1 0 0 1 ] , I 3 = 1 0 0 0 1 0 0 0 1 .
單位矩陣之所以重要,是因為它對任何大小相容的矩陣都不起改變作用:
A I n = A , I m A = A . AI_n = A, \qquad I_m A = A. A I n = A , I m A = A .
例題
為甚麼乘上單位矩陣不會改變矩陣 若
A = [ 2 − 1 4 3 ] , A =
\begin{bmatrix}
2 & -1 \\
4 & 3
\end{bmatrix}, A = [ 2 4 − 1 3 ] , 則
A I 2 = [ 2 − 1 4 3 ] [ 1 0 0 1 ] = [ 2 − 1 4 3 ] . AI_2 =
\begin{bmatrix}
2 & -1 \\
4 & 3
\end{bmatrix}
\begin{bmatrix}
1 & 0 \\
0 & 1
\end{bmatrix}
=
\begin{bmatrix}
2 & -1 \\
4 & 3
\end{bmatrix}. A I 2 = [ 2 4 − 1 3 ] [ 1 0 0 1 ] = [ 2 4 − 1 3 ] . 因為 I 2 I_2 I 2 的第一列會抽出 A A A 的第一列,第二列會抽出 A A A 的第二列。
這正是往後定義逆矩陣的原因:若 A − 1 A^{-1} A − 1 存在,就要求 A A − 1 = I AA^{-1} = I A A − 1 = I 。
看行乘列規則與單位矩陣的作用
下面的圖解分別展示本節最重要的兩個機制:A B AB A B 的一個元素由一行與一列計算出來,而乘上單位矩陣會保留相容的行或列。比較這些情況後,再用下面的互動工具自己選擇不同輸出位置。
矩陣乘積與單位矩陣 觀看一個矩陣乘積元素如何由行列求和形成,再看單位矩陣為何會保留原本的行與列。
大小入口
2 x 3 矩陣可以乘 3 x 2 矩陣,因為內側大小吻合。外側大小決定 AB 是 2 x 2 矩陣。
一個元素
左上角輸出元素使用 A 的第 1 行與 B 的第 1 列:c11 = 1*4 + 2*5 + (-1)*6 = 8。
整個乘積
對每個輸出格重複行乘列規則。乘積不是把對應位置逐格相乘而成。
右邊單位矩陣
在 A I_n = A 中,I_n 的列會選出 A 的各列,所以右乘單位矩陣保持 A 不變。
左邊單位矩陣
在 I_m A = A 中,I_m 的行會選出 A 的各行,所以左乘單位矩陣也保持 A 不變。
次序提醒
單位矩陣是特殊情況。一般而言,AB 與 BA 回答的是不同的行列問題,不必相等。
矩陣乘積由相容的內側大小決定是否有定義。每個輸出元素都是行列求和,而單位矩陣會保持相容矩陣不變,因為它的行和列會選回原本的行與列。
乘法一般不交換
線性代數最早令學生不習慣的地方之一,就是
A B ≠ B A AB \ne BA A B = B A
一般而言就是如此。
有時兩個乘積都定義,但結果不同;有時其中一個有定義,另一個根本未定義。
所以次序同時影響「能不能做」與「做出來是甚麼」。
反例模式
大小相容並不保證交換 「任意兩個同樣大小的方陣都滿足 A B = B A AB=BA A B = B A 」是錯誤命題,即使兩種次序的乘積都有定義且大小相同。取
A = [ 1 2 3 4 ] , B = [ 0 0 0 1 ] . A=\begin{bmatrix}1&2\\3&4\end{bmatrix},\qquad
B=\begin{bmatrix}0&0\\0&1\end{bmatrix}. A = [ 1 3 2 4 ] , B = [ 0 0 0 1 ] . 兩者都是 2 × 2 2\times2 2 × 2 實矩陣,滿足所提命題的假設。直接按行乘列計算,得到
A B = [ 0 2 0 4 ] , B A = [ 0 0 3 4 ] . AB=\begin{bmatrix}0&2\\0&4\end{bmatrix},\qquad
BA=\begin{bmatrix}0&0\\3&4\end{bmatrix}. A B = [ 0 0 2 4 ] , B A = [ 0 3 0 4 ] . 例如,( A B ) 12 = 1 ⋅ 0 + 2 ⋅ 1 = 2 (AB)_{12}=1\cdot0+2\cdot1=2 ( A B ) 12 = 1 ⋅ 0 + 2 ⋅ 1 = 2 ,但 ( B A ) 12 = 0 ⋅ 2 + 0 ⋅ 4 = 0 (BA)_{12}=0\cdot2+0\cdot4=0 ( B A ) 12 = 0 ⋅ 2 + 0 ⋅ 4 = 0 。只要一對對應元素不同,就足以證明 A B ≠ B A AB\ne BA A B = B A 。失敗的結構原因是:右乘這個 B B B 會保留第二列、把第一列歸零;左乘它則保留第二行、把第一行歸零。
一個正確的修訂是:方陣與同樣大小的單位矩陣的任意純量倍都可交換。事實上,若 B = c I B=cI B = c I ,則 A B = A ( c I ) = c A = ( c I ) A = B A AB=A(cI)=cA=(cI)A=BA A B = A ( c I ) = c A = ( c I ) A = B A 。對於任意方陣,交換性需要另行論證;大小相容只保證乘法有定義,並不保證因子可以調換。
下面的圖可以幫你直接看到:一個輸出元素,是如何由一行與一列構成的。
邊讀邊試
跟著看一格矩陣乘法 互動工具會在你改變 A 與 B 的元素時,即時更新 AB 的每一格。
結果
c11 c12 c21 c22
8 = 1×2 + 2×3
用列的觀點讀取乘積
除了逐項計算之外,矩陣乘法還有另一種非常重要的讀法。
若把 B B B 的列寫成
B = [ b 1 b 2 ⋯ b p ] , B = [b_1\ b_2\ \cdots\ b_p], B = [ b 1 b 2 ⋯ b p ] ,
則有
A B = [ A b 1 A b 2 ⋯ A b p ] . AB = [Ab_1\ Ab_2\ \cdots\ Ab_p]. A B = [ A b 1 A b 2 ⋯ A b p ] .
換言之,乘積的每一列,都可以理解為 A A A 乘上 B B B 的對應列向量。
例題
逐列讀取同一個乘積 令
A = [ 1 2 3 − 1 ] , B = [ 4 0 5 1 ] . A =
\begin{bmatrix}
1 & 2 \\
3 & -1
\end{bmatrix},
\qquad
B =
\begin{bmatrix}
4 & 0 \\
5 & 1
\end{bmatrix}. A = [ 1 3 2 − 1 ] , B = [ 4 5 0 1 ] . 把 B B B 的兩列記為
b 1 = [ 4 5 ] , b 2 = [ 0 1 ] . b_1 =
\begin{bmatrix}
4 \\ 5
\end{bmatrix},
\qquad
b_2 =
\begin{bmatrix}
0 \\ 1
\end{bmatrix}. b 1 = [ 4 5 ] , b 2 = [ 0 1 ] . 那麼
A b 1 = [ 14 7 ] , A b 2 = [ 2 − 1 ] . Ab_1 =
\begin{bmatrix}
14 \\ 7
\end{bmatrix},
\qquad
Ab_2 =
\begin{bmatrix}
2 \\ -1
\end{bmatrix}. A b 1 = [ 14 7 ] , A b 2 = [ 2 − 1 ] . 因此
A B = [ 14 2 7 − 1 ] . AB =
\begin{bmatrix}
14 & 2 \\
7 & -1
\end{bmatrix}. A B = [ 14 7 2 − 1 ] . 這與逐項使用行乘列規則所得的答案相同。列的觀點強調的是:一個矩陣乘積把
多個矩陣乘向量的運算並列地組合在一起。
矩陣乘法其實表示複合
矩陣乘法不是任意規定的公式,而是用來表達線性映射複合的規則。
若向量 x x x 先被送到 B x Bx B x ,再將結果送到 A ( B x ) A(Bx) A ( B x ) ,則整體作用就是
( A B ) x . (AB)x. ( A B ) x .
所以內側大小一定要吻合,因為第一個變換的輸出,必須是第二個變換可以接收
的輸入。
定理
結合律對應重複複合 只要相關乘積有定義,就有
A ( B C ) = ( A B ) C . A(BC) = (AB)C. A ( BC ) = ( A B ) C . 所以一串矩陣乘積可以改變分組方式,而不改變最後的線性變換。
這並不表示可以改變因子的次序。結合律只允許改變括號,而不允許重新排列因子。
例題
可以改變括號,但不能改變次序 設 A A A 是 2 × 3 2 \times 3 2 × 3 矩陣,B B B 是 3 × 4 3 \times 4 3 × 4 矩陣,C C C 是
4 × 2 4 \times 2 4 × 2 矩陣。
此時 A B AB A B 與 B C BC BC 都有定義,所以 ( A B ) C (AB)C ( A B ) C 與 A ( B C ) A(BC) A ( BC ) 都有意義;結合律說明
它們相等。更具體地說,A B AB A B 的大小是 2 × 4 2 \times 4 2 × 4 ,所以 ( A B ) C (AB)C ( A B ) C 的大小是
2 × 2 2 \times 2 2 × 2 ;B C BC BC 的大小是 3 × 2 3 \times 2 3 × 2 ,所以 A ( B C ) A(BC) A ( BC ) 也是
2 × 2 2 \times 2 2 × 2 。
但是 B A BA B A 根本沒有定義,因為它的兩個內側維數 4 4 4 與 2 2 2 不相等。因此矩陣
乘法具有結合律,卻一般不具有交換律。
標準基向量解釋列的觀點為何自然
在 R n \mathbb{R}^n R n 中,e k e_k e k 是第 k k k 個位置等於 1 1 1 、其餘位置都為 0 0 0 的向量。
若 A A A 是 m × n m \times n m × n 矩陣,則 A e k Ae_k A e k 恰好是 A A A 的第 k k k 列。
因此單位矩陣並不神秘。I n I_n I n 的各列就是 e 1 , e 2 , … , e n e_1, e_2, \ldots, e_n e 1 , e 2 , … , e n ,所以
右乘 I n I_n I n ,其實就是逐列把 A A A 本身完整地重建出來。
同樣的基本檢驗亦適用於零矩陣。若右邊矩陣的每一列都是零向量,則乘積
的每一列都會變成零向量,所以任何大小相容的 A 0 A0 A 0 都一定是零矩陣。
定理
矩陣由它對向量的作用唯一確定 設 A A A 與 B B B 都是 m × n m \times n m × n 矩陣。若
A x = B x 對每個 x ∈ R n , Ax=Bx \qquad \text{對每個 } x\in\mathbb{R}^n, A x = B x 對每個 x ∈ R n , 則 A = B A=B A = B 。
證明
利用標準基證明 對每個 k = 1 , … , n k=1,\ldots,n k = 1 , … , n ,把標準基向量 e k e_k e k 代入假設,得到 A e k = B e k Ae_k=Be_k A e k = B e k 。
其中 A e k Ae_k A e k 是 A A A 的第 k k k 列,而 B e k Be_k B e k 是 B B B 的第 k k k 列。因此兩個
矩陣的第 k k k 列對每個 k k k 都相同。它們的所有列、因而所有元素都相同,故
A = B A=B A = B 。
「對每個 x x x 」是不可缺少的條件。兩個不同矩陣可以在某一個向量上作用相同;
例如,兩者都會把零向量送到零向量。上面的證明還給出更強的檢驗方法:無須
逐一檢查所有向量,只要檢查 n n n 個標準基向量,就能逐列確定整個矩陣。
最先要記住的代數法則
當乘法有定義之後,下一個問題是:它與已熟悉的其他矩陣運算如何配合。
只要大小相容,矩陣乘法滿足
A ( B + C ) = A B + A C , ( A + B ) C = A C + B C , A(B + C) = AB + AC,
\qquad
(A + B)C = AC + BC, A ( B + C ) = A B + A C , ( A + B ) C = A C + BC ,
而純量亦可以搬進搬出:
( c A ) B = c ( A B ) = A ( c B ) . (cA)B = c(AB) = A(cB). ( c A ) B = c ( A B ) = A ( c B ) .
零矩陣提供最直接的基本檢驗。若 0 0 0 是大小相容的零矩陣,便有
A 0 = 0 , 0 A = 0. A0 = 0,
\qquad
0A = 0. A 0 = 0 , 0 A = 0.
原因是:行乘列時只要其中一邊全部是零,所有輸出元素都只能是零。
這幾條法則雖然基本,但往後討論逆矩陣、分塊矩陣計算和更長的乘積推理時,
都會默認使用。如果不把它們明確掌握,後面的長計算便很難核對。
未知元素與因子的次序
含有未知元素的乘積把三個要點連在一起:相容的大小、決定每個輸出元素的
行與欄,以及因子的次序。先用這些結構資訊建立關係,再求解所得的純量方程。
例題
由部分已知乘積反推出未知數 令
A = [ 1 2 1 3 1 0 2 1 ] , B = [ a b 1 1 b a 1 2 ] . A =
\begin{bmatrix}
1 & 2 & 1 & 3 \\
1 & 0 & 2 & 1
\end{bmatrix},
\qquad
B =
\begin{bmatrix}
a & b \\
1 & 1 \\
b & a \\
1 & 2
\end{bmatrix}. A = [ 1 1 2 0 1 2 3 1 ] , B = a 1 b 1 b 1 a 2 . 假設
A B = [ 1 c 3 d ] . AB =
\begin{bmatrix}
1 & c \\
3 & d
\end{bmatrix}. A B = [ 1 3 c d ] . 乘積有定義,因為 A A A 是 2 × 4 2 \times 4 2 × 4 ,B B B 是 4 × 2 4 \times 2 4 × 2 ,所以 A B AB A B
必定是 2 × 2 2 \times 2 2 × 2 。只計算需要比較的元素,可得
A B = [ a + b + 5 a + b + 8 a + 2 b + 1 2 a + b + 2 ] . AB =
\begin{bmatrix}
a+b+5 & a+b+8 \\
a+2b+1 & 2a+b+2
\end{bmatrix}. A B = [ a + b + 5 a + 2 b + 1 a + b + 8 2 a + b + 2 ] . 把第一列與已知矩陣比較,得到
a + b + 5 = 1 , a + 2 b + 1 = 3. a+b+5=1,
\qquad
a+2b+1=3. a + b + 5 = 1 , a + 2 b + 1 = 3. 因此
a + b = − 4 , a + 2 b = 2. a+b=-4,
\qquad
a+2b=2. a + b = − 4 , a + 2 b = 2. 第二條減第一條得到 b = 6 b=6 b = 6 ,再代入得到 a = − 10 a=-10 a = − 10 。餘下元素是
c = a + b + 8 = 4 , d = 2 a + b + 2 = − 12. c=a+b+8=4,
\qquad
d=2a+b+2=-12. c = a + b + 8 = 4 , d = 2 a + b + 2 = − 12.
這類題目的重點,不是把所有元素都盲目乘出來,而是抽出已知乘積元素所強制
的少數方程。
例題
展開乘積時不要假設矩陣可交換 令 A A A 與 B B B 是相同大小的方陣。則
( 5 A − B ) ( 2 A + 3 B ) = 5 A ( 2 A + 3 B ) − B ( 2 A + 3 B ) . (5A-B)(2A+3B)
= 5A(2A+3B)-B(2A+3B). ( 5 A − B ) ( 2 A + 3 B ) = 5 A ( 2 A + 3 B ) − B ( 2 A + 3 B ) . 繼續分配右邊因子:
5 A ( 2 A + 3 B ) − B ( 2 A + 3 B ) = 10 A 2 + 15 A B − 2 B A − 3 B 2 . 5A(2A+3B)-B(2A+3B)
=10A^2+15AB-2BA-3B^2. 5 A ( 2 A + 3 B ) − B ( 2 A + 3 B ) = 10 A 2 + 15 A B − 2 B A − 3 B 2 . 中間兩項是 15 A B 15AB 15 A B 與 − 2 B A -2BA − 2 B A 。除非已知 A B = B A AB=BA A B = B A ,否則不能把它們合併成
13 A B 13AB 13 A B 。
同一個警告亦解釋了常見錯誤:
( A + B ) ( A − B ) = A 2 − A B + B A − B 2 . (A+B)(A-B)
=A^2-AB+BA-B^2. ( A + B ) ( A − B ) = A 2 − A B + B A − B 2 .
只有在額外知道 A B = B A AB=BA A B = B A 時,這才等於 A 2 − B 2 A^2-B^2 A 2 − B 2 。實數代數會遮住這個問題,
因為實數乘法可交換;矩陣代數不會。
例題
零乘積不代表其中一個因子必定為零 令
A = [ 1 − 1 ] , B = [ 1 1 ] . A =
\begin{bmatrix}
1 & -1
\end{bmatrix},
\qquad
B =
\begin{bmatrix}
1 \\
1
\end{bmatrix}. A = [ 1 − 1 ] , B = [ 1 1 ] . 兩個矩陣都不是零矩陣,但
A B = [ 1 ⋅ 1 + ( − 1 ) ⋅ 1 ] = [ 0 ] . AB =
\begin{bmatrix}
1 \cdot 1 + (-1) \cdot 1
\end{bmatrix}
=
\begin{bmatrix}
0
\end{bmatrix}. A B = [ 1 ⋅ 1 + ( − 1 ) ⋅ 1 ] = [ 0 ] . 所以矩陣乘法與實數乘法不同:A B = 0 AB = 0 A B = 0 並不推出 A = 0 A = 0 A = 0 或 B = 0 B = 0 B = 0 。
定理
單位矩陣是唯一的 如果 E E E 是一個 n × n n \times n n × n 矩陣,而且對每個相容的 n × n n \times n n × n 矩陣 A A A
都滿足
E A = A and A E = A , EA = A \qquad \text{and} \qquad AE = A, E A = A and A E = A , 那麼必有 E = I n E = I_n E = I n 。
證明
為何不可能存在第二個單位矩陣 取 A = I n A = I_n A = I n 。由 E E E 的性質得到 E I n = I n EI_n = I_n E I n = I n 。但任何矩陣右乘 I n I_n I n 都保
持不變,所以 E I n = E EI_n = E E I n = E 。因此 E = I n E = I_n E = I n 。
常見錯誤
常見錯誤
矩陣乘法不是逐項相乘 ( A B ) i k (AB)_{ik} ( A B ) ik 不是 a i k b i k a_{ik}b_{ik} a ik b ik 。它來自 A A A 的第 i i i 行與 B B B 的第 k k k
列。
常見錯誤
一個方向可乘,不代表反方向也可乘 若 A A A 是 2 × 3 2 \times 3 2 × 3 、B B B 是 3 × 4 3 \times 4 3 × 4 ,則 A B AB A B 有定義,但 B A BA B A
沒有。不要自動把順序反過來。
常見錯誤
列觀點是看右邊因子的列 如果 B = [ b 1 b 2 ] B=[b_1\ b_2] B = [ b 1 b 2 ] ,則 A B = [ A b 1 A b 2 ] AB=[Ab_1\ Ab_2] A B = [ A b 1 A b 2 ] 。乘積的各列是 A A A 的列的線性
組合,而權重來自 B B B 的對應列。不要寫成 A B = [ a 1 b 1 a 2 b 2 ] AB=[a_1b_1\ a_2b_2] A B = [ a 1 b 1 a 2 b 2 ] ;這並不
符合矩陣乘法的定義。
常見錯誤
二項式公式需要可交換假設 公式 ( A + B ) 2 = A 2 + 2 A B + B 2 (A+B)^2=A^2+2AB+B^2 ( A + B ) 2 = A 2 + 2 A B + B 2 對矩陣不是自動成立。真正展開是
( A + B ) 2 = A 2 + A B + B A + B 2 . (A+B)^2=A^2+AB+BA+B^2. ( A + B ) 2 = A 2 + A B + B A + B 2 . 只有在 A B = B A AB=BA A B = B A 時,才可以把中間兩項合併。
總結
若 A A A 的大小為 m × n m \times n m × n 、B B B 的大小為 n × p n \times p n × p ,則 A B AB A B 的大小
為 m × p m \times p m × p ;內側維數不相等時,乘積沒有定義。每個元素由 A A A 的一行
與 B B B 的一列計算,而列公式 A B = [ A b 1 ⋯ A b p ] AB=[Ab_1\ \cdots\ Ab_p] A B = [ A b 1 ⋯ A b p ] 則把同一運算理解為
多個矩陣乘向量的運算。因此,A x = b Ax=b A x = b 正好能把一個線性方程組寫成一個對象。
單位矩陣不會改變大小相容的矩陣。矩陣乘法滿足結合律與分配律,但結合律只允許
改變括號,並不允許調換因子;一般而言,A B ≠ B A AB\ne BA A B = B A 。最後,等式
A e k = col k ( A ) Ae_k=\operatorname{col}_k(A) A e k = col k ( A ) 表明矩陣對標準基的作用會逐列確定這個矩陣。
所以若對每個 x ∈ R n x\in\mathbb{R}^n x ∈ R n 都有 A x = B x Ax=Bx A x = B x ,則必有 A = B A=B A = B 。
快速檢查
思考檢查
若 A A A 是 2 × 3 2 \times 3 2 × 3 、B B B 是 3 × 5 3 \times 5 3 × 5 ,那麼 A B AB A B 的大小是甚麼?
解答 · 答案 A B AB A B 有定義,而且大小是 2 × 5 2 \times 5 2 × 5 。
思考檢查
把一個大小相容的矩陣乘上 I n I_n I n ,會發生甚麼?
解答 · 答案
思考檢查
如果 B B B 的列向量是 b 1 b_1 b 1 和 b 2 b_2 b 2 ,應如何讀取 A B AB A B 的各列?
解答 · 答案 A B AB A B 的各列分別是 A b 1 Ab_1 A b 1 和 A b 2 Ab_2 A b 2 。
思考檢查
展開 ( 5 A − B ) ( 2 A + 3 B ) (5A-B)(2A+3B) ( 5 A − B ) ( 2 A + 3 B ) 時,B A BA B A 的係數是多少? 請把 A B AB A B 與 B A BA B A 當作不同項處理。
解答 · 答案 B A BA B A 的係數是 − 2 -2 − 2 ,因為該項來自 − B ( 2 A ) -B(2A) − B ( 2 A ) 。
練習
思考檢查
為甚麼 A x = b Ax = b A x = b 可以同時代表多條方程?
解答 · 答案 因為 A A A 的每一行與列向量 x x x 配對後,都會產生一條方程,所以 A x Ax A x 會把整個方程組一同打包。
思考檢查
為甚麼 A x = 0 Ax = 0 A x = 0 不論 A A A 是甚麼,都至少有一個解?
解答 · 引導解答 取零向量 x = 0 x = 0 x = 0 。由於 A 0 A0 A 0 的每個元素都是把 0 0 0 的元素做線性組合,所
以全部都是 0 0 0 。因此 A 0 = 0 A0 = 0 A 0 = 0 ,齊次系統永遠至少有平凡解。
思考檢查
為何有時 A B AB A B 有定義,但 B A BA B A 卻沒有定義?
解答 · 引導解答 A B AB A B 有定義,要求 A A A 的列數等於 B B B 的行數;而 B A BA B A 有定義,要求
B B B 的列數等於 A A A 的行數。這兩個條件不同,所以一個方向可以做,反方向
未必可以做。
思考檢查
令 A A A 、B B B 為上面含未知數例題中的矩陣。若 A B AB A B 的第一列是 [ 1 , 3 ] T [1,3]^T [ 1 , 3 ] T ,求 a a a 和 b b b 。
解答 · 引導解答 A B AB A B 的第一列給出
a + b + 5 = 1 , a + 2 b + 1 = 3. a+b+5=1,
\qquad
a+2b+1=3. a + b + 5 = 1 , a + 2 b + 1 = 3. 所以
a + b = − 4 , a + 2 b = 2. a+b=-4,
\qquad
a+2b=2. a + b = − 4 , a + 2 b = 2. 相減得 b = 6 b=6 b = 6 ,再代入 a + b = − 4 a+b=-4 a + b = − 4 得 a = − 10 a=-10 a = − 10 。
思考檢查
若 A A A 的第一行是 ( 4 , − 1 , 2 ) (4, -1, 2) ( 4 , − 1 , 2 ) ,而 x = ( x 1 , x 2 , x 3 ) T x = (x_1, x_2, x_3)^T x = ( x 1 , x 2 , x 3 ) T ,那麼 A x Ax A x 的第一個元素是甚麼?
解答 · 引導解答 第一個元素是 4 x 1 − x 2 + 2 x 3 4x_1 - x_2 + 2x_3 4 x 1 − x 2 + 2 x 3 。
相關筆記
本節建立在
2.1 矩陣基礎 之上。
下一節可讀
3.3 轉置、對稱矩陣與反對稱矩陣 ,
或直接跳到
5.1 可逆矩陣 。