行列のランク(階数)の求め方・意味を分かりやすく解説!

行列のランク

こんにちは、krです。今回は「行列のランクの求め方・性質」について分かりやすく解説します。

後半は結構色んなことを書いているので、気になるところだけ見てください。

初学者におすすめの線形代数の参考書・問題集7選

行列のランク(階数)とは?

ランクとは簡単に言えば「ある行列$A$の様々な性質を表す、Aに固有の特別な値」です。

とりあえず、「行列が持つ特別な値なんだな~」ぐらいに思っておいてください。

行列$A$の持つランクを$rank(A)$と表します。

ランクの定義

ランクには色々な定義があるのですが、最も簡単な定義は次の通りです。

ランクの定義

ランク = 階段行列の零ベクトルでない行の数

階段行列とはその名の通り「階段状になっている行列」です。また、零ベクトルとは「$0$だけの行または列」です。今回は行ですね。

つまり、ランクとは「階段状になっている行列の$0$だけでない行の数」です。

例を見てみましょう。

$$A=\begin{bmatrix} 1 & 0 & 1 \\ 0 & 0 & 0 \end{bmatrix} \quad rank(A)=1$$

$$A=\begin{bmatrix} 2 & 1 & 0 \\ 0 & 1 & 0 \\ 0 & 0 & 0 \end{bmatrix} \quad rank(A)=2$$

$$A=\begin{bmatrix} 1 & 2 & 0 \\ 0 & 2 & 3 \\ 0 & 0 & 3 \end{bmatrix} \quad rank(A)=3$$

一番上の行列は本来であれば$rank(A)=2$であったのですが、$0$だけの行があるせいでランクが下がってしまっています。このことを「ランク落ち」といい、行列Aを「ランク落ちした行列」といいます。

また、ランクは日本語で「階数」といいますが、これは「ランク=階段行列の階段の数=階数」という語源なんじゃないかと思います。

ランクの求め方

ランクの求め方は単純で、「階段行列を作って段数を数えれば良いだけ」です。

例1

例えば、

$$\begin{bmatrix} 1 & 1 \\ 3 & 6 \end{bmatrix}$$

を階段行列に変形する過程は次の通りです。

段数は2なので、ランクも2というわけです。簡単ですね。

例2

次は

$$\begin{bmatrix} 1 & 3 & 0 \\ 0 & 0 & 1 \end{bmatrix}$$

のランクを求めてみましょう。

段数は2なので、ランクも2です。

例3

次は

$$\begin{bmatrix} 1 & 2 \\ -2 & -1 \\ 0 & 3 \end{bmatrix}$$

のランクを求めてみましょう。

段数は2なので、ランクは2です。

ランクが$0$の行列ってあるの?

零行列はランクが$0$です。他にはありません。

$$\begin{bmatrix} 0 & 0 \\ 0 & 0 \end{bmatrix}$$

ランクの求め方のコツ

ランクを求めたいときは「階段行列を1段ずつ丁寧に作っていく」ことを意識しましょう。

例えば、先ほどの例3は次のようなことを意識しています。

一気に2段目まで作ろうとすると、計算ミスをしがちなので、1段1段丁寧に作るのが良いです。

注意点

階段行列を作るときは変形しすぎないように注意してください。

どういうことかというと、先ほどの例3は次のようにさらに変形を進めることができますが、

3番目の行列の時点でランクは求めることができるので、そのあとの計算は「無駄」なんです。

このような計算を「簡約化」といいますが、ランクを求めたいときは簡約化をする必要はなく、「階段行列を作るだけで良い」ということをしっかり覚えておきましょう。

くるる
くるる

なるほどっす!

【補足】行基本変形を行ってもランクは変わらない

ランクは行列固有のものです。どんな行基本変形を行っても、ランクは変わりません。

ランクの意味

ここからはランクがどのような意味を持っているのかについて説明します。

ランクと「連立方程式」の関係

ランクは連立方程式とかなり深い関係にあります。

どんな関係かというと、「係数行列のランクを調べれば、連立方程式の解がどのようなものなのかがわかる」のです。

