2.8 行列のランク

これまでの議論ではある行列がベクトル空間をベクトル空間に写すような線形写像であると捉えてきた.少し見方を変えると,行列と写像の先のベクトル空間が対応している(すなわち,行列が定まれば写像先のベクトル空間も定まる)と考えることもできる.

特に行列による線形写像を考える時,写像の像のベクトル空間の次元に興味があるケースがある.これを行列の「ランク(rank)」という.

Definition 2.16 (行列のランク) ベクトル空間V,Wについて,線形写像f:VWを定める行列Aを考える.この時f(V)の次元をA階数・階級・ランクといい,rank f,rank A,rank(A)などと表す.

写像においてカーネルとランクには次の定理のような重要な関係がある.

Theorem 2.13 (次元の公式) ベクトル空間Rn,Wについて,線形写像f:RnWに対応する行列Aを考える.この時

rank(A)=ndim(K(f))

が成り立つ.

行列Aによって\boldsymbol 0に写されるベクトルで構成される部分ベクトル空間の次元だけ,元のベクトルの部分空間から,写像の先のベクトル空間の次元が下がることを意味している.

また,この関係から,ランクまたはカーネルの次元がわかれば,一方も求めることができる.

以下に行列のランクについてよく知られている性質を紹介する.

Theorem 2.14 (ランクの性質) 行列のランクについて次のような性質が成り立つ.

  1. A \in \mathbb R^{n\times m}, \text{rank}(A) \leq \min(m,n)
  2. \text{rank}(A^{\top}) = \text{rank}(A)
  3. \text{rank}(A^{\top} A) = \text{rank}(A A^{\top}) = \text{rank}(A)
  4. \text{rank}(AB) \leq \text{rank}(A), \text{rank}(AB) \leq \text{rank}(B)
  5. 正則行列B,Cに対して,\text{rank}(BA) = \text{rank}(AC) = \text{rank}(A)
  6. \text{rank}(A+B) \leq \text{rank}(A) + \text{rank}(B)
  7. A \in \mathbb R^{n\times n}に対して,\text{rank}(A) = n \Leftrightarrow Aは正則行列.
  8. m \geq nとして,A \in \mathbb R^{n\times m}についてA^{\top}Aが正定値行列 \Leftrightarrow \text{rank}(A) = n

特に行列のランクが次元数nと一致する時,フルランクであるという.7,8の性質は,正方行列について,逆行列が存在すればフルランクであり,その逆も成り立つという非常に強い性質である.

2.8.1 行列のランクの求め方

さて行列のランクが重要な概念であることを紹介してきたが,最後にランクの求め方について紹介する.

これまでの性質から,行列Aのランクとは,Aによって写される部分ベクトル空間の次元であり,それは部分ベクトル空間の基底の数と一致する. すなわち,行列Aのランクとはそのまま行列Aの基底と一致することを意味している.

結局行列Aの列(または行)ベクトルのうち一次独立なものの数がわかればそれがAのランクとなる.要は,行列の基本変形により逆行列を求める操作と同じことで,逆行列が求まればフルランクであり,もし存在しなければそれがわかった時点で一次独立であるようなベクトルの数が求めるランクとなる.

Example 2.1 (行列のランクの計算) \begin{align} A = \begin{pmatrix} 3 & 4 & 5 \\ 2 & 1 & 1 \\ 4 & 2 & 2 \end{pmatrix} \end{align}

とすると,3行目のベクトルが2行目のベクトルの2倍になっていることから,一次独立な行ベクトルの組は(3, 4, 5), (2, 1, 1)となり\text{rank}(A) = 2となる(もちろん,(3,4,5), (4,2,2)としても同じことである).

Exercise 2.7 (行列のランクの計算) 次の行列のランクを求めよ。

\begin{align} \begin{pmatrix} 4 & -1 \\ 1 & 3 \\ \end{align}