行列のランクの定義・例・一般的性質/公式


  ランクの計算方法については「ランクの求め方」を参考にして下さい。
行列のランク (階数) の定義
  $m \times n$ の行列 $A$ の列ベクトルを $\mathbf{a}_{1}, \mathbf{a}_{2}, \cdots, \mathbf{a}_{n}$ と表す。
これらの列ベクトルの中から、複数のベクトルを選択し、 最大で $r$ 個の線形独立なベクトルを選択できるとする。 すなわち、列ベクトル $\mathbf{a}_{1}, \mathbf{a}_{2}, \cdots, \mathbf{a}_{n}$ の中から、
を満たす $r$ 個のベクトル $\mathbf{a}_{m_{1}}, \hspace{0.5mm} \mathbf{a}_{m_{2}}, \hspace{0.5mm} \cdots, \hspace{0.5mm} \mathbf{a}_{m_{r}}$ を選択できるとする。
  このとき、その最大の個数 $r$ を行列のランク(rank, 階数)といい、
と表す。
簡単な例
  $(1)$   行列
のランクは $3$ である。
  $(2)$   行列
のランクは $2$ である。

証明
  $(1)$   行列
の列ベクトルは、
である。これらには
が成り立つので、 互いに線形独立である。 ゆえに、行列 $A$ の列ベクトルのうち線形独立なベクトルの最大個数は $3$ 個である。 よって、
である。

$(2)$   行列
の列ベクトルは、
である。
  $\mathbf{a}_{1}$ と $\mathbf{a}_{2}$ の間には、
が成立するので、 行列 $A$ の列ベクトルには、少なくても $2$ 個の線形独立なベクトルがある。
  一方で $\mathbf{a}_{1}, \mathbf{a}_{2}, \mathbf{a}_{3}$ に対して、
を仮定すると、 各係数の間には、
が成立する。こ の連立一次方程式の一つの解は、
であるので、
が成立しない。 ゆえに $\mathbf{a}_{1}, \mathbf{a}_{2}, \mathbf{a}_{3}$ は、互いに線形独立ではない。
  以上から、 行列 $A$ の列ベクトルのうち線形独立なベクトルの最大個数は $2$ 個である。 よって、
である。

補足:
  より複雑な行列のランクを計算するためには、行列を簡約化し、 主成分の数を数えるという方法が標準的である。そのような計算例については「ランクの求め方」を参考。
フルランク
  $m \times n$ の行列を $A$ とする。 $A$ のランクが行数 $m$ と 列数 $n$ の小さい方と一致するとき、すなわち、
であるとき、 $A$ をフルランク (最大階数) の行列という。正方行列の場合 ($m=n$) には、
であるとき、 フルランクと呼ばれる。

  $(1)$   行列
のランクは $3$ である(こちらを参考)。 $A$ は $4\times 3$ の行列であり、
が成り立つので、$A$ はフルランクである。

  $(2)$   行列
のランクは $2$ である(こちらを参考)。 $A$ は $3\times 3$ の行列であり、
であるので、$A$ はフルランクではない。 。

補足
  なお、行列 $A$ がフルランクであることは、行列 $A$ が正則行列であるための必要十分条件である。 証明は「「正則行列⇔フルランク」」を参考。
ランク = 簡約化した行列の主成分の数
  行列 $A$ のランクは $A$ を簡約化した行列 $A^{e}$ の 主成分の数に等しい。 すなわち、
行列のランクは簡約化した行列の主成分の数
が成り立つ。

証明
  任意の $m$ 行 $n$ 列の行列を $A$ とし、 $A$ の列ベクトルを $\mathbf{a}_{1}, \mathbf{a}_{2}, \cdots, \mathbf{a}_{n}$ と表す。
$A$ を簡約化した行列を $A^{e}$ とし、 $A^e$ の列ベクトルを $\mathbf{a}_{1}^e, \mathbf{a}_{2}^e, \cdots, \mathbf{a}_{n}^e$ と表す。
また基本ベクトルを
と定義する。
  一般に簡約化された行列は、 1 行から右下に向かって 1 段ずつ階段状に主成分が置かれ、 主成分を持つ列ベクトルが基本ベクトルになる (例えば、以下のような行列)。