図で表すとこんな関係になっています。

未知数とは求めたい$x_{1},x_{2}$などのことです。

この関係が本当に成り立っているのか確認してみましょう。

解は1つ

$$\begin{bmatrix} 1 & 2 \\ 2 & 3 \end{bmatrix} \begin{bmatrix} x_1 \\ x_2 \end{bmatrix} = \begin{bmatrix} 1 \\ 3 \end{bmatrix}$$

という連立方程式の拡大係数行列を次のように階段行列にします。

係数行列のランクは$2$、拡大係数行列のランクも$2$です。

「係数行列のランク=拡大係数行列のランクですか?」という質問には「はい」なので、とりあえず「解あり」であると分かります。

そして、「係数行列のランク=未知数の数」なので、「解は1つ」となります。

実際、連立方程式を解いてみると、

$$x_{1} = 3, \ x_{2} = -1$$

となり、正しいことが分かります。

解は無限個(不定解)

$$\begin{bmatrix} 1 & 2 & 1\\ 2 & 3 & 1\end{bmatrix} \begin{bmatrix} x_1 \\ x_2 \\ x_3 \end{bmatrix} = \begin{bmatrix} 1 \\ 3 \end{bmatrix}$$

という連立方程式の係数行列のランクを求めてみましょう。

係数行列のランクは$2$、拡大係数行列のランクも$2$です。

「係数行列のランク=拡大係数行列のランクですか?」という質問には「はい」なので、とりあえず「解あり」であると分かります。

そして、「係数行列のランク<未知数の数」なので、「解は無限個(不定値)」となります。

実際、連立方程式を解いてみると、

$$x_{1} = t+3, \ x_{2} = -t-1, \ x_{3} = t$$

という形になり、解が無限個存在するので、正しいと分かります。

解なし

$$\begin{bmatrix} 1 & -1 \\ 2 & -2 \end{bmatrix} \begin{bmatrix} x_1 \\ x_2 \end{bmatrix} = \begin{bmatrix} 2 \\ 3 \end{bmatrix}$$

という連立方程式の係数行列のランクを求めてみましょう。

係数行列のランクは$1$、拡大係数行列のランクは$2$になります。

「係数行列のランク=拡大係数行列のランクですか?」という質問には「いいえ」なので、「解なし」であると分かります。

実際、図の右側の行列の2行目を見てみると、$0=-1$という矛盾した式になっているため、この連立方程式に解はありません。

以上より、以下の図の関係は正しいと分かりました。

ランクと「行列式」の関係

$n$次正方行列$A$において、「$rank(A)<n$ ならば $det(A)=0$」です。

これはどのようなときに行列式が$0$になるかを考えると分かりやすいです。

行列式は「ある行(列)が$0$だけ」「ある行(列)が他の行(列)の定数倍」であるときに$0$になります。

例えば、

$$\begin{vmatrix} 1 & 2 & 3 \\ 4 & 5 & 6 \\ 0 & 0 & 0 \end{vmatrix} \quad \begin{vmatrix} 1 & 1 & 1 \\ 2 & 2 & 2 \\ 1 & 2 & 3 \end{vmatrix}$$

という行列式の値はどちらも$0$です。

1つ目の「ある行(列)が$0$だけ」の行列式はサラスの方法で計算したときに必ず$0$が掛けられるので、行列式は$0$になります。

2つ目の「ある行(列)が他の行(列)の定数倍」の行列式はなぜ必ず$0$になるのか直感では理解しにくいのですが、サラスの方法で計算したとき

$$\color{red}{1 \times 2} \times (1 \ or \ 2 \ or \ 3)-\color{red}{1 \times 2} \times (1 \ or \ 2 \ or \ 3)$$

というように、どの成分にも$1 \times 2$が絶対に掛かるから結果的に$0$になってしまうのです。

さて、「ある行(列)が$0$だけ」「ある行(列)が他の行(列)の定数倍」の行列式は$0$になることが分かったので、次はランクを調べてみましょう。先ほどの

