矩陣的列秩與行秩相等,是線性代數基本定理的重要組成部分。其基本證明思路是,矩陣可以看作線性映射的轉換矩陣,行秩為像空間的維度,列秩為非零原像空間的維度,因此行秩與列秩相等,即像空間的維度與非零原像空間的維度相等(這裡的非零原像空間是指約去了零空間後的商空間:原像空間)。這從矩陣的奇異值分解就可以看出來。
給出這一結果的兩種證明. 第一個證明是簡短的,僅用到向量的線性組合的基本性質. 第二個證明利用了正交性[1]. 第一個證明利用了行空間的基, 第二個證明利用了列向量空間的基. 第一個證明適用於定義在純量域上的矩陣,第二個證明適用於內積空間。二者都適用於實或復的歐氏空間,也都易於修改去證明當A是線性轉換的情形.
證明一
編輯
令
A
{\displaystyle A}
是一個
m
×
n
{\displaystyle m\times n}
的矩陣,其行秩為
r
{\displaystyle r}
. 因此矩陣
A
{\displaystyle A}
的行空間的維度是
r
{\displaystyle r}
. 令
c
1
,
c
2
,
…
,
c
r
{\displaystyle c_{1},c_{2},\ldots ,c_{r}}
是
A
{\displaystyle A}
的行空間的一組基,構成
m
×
r
{\displaystyle m\times r}
矩陣
C
{\displaystyle C}
的行向量
C
=
[
c
1
,
c
2
,
…
,
c
r
]
{\displaystyle C=[c_{1},c_{2},\ldots ,c_{r}]}
,並使得
A
{\displaystyle A}
的每個行向量是
C
{\displaystyle C}
的
r
{\displaystyle r}
個行向量的線性組合. 由矩陣乘法的定義,存在一個
r
×
n
{\displaystyle r\times n}
矩陣
R
{\displaystyle R}
, 使得
A
=
C
R
{\displaystyle A=CR}
. (
A
{\displaystyle A}
的
(
i
,
j
)
{\displaystyle (i,j)}
元素是
c
i
{\displaystyle c_{i}}
與
R
{\displaystyle R}
的第
j
{\displaystyle j}
個列向量的點積.)
現在,由於
A
=
C
R
{\displaystyle A=CR}
,
A
{\displaystyle A}
的每個列向量是
R
{\displaystyle R}
的列向量的線性組合,這意味著
A
{\displaystyle A}
的列向量空間被包含於
R
{\displaystyle R}
的列向量空間之中. 因此
A
{\displaystyle A}
的列秩 ≤
R
{\displaystyle R}
的列秩. 但
R
{\displaystyle R}
僅有
r
{\displaystyle r}
列, 所以
R
{\displaystyle R}
的列秩 ≤
r
{\displaystyle r}
=
A
{\displaystyle A}
的行秩. 這就證明了
A
{\displaystyle A}
的列秩 ≤
A
{\displaystyle A}
的行秩.
把上述證明過程中的「列」與「行」交換,利用對偶性質同樣可證
A
{\displaystyle A}
的行秩 ≤
A
{\displaystyle A}
的列秩。更簡單的方法是考慮
A
{\displaystyle A}
的轉置矩陣
A
T
{\displaystyle A^{\mathrm {T} }}
,則
A
{\displaystyle A}
的行秩 =
A
T
{\displaystyle A^{\mathrm {T} }}
的列秩 ≤
A
T
{\displaystyle A^{\mathrm {T} }}
的行秩 =
A
{\displaystyle A}
的列秩. 這證明了
A
{\displaystyle A}
的行秩等於
A
{\displaystyle A}
的列秩. 證畢.
證明二
編輯
令
A
{\displaystyle A}
是
m
×
n
{\displaystyle m\times n}
矩陣,其列秩是
r
{\displaystyle r}
. 因此
A
{\displaystyle A}
的列向量空間的維度是
r
{\displaystyle r}
,設
x
1
,
x
2
,
…
,
x
r
{\displaystyle x_{1},x_{2},\ldots ,x_{r}}
是
A
{\displaystyle A}
的列向量空間的一組基. 如果把這組基當作原像行向量看待,則向量集
A
x
1
,
A
x
2
,
…
,
A
x
r
{\displaystyle Ax_{1},Ax_{2},\ldots ,Ax_{r}}
是線性獨立的。 這是因為對一組純量係數
c
1
,
c
2
,
…
,
c
r
{\displaystyle c_{1},c_{2},\ldots ,c_{r}}
,如果:
c
1
A
x
1
+
c
2
A
x
2
+
⋯
c
r
A
x
r
=
A
(
c
1
x
1
+
c
2
x
2
+
⋯
+
c
r
x
r
)
=
A
v
=
0
,
{\displaystyle c_{1}Ax_{1}+c_{2}Ax_{2}+\cdots c_{r}Ax_{r}=A(c_{1}x_{1}+c_{2}x_{2}+\cdots +c_{r}x_{r})=Av=0,}
其中
v
=
c
1
x
1
+
c
2
x
2
+
…
,
c
r
x
r
{\displaystyle v=c_{1}x_{1}+c_{2}x_{2}+\ldots ,c_{r}x_{r}}
. 則可以推出有兩個事實: (a)
v
{\displaystyle v}
是
A
{\displaystyle A}
列向量空間的線性組合, 即
v
{\displaystyle v}
屬於
A
{\displaystyle A}
的列向量空間;(b) 由於
A
v
{\displaystyle Av}
= 0,
v
{\displaystyle v}
正交於
A
{\displaystyle A}
的所有列向量,從而正交於
A
{\displaystyle A}
的列向量空間的所有向量. 事實(a)與(b)結合起來,則
v
{\displaystyle v}
正交於自身,這意味著
v
{\displaystyle v}
= 0. 由
v
{\displaystyle v}
的定義:
c
1
x
1
+
c
2
x
2
+
…
,
c
r
x
r
=
0.
{\displaystyle c_{1}x_{1}+c_{2}x_{2}+\ldots ,c_{r}x_{r}=0.}
再由
x
i
{\displaystyle x_{i}}
是
A
{\displaystyle A}
的列向量空間的一組線性獨立的基,可知
c
1
=
c
2
=
⋯
=
c
r
=
0
{\displaystyle c_{1}=c_{2}=\cdots =c_{r}=0}
.
A
x
1
,
A
x
2
,
…
,
A
x
r
{\displaystyle Ax_{1},Ax_{2},\ldots ,Ax_{r}}
因而是線性獨立的.
A
x
i
{\displaystyle Ax_{i}}
是
A
{\displaystyle A}
的行空間中的向量. 因此
A
x
1
,
A
x
2
,
…
,
A
x
r
{\displaystyle Ax_{1},Ax_{2},\ldots ,Ax_{r}}
是
A
{\displaystyle A}
的行空間中
r
{\displaystyle r}
個線性獨立的向量. 所以
A
{\displaystyle A}
的行向量空間的維數(
A
{\displaystyle A}
的行秩)必然不小於
r
{\displaystyle r}
. 這證明了
A
{\displaystyle A}
的列秩r ≤
A
{\displaystyle A}
的行秩. 把這一結果應用於
A
{\displaystyle A}
的轉置矩陣可以得到:
A
{\displaystyle A}
的行秩 =
A
T
{\displaystyle A^{\mathrm {T} }}
的列秩 ≤
A
T
{\displaystyle A^{\mathrm {T} }}
行秩 =
A
{\displaystyle A}
的列秩. 這證明了
A
{\displaystyle A}
的行秩等於
A
{\displaystyle A}
的列秩,證畢.
最後, 還可以證明rk(A) = rk(A*), 其中A*是A的共軛轉置或稱施密特轉置. 當A的元素都是實數, 這一結果變為rk(A) = rk(AT). 然而對於複系數矩陣,rk(A) = rk(A*)並不等價於列秩等於行秩, 需要用到上述兩個證明.
證明三
編輯
令A是一個m×n矩陣. 定義rk(A)為A的行秩,A*為A的共軛轉置或稱施密特轉置. 首先可知A*Ax = 0若且唯若Ax = 0.
A*Ax = 0 ⇒ x*A*Ax = 0 ⇒ (Ax)*(Ax) = 0 ⇒ ‖Ax‖2 = 0 ⇒ Ax = 0,
其中‖·‖是歐氏範數. 這說明A的零空間與A*A的零空間相同. 由秩-零化度定理, 可得rk(A) = rk(A*A). A*A的每一個行向量是A*的行向量的線性組合. 所以A*A的行空間是A*的行空間的子空間. 從而rk(A*A) ≤ rk(A*). 即: rk(A) = rk(A*A) ≤ rk(A*). 應用這一結果於A*可獲得不等式: 由於(A*)* = A, 可寫作rk(A*) ≤ rk((A*)*) = rk(A). 這證明了rk(A) = rk(A*). 證畢.