よって、$A^e$ が $d$ 個の主成分を持つとすると、$A^e$ の列ベクトルには $d$ 個の基本ベクトル
$$ \tag{1} $$ が含まれ、 これらは線形独立である。
  一方、 $A^e$ はどの列ベクトルも $d+1$ 行以降の成分が全て $0$ である (または $d+1$ 行以降がない)。 したがって、

「$A^{e}$ の列ベクトルは、どれも $(1)$ の線形結合によって表すことができる。」 $\tag{2}$

  次に $(1)$ が $A^e$ の列ベクトルであることから、それぞれを
$$ \tag{3} $$ と表す。ここで $m_{j}$ は、$\mathbf{a}_{m_{j}}^{e}$ が$A^{e}$ の $m_{j}$ 列目であることを表すものとする。 これを用いると $(2)$ を

「$A^{e}$ の列ベクトルは、どれも $(3)$ の線形結合によって表すことができる。」 $\tag{4}$
と言い直すことができる。 ところで、 $(1)$ が線形独立であるので、 $(3)$ もまた線形独立である。すなわち、
$ \tag{5} $
が成り立つ。 このとき、 $(3)$ と同じ列にある $A$ の列ベクトル
$ \tag{6} $
に着目すると、 $A^{e}$ が $A$ を簡約化した行列であるから、 $A^{e}$ は $A$ を 行基本変形したものであり (逆に $A$ が $A^{e}$ を行基本変形したものでもあり)、 行基本変形によって、列ベクトルの線形独立性は保たれるので、 $(5)$ が成立するならば、$(6)$ に対しても
が成り立つ。 すなわち、 $(6)$ もまた線形独立である。
  次に、$(6)$ に含まれない $A$ の列ベクトルが $k$ 列目にあるとし、それを $\mathbf{a}_{k}$ と表す。 このとき、 $(6)$ に $\mathbf{a}_{k}$ を加えた
$ \tag{7} $ と同じ列にある $A^{e}$ の列ベクトルは
であるが、 $(4)$ から $\mathbf{a}_{k}^{e}$ を次のように表せる。
$ \tag{8} $
ところで、 行基本変形で結ばれる二つの行列はもとの行列と同一の一次関係を持つので、 $A$ の列ベクトルと $A^{e}$ の列ベクトルは同一の一次関係を持つ。 したがって $(8)$ より、 $(7)$ には
が成り立つ。 ゆえに、 $(7)$ は線形従属である。
  以上から、 $A$ の列ベクトルには、$d$ 個の線形独立な列 $(6)$ が含まれ、 それよりも一つでも多い列ベクトルの集合 $(7)$ が線形従属になってしまう。 ゆえに、 $A$ の列ベクトルの中で線形独立なベクトルの最大数は $d$ 個である。

  ところで、 $A$ の列ベクトルの中の線形独立なベクトルの最大数とは $A$ のランクそのものであるから、
である。
  $d$ は、簡約化された行列の主成分の数であったので、 この式は、$A$ のランクが $A$ を簡約化した行列 $A^e$ の主成分の数に等しいことを表している。

ランク = 写像の次元
  行列 $A$ を作用したベクトルは、 $A$ のランクに等しい数の線形独立なベクトルの線形結合によって表される。 言い換えると、 $A$ の写像の次元は $A$ のランクに等しい。 すなわち、
ランクは写像の次元に等しい
が成り立つ。

証明
  $m$ 行 $n$ 列 の行列 $A$ の列ベクトルを
$$ \tag{1} $$ とし、 $A$ を
と表す。 $A$ のランクが
であるとき、 ランクの定義により、 $(1)$ に含まれるベクトルの中で、 線形独立なベクトルの最大数は $r$ である。 そこで、$(1)$ の中から $r$ 個の線形独立なベクトルを取り出し、 それらを
$$ \tag{2} $$ と表す。 $(1)$ に含まれるこれら以外の $n-r$ 個のベクトルを
$$ \tag{3} $$ と表す。このとき、 $(2)$ と $(3)$ を合わせたベクトルの組
$$ \tag{4} $$ は、全体として $(1)$ に一致する。
  $(2)$ は数が最大になる線形独立なベクトルの組であるので、 これに $(3)$ に含まれる一つのベクトル $\mathbf{a}_{k_{j}}$ $(j=r+1,r+2,\cdots,n)$ を加えたベクトルの組