$$\begin{bmatrix} 1 & 2 & 3 \\ 4 & 5 & 6 \\ 0 & 0 & 0 \end{bmatrix} \quad \begin{bmatrix} 1 & 1 & 1 \\ 2 & 2 & 2 \\ 1 & 2 & 3 \end{bmatrix}$$

という行列を階段行列に変形すると、

$$\begin{bmatrix} 1 & 2 & 3 \\ 0 & -3 & -6 \\ 0 & 0 & 0 \end{bmatrix} \quad \begin{bmatrix} 1 & 1 & 1 \\ 0 & 1 & 2 \\ 0 & 0 & 0 \end{bmatrix}$$

となります。どちらの行列もランクは$2$ですが、$3$次正方行列なので、「$rank(A)<n$」ですよね。

以上のことから「$rank(A)<n$ ならば $det(A)=0$」は正しいとなんとなく分かるかと思います。

逆に言えば、「$rank(A)=n$ならば$det(A) \neq 0$ 」です。

ランクと「逆行列」の関係

$n$次正方行列Aにおいて、「$rank(A)=n$ならば逆行列が存在する」という関係があります。

逆行列の求め方を思い出してほしいのですが、ある行列$A$の逆行列を求めたい場合、 単位行列 を左側にくっつけた行列を簡約化して左側に残った行列$B$が行列$A$の逆行列でしたよね。

ここで重要なのは簡約化後の行列の右側が「単位行列」になっていることです。

これが単位行列でないならば、行列$A$に逆行列は存在しません。

つまり、

のようになる場合、行列$A$の逆行列は存在しないということです。

例えば、

という行列では、簡約化後に逆行列っぽいものは出てくるのですが、

$$\begin{bmatrix} 1 & 0 \\ -2 & 0 \end{bmatrix} \begin{bmatrix} 1 & 0 \\ 2 & 1 \end{bmatrix} = \begin{bmatrix} 1 & 0 \\ -2 & 0 \end{bmatrix}$$

となってしまい、計算結果が単位行列にならないので、これは逆行列ではありませんよね。

なので、「簡約化をすると単位行列になる」というのが$n$次正方行列$A$が逆行列を持つ条件なのですが、単位行列になるということは「$rank(A)=n$」ですよね?

$$\begin{bmatrix} 1 & 0 \\ 0 & 1 \end{bmatrix}$$

のような単位行列のランクは当然「行列の列数」と等しいはずです。

だから、「$rank(A)=n$ならば逆行列が存在する」 といえるわけです。

補足

逆行列$ A^{-1}$は次のような公式で求めることができるため、前述の 「$rank(A)=n$ならば$det(A) \neq 0$ 」という関係から、「$rank(A)=n$ならば逆行列が存在する」という説明をすることもできます。

$$A^{-1} = \frac{\tilde{A}}{det(A)}$$

この公式を知っているならば、こっちの方が分かりやすいかもしれません。

ランクと「一次独立」の関係

ランクを見れば「ベクトルが一次独立かどうか」が分かります。(一次独立

一次独立の簡単な説明

まず、ベクトルが一次独立である条件は「他のベクトルの和または定数倍で表すことができない」です。

つまり、$\boldsymbol{a}, \boldsymbol{b}$というベクトルがあるとして、

$$\boldsymbol{a}=c \boldsymbol{b}$$

という形で表せない場合、ベクトル$\boldsymbol{a}, \boldsymbol{b}$は一次独立です。

これをもう少し一般化すると、

$$c_{1}\boldsymbol{a}+c_{2}\boldsymbol{b}=\boldsymbol{0}$$

という式を満たすのが、$c_{1}=c_{2}=0$に限る場合、 ベクトル$\boldsymbol{a}, \boldsymbol{b}$は一次独立です。

なぜなら、$c_{1}=c_{2}=0$に限る場合、

$$\boldsymbol{a}=-\frac{c_{2}}{c_{1}}\boldsymbol{b}$$

$$\boldsymbol{b}=-\frac{c_{1}}{c_{2}}\boldsymbol{a}$$

という形で表すことができないからです。

さて、本題の「ランクを見てベクトルが一次独立かどうかを判別する方法」を説明します。

本題

例として、ベクトル$\begin{bmatrix} 1 \\ 0 \end{bmatrix}, \begin{bmatrix} 2 \\ 0 \end{bmatrix}$を使います。

このベクトルは次のように表せられるので、明らかに一次独立ではありません(一次従属)。

$$\begin{bmatrix} 2 \\ 0 \end{bmatrix}=2\begin{bmatrix} 1 \\ 0 \end{bmatrix}$$

まず、次のような式を作ります。

$$c_{1} \begin{bmatrix} 1 \\ 0 \end{bmatrix} +c_{2} \begin{bmatrix} 2 \\ 0 \end{bmatrix} = \boldsymbol{0} $$

これを変形すると次のようになります。

$$\begin{bmatrix} 1 & 2 \\ 0 & 0 \end{bmatrix} \begin{bmatrix} c_{1} \\ c_{2} \end{bmatrix} = \boldsymbol{0} $$

ここで係数行列のランクを調べます。今回の例では計算せずともランクは$1$だと分かりますね。

実は、このランクが未知数の数と等しいならば「一次独立」、異なるならば「一次従属」なんです。

今回の例ではランクが$1$で未知数の数が$2$であったため、一次従属であると判別できるのです。

くるる
くるる

でも、これが何かの役に立つんすか?

一次独立か一次従属かの判別が凄く楽にできるようになるのです

先生
先生

先ほどの例では係数行列のランクを調べていましたが、これってよく見るとベクトルをただくっつけただけですよね?

ということは、 「一次独立か一次従属かを調べたい場合はベクトルをくっつけた係数行列のランクを調べるだけで良い」といえます。

例えば、ベクトル$\begin{bmatrix} 1 \\ 2 \end{bmatrix}, \begin{bmatrix} 2 \\ 3 \end{bmatrix}$で考えてみると、

$$\begin{bmatrix} 1 & 2 \\ 2 & 3 \end{bmatrix} \rightarrow \begin{bmatrix} 1 & 2 \\ 0 & -1 \end{bmatrix}$$

となり、ランクは$2$で未知数の数と等しいので、ベクトル$\begin{bmatrix} 1 \\ 2 \end{bmatrix}, \begin{bmatrix} 2 \\ 3 \end{bmatrix}$は一次独立であると分かっちゃうわけです。

これ、かなり便利じゃないですか?

ランクと「固有値」の関係

$n$次正方行列$A$において、「$rank(A)=n$ならば$A$の固有値に$0$は含まれない」といえます。(固有値

これをちゃんと説明しようとすると結構大変なので、ここでは簡単に説明します。

まず、「行列式は固有値の積に等しい」という事実があります。

例えば、

$$\begin{bmatrix} 4 & -2 \\ 3 & -1 \end{bmatrix}$$

という行列の固有値は$1,2$なのですが、行列式は$2$なので、行列式が固有値の積に等しいですよね?

こんな感じで、ある$n$次正方行列$A$の固有値を$\lambda_{1} \cdots \lambda_{n}$とすると、

$$det(A) = \lambda_{1} \times \cdots \times \lambda_{n}$$

という式が成り立ちます(詳しい解説はここではしません)。

ここで、ランクと「行列式」の関係で$n$次正方行列$A$において「$rank(A)<n$ ならば $det(A)=0$」であると述べました。

ということは、$rank(A)<n$ ならば、

$$\lambda_{1} \times \cdots \times \lambda_{n}=0$$

という式が成り立つということになり、固有値のどれか1つは必ず$0$でなくてはいけません

なので、「$rank(A)=n$ならば$A$の固有値に$0$は含まれない」 といえるのです。

まとめ

今回は「行列のランクの求め方・意味」について長々と解説しました。

実際、ランクを使う場面ってのはそんなに多くないのですが、知っておくと後々役に立つかもしれないので、頑張って理解しておきましょう。

おすすめの参考書

初学者におすすめな参考書を調査してまとめてみました。良かったら参考にしてください。

初学者におすすめの線形代数の参考書・問題集7選
PHP Code Snippets Powered By : XYZScripts.com