線形従属になる。 これらに含まれる一つのベクトルは、 その一つ以外のベクトルの線形結合によって表される。 よって、$\mathbf{a}_{k_{j}}$ を
$$ \tag{5} $$ と表すことが可能である (ここで $\alpha_{ji}$ は線形結合の係数) 。
  ところで、$n$ 次元ベクトル空間 $V_{n}$ の任意のベクトル
に $A$ を作用したベクトル $A \mathbf{x}$ は、
と表されるが、 $(4)$ と $(5)$ を用いると、この式は、
と表すことが出来る。 したがって、 $A \mathbf{x}$ は $r$ 個の線形独立なベクトルの線形結合によって表される。


  $\mathbf{x}$ が任意であるので、 $A \mathbf{x}$ の全体は $n$ 次元ベクトル空間 $V_{n}$ の行列 $A$ による写像 ($A$ の値域) である。 これが $r$ 個の線形独立なベクトルの線形結合によって表されるということは、 $A$ の値域が $r$ 次元ベクトル空間になることを意味する。
  $A$ の値域を $\mathrm{Im}(A)$ と表し、 次元を $ \dim ( \cdot ) $ と表すと、 このことは、 $\mathrm{Im}(A)$ の次元が $r$ であるので、
が成り立つ。

ランク = 行ベクトルの次元
  行列のランクは、 行ベクトルに含まれる線形独立なベクトルの総数 (行ベクトルの次元) に等しい。 すなわち、
が成り立つ。

証明
  行列の主成分とは、 各行を左から順に見て、 最初に現れる $0$ でない成分のことである (下の例の四角で囲った成分)。
したがって、主成分を持つ行は主成分を一つだけ持ち、 行列の主成分を持つ行の総数は必ず主成分の総数に等しい。 このことは、 任意の行列に対して成立するので、
が成り立つ。 ここで行列 $A$ を簡約化した行列を $A^e$ と表した。 一般に行列のランクは簡約化した行列の主成分の数に等しいので、すなわち、
であるので、 以上から、
$$ \tag{1} $$ である。
  簡約化した行列は、 $1$ 行から順に右に向かって一段ずつ主成分が下がってゆく階段状の行列であるので、 ある行の主成分が $k$ 列にあるとすると、その下の行にある主成分は必ず $k+1$ 列以降にある(以下の例を参考)。
ここで、上の行では $k$ 列の値が $1$ であり、下の行では $k$ 列の値 $0$ であることから、 上の行と下の行は線形独立であることが分かる。 簡約化した行列では、 このような関係が主成分を持つすべての行に対して成り立つので、 簡約化した行列の主成分を持つ行の全体が線形独立なベクトルの集合になる。
  したがって、 簡約化した行列には、 少なくとも主成分を持つ行の数だけ線形独立な行が含まれる。 一方で、 簡約化の定義から、 主成分を持たない行は全ての成分が $0$ の行である。 ゆえに、 簡約化した行列の線形独立な行の総数は、 主成分を持つの行の数に等しい。 すなわち、
が成り立つ。 これと $(1)$ から
$$ \tag{2} $$ である。
  続いて $A$ の行ベクトルを
$$ \tag{3} $$ と表す。すなわち、
とする。また $A^e$ の行ベクトルを
$$ \tag{4} $$ と表す。 すなわち、
とする。
  簡約化した行列は、元の行列を行基本変形して得られる。 また、行基本変形とは、各行を入れ替えたり、定数倍したり、他の行を足し合わせたりする変換である。 よって、簡約化した行列の各行 $(4)$ は、 元の行列 $A$ の各行 $(3)$ の線形結合によって
と表すことができる。ここで $\alpha_{ij}$ は線形結合の定数である。
  このように、 一つのベクトルの組 (この場合 $(4)$) が他方のベクトルの組 (この場合 $(3)$) の線形結合によって表される場合、 前者に含まれる線形独立なベクトルの総数が後者に含まれる線形独立なベクトルの総数を超えることはない。 よって、
が成り立つ。
  一方、 行基本変形のそれぞれの操作は、 行基本変形によって元に戻すことが可能である (例えば、$k$ 行と $l$ 行を入れ替える行基本変形は、 $l$ 行と $k$ 行を入れ替えると元に戻る)ので、 簡約化した行列を行基本変形することによって、 簡約化前の状態に戻すことが可能である。 行基本変形は、 各行を入れ替えたり、定数倍したり、他の行を足し合わせたりする変換であるので、 簡約化前のもとの行列 $A$ の各行 $(2)$ は、 簡約化した行列 $A^{e}$ の各行 $(3)$ の線形結合によって、
のように表すことが可能である。 ここで $\beta_{ij}$ は線形結合の定数である。 したがって、上と同様の理由により、
が成り立つ。 これらより、
が成り立つ。
  この関係と $(2)$ から
を得る。 また、線形独立なベクトルの総数のこと「次元」と呼ぶので、この関係を
と言い直してもよい。

行列のランク ≦ 行/列の数
  $m \times n$ の $A$ のランクは、 $A$ の行の数 $m$ 以下であり、 列の数 $n$ 以下でもある。 すなわち、
行列のランクは行の数以下であり列の数以下
が成り立つ。

証明
  $A$ を $m \times n$ の行列とする。
  行列のランクの定義は、 列ベクトルの中の線形独立なベクトルの総数であるので、 ランクが列ベクトルの数を超えることはない。 すなわち、
$$ \tag{1} $$ が成り立つ。
  一方で行列 $A$ のランクは、
$$ \tag{2} $$ であり、 主成分とは、 各行を左から順に見て、 最初に現れる $0$ でない数のことである (下の例参考。四角で囲った成分が主成分)。
従って、 主成分は一つの行に一つあるか、 一つもないかのどちらかである (行がゼロベクトルの場合には、その行に主成分がない)。 ゆえに、行列の主成分の数が行の数を超えることはない。 すなわち、
$$ \tag{3} $$ が成り立つ。 行列の簡約化は、 行基本変形によって成されるので、 行列の行数が変わることはない。すなわち、
$$ \tag{4} $$ である。 したがって、 $(2)$ と $(3)$ と $(4)$ により、 $A$ のランクが $A$ の行数を越えないことが示された。 すなわち、
$$ \tag{5} $$ が成り立つ。
  $(1)$ と $(5)$ により、 行列のランクは、 行の数と列の数の小さい方の数以下であることが示された。 これらををまとめて
と表してもよい。

行列の積のランク
  行列の積のランクは、 積を構成するそれぞれの行列のランク以下である。 すなわち、行列 $A$,$B$ に対して、
行列の積のランクの性質
が成り立つ。

証明
第一式の証明
  はじめに、
を証明する。
  行列 $A$ と $B$ をそれぞれ $m$ 行 $n$ 列、$n$ 行 $l$ 列の行列とする。 また、それぞれの列ベクトルを
と表すと、 $A$ と $B$ は、
と表される。
  また積 $AB$ を
と置き、$C$ の列ベクトルを
と表すと、 $C$ は、
と表される。
  これらを用いると、 $C$ の $i$ 行 $j$ 列成分 $C_{ij}$ は
と表される。 ここで $(\mathbf{a}_{k})_{i}$ は、$A$ の第 $k$ 列 $\mathbf{a}_{k}$ の第 $i$ 成分である。 この表し方から分かるように、$C$ の各列ベクトルは、$A$ の列ベクトルの線形結合によって表される。 すなわち、
と表される。
  このように、 一つのベクトルの組 (ここでは
) が他方のベクトルの組 (ここでは
) の線形結合によって表される場合、 一般に 前者に含まれる線形独立なベクトルの総数が、 後者に含まれる線形独立なベクトルの総数を超えることはない。よって、
が成り立つ。
  「列に含まれる線形独立なベクトルの総数」とは、 行列のランクの定義そのものであるので、
を得る。$C=AB$ と定義されていたので、
が成立する。
第二式の証明
  続いて
を証明する。
  転置行列のランクがもとの行列のランクに等しいこと、 および積の転置行列の性質から、
が成り立つ。
  上の証明から、 右辺には
が成り立つので、
を得る。
  ここで再び転置行列のランクがもとの行列のランクに等しいことを用いると、 右辺が $B$ のランクに等しいことが分かる。 以上より、
が成り立つことが示された。

正則行列との積のランク
  行列に正則行列を掛けてもランクは変わらない。 すなわち、行列 $A$ と正則行列 $B$, $C$ に対して、
正則行列との積のランク
が成り立つ。
転置行列のランク
  転置行列のランクは、元の行列のランクに等しい。すなわち、
転置行列のランク
が成り立つ。