Loading [MathJax]/extensions/TeX/boldsymbol.js
スポンサーリンク

「行基本変形とランク〜実際にランクを求めるときに使う方法〜」【線型代数学の基礎シリーズ】行列編 その8

線型代数学

本記事の内容

本記事は行基本変形とランクについて解説する記事です。

本記事を読むにあたり、ランクについて知っている必要があるため、以下の記事も合わせてご覧ください。

ランクのチャラい復習

行列のランクについてチャラく復習します。
ランクの定め方は主に2つありました。
それは像空間の次元として定める方法と小行列の行列式で定める方法でした。

ランク(像空間の次元)

m,nNA=(aij)(m,n)型の行列とする。このとき、Aが定める線型写像 A:RnRm の像空間Image(A)の次元のことをAランク(rank)、あるいは階数といい、rank(A)で表す。すなわち、 rank(A)=dim(Image(A)) である。

小行列

m,nNとし、A=(aij)(m,n)型の行列とする。このとき、第i1,i2,,ir(i1<i2<<ir)と第j1,j2,,js(j1<j2<<js)の交わるところにある成分、すなわち j1 j2  js   (a11a1nam1amn)i1i2ir を取り出して作った(r,s)型の行列 (ai1j1ai1j2ai1jsai2i1ai2j2ai2jsairj1airj2airjn)A(i1i2irj1j2jr) で表し、A小行列という。特に、r=sのとき、これをAr次の小行列という。その時の行列式 |A(i1i2irj1j2jr)|Ar次の小行列式という。

ランク(小行列によるランク)

行列Aにおいて、r次の小行列式の中には0でないものがあり、r+1以上の小行列式はすべて0であるとき、このrAランクといい、rank(A)で表す。
ただし、零行列Oのランクは0と定める。

そして、性質として以下が成り立つのでした。

定理1.

(m,n)型行列Aにおいて、次の1.〜5.の数は一致する。
  1. r=rank(A)
  2. Aの列ベクトル(項数がm個のベクトル)の中から選びうる線型独立なベクトルの最大個数s
  3. 行列At次の小行列式の中には0でないものがあり、t+1次以上の小行列式はすべて0である。
  4. Aの行ベクトル(項数がn個のベクトル)の中から選びうる線型独立なベクトルの最大個数u
  5. Aの行ベクトルが生成するRnの部分空間の次元v

定理1.の証明は【線型代数学の基礎シリーズ】行列編 その6を御覧ください。

これを見ると、「へえ。ランクを求めるには色々アプローチがあるんだあ」と思うかもしれませんが、どのアプローチでも面倒くさいのが現状だと思います(少なくとも筆者は「めんどくせぇな」と思います)。

勿論、定理1.のアプローチでランクは求まるわけですが、実は、行基本変形を行うことによってランクを求めることができます。
むしろ、通常ランクを求める際は行基本変形でもって求めます。

とどのつまり、ランクを求める際に「線型独立なベクトルの個数は〜」だの「小行列は〜」だのを考えなくて良くて、単に行列の成分に対する四則演算を数回(行列に依存します)行うだけで求まるということです。
これは相当楽ちんです。

では、前回行基本変形とは何か、という話はしましたが、再度明示します。

行基本変形と基本行列

行基本変形と列基本変形をあわせて基本変形といいます。

では、まず行基本変形について復習します。

行基本変形

行列の行基本変形

行列の次の3つの変形を行基本変形という。
  • (Ⅰ)1つの行に0出ない数をかける。
  • (Ⅱ)1つの行にある数をかけたものを他の行に加える。
  • (Ⅲ)2つの行を入れ替える。

これはまさに行列式を計算するときに使っていました。

基本行列

次に基本行列について解説します。
とは言っても”基本”行列というのは、まさに読んで字の如しといった具合で、基本的な形をしている行列のことを指します。

基本行列

次の3つの正方行列を基本行列という。
  • 基本行列(Ⅰ):単位行列の(i,i)成分がc0であるような行列。
  • i(1OcO1)i(c0) すなわち、単位行列はこの(Ⅰ)の行列のc=1の場合である。
  • 基本行列(Ⅱ):単位行列の(i,j)成分の0cで置き換えた行列
  • ij(1O1c1O1)ij(i<j),ji(1O1c1O1)ji(i>j)
  • 基本行列(Ⅲ):単位行列の(i,j)成分の0cで置き換えた行列
  •  ij (1O101101O1)ij
余談(まじで読まなくてOK) 行列をLATEXで書くのは結構面倒くさいんですよね。LATEXを使ったことがある方はおわかりかと思いますけど….
私の場合はLATEXはレポートの提出やら卒論やら修論のときに実践で鍛えられましたが、でもやっぱり大変なものは大変なんですよねえ。

行基本変形と基本行列の関係

実は、行列の行基本変形のというのは、ある行列に基本行列をかけるという操作を指しています。
「ホントかな?」と思うかもしれませんが、実際に計算してみると分かります。

定理2.

基本行列は正則であり、行基本変形は基本行列を左からかけるという操作によって得られる。従って、基本変形はある正則行列を左からかける操作によって得られる。

定理2.の証明

なんてことありません。

基本行列が正則行列であることを示すには、これらの行列式が0でないことを証明すればOKです。
なぜならば、行列式が0でないことと正則であることは同値だからです。
すなわち、次が成り立っていたからです。

定理3.

正方行列Aが正則であるための必要十分条件は、det(A)0である。このとき、Aの逆行列A1A1=1det(A)˜A であたえられる。ただし、˜AAの余因子行列である。

定理3.の証明は【線型代数学の基礎シリーズ】行列式編 その6を御覧ください。

まず、(Ⅰ)の行列式は、対角成分の積と等しいので、c0です。
次に(Ⅱ)のはそれぞれ下三角行列、上三角行列ですので、これも行列式は対角成分と等しいから10です。
最後に(Ⅲ)ですが、これは行基本変形を行うことで10だと分かります。
従って、基本行列は正則です。

行列Aの左から(Ⅰ)、(Ⅱ)、(Ⅲ)をかけることは、それぞれ

  • (Ⅰ):Aの第i行をc倍する。(行基本変形(Ⅰ))
  • (Ⅱ):Aの第i行をc倍して、第j行に加える。(行基本変形(Ⅱ))
  • (Ⅲ):Aの第i行と第j行を入れ替える。(行基本変形(Ⅲ))

ということに対応します。
従って、行基本変形はある正則行列を左からかける事により得られます。

定理2.の証明終わり

基本行列が正則だということが分かったので、基本行列の逆行列を具体的に与えます。

定理4.

基本行列(Ⅰ)、(Ⅱ)、(Ⅲ)の逆行列(Ⅰ)’、(Ⅱ)’、(Ⅲ)’は次で与えられる。
  • 基本行列(Ⅰ)の逆行列(Ⅰ)’
  • i()=(1Oc1O1)i(c0) すなわち、単位行列はこの(Ⅰ)の行列のc=1の場合である。
  • 基本行列(Ⅱ)の逆行列(Ⅱ)’
  • ij()1=(1O1c1O1)ij(i<j),ji()2=(1O1c1O1)ji(i>j)
  • 基本行列(Ⅲ)の逆行列(Ⅲ)’
  • ij()=(1O101101O1)ij

列基本変形

行基本変形とほぼ同じなのでサラッと行きます。

行列の行基本変形

行列の次の3つの変形を列基本変形という。

  • (Ⅰ)1つの列に0でない数をかける。
  • (Ⅱ)1つの列にある数をかけたものを他の列に加える。
  • (Ⅲ)2つの列を入れ替える。

定理5.

列基本変形は、以前の基本行列を右から欠けるという操作によって得られる。

あ定理5.の証明も定理2.の証明の「行」を「列」に変えて、「左」を「右」に変えるだけですので省略します。

階段行列

先程までは、前回の連立一次方程式を解くための手法の基本変形を抽象化して行列の行基本変形について考えました。
この行列の行基本変形の手法は連立一次方程式の解法だけではなく、行列のランクを求めたり、正則行列の場合はその逆行列を具体的に計算するのに便利です(この記事では逆行列の求め方は書きません)。

従って行基本変形というのは誠に有用です。
しかし、与えられた行列に対して無闇矢鱈に変形するのではなくて、ある形を目標として、それに向かって基本変形をすることが大切です。
その目標こそが階段行列なのです。

階段行列って何スか?

ひとことで言うと、

行の番号が増えるに従って、左側に連続して並ぶ0の個数が増えていく(まさに階段)ような行列のこと。

です。

これをしっかり書くと次です。

階段行列

行番号が増えるにつれて、左側に連続して並ぶ0の個数が増えていくような行列を階段行列という。各行において、左から連続して並ぶ0と最初に0でない数が出るところの境目に着目すると、次のような階段が得られる。

s任意の行列は行基本変形を繰り返すことで階段行列になる。

そうなんです。凄いよね。

定理6.

任意の行列は行基本変形を繰り返すことで階段行列に変形することができる。

定理6.の証明

A=(a11a1nam1amn)
を与えられた行列とします。
このとき、第1列の成分のa11,,am1の中に0でないものがあるとき、その1つを取ります。
例えば、ai10だとします。
第1行と第i行を入れ替える(行基本変形(Ⅲ))ことで、新たに(1,1)成分が0でなくなるので、a110とします。
このとき、2以上の各iに対して、

(第i行)+(第1行)×ai1a11

という行基本変形(Ⅱ)を行うことで、
(a11a12a1n0B0)
の形に変形することができます。
また、第1列の成分がすべて0であれば、そのままで
(0B0)
の形です。

次に、この行列Bについて、Bの第1列に対して同じ操作を行います。
この操作を繰り返していくと、段々Bが右下の方向に小さくなります。
最終的には、この操作で階段行列が得られ、かつ有限回の操作で終了します。

定理6.の証明終わり

定理2.から、基本変形はある正則な行列をかけるという操作に対応するのでした。

定理7.

任意の行列は、適当な正則行列を左からかけることによって階段行列にすることができる。

定理7.の証明

定理6.から任意の行列は行基本変形によって階段行列に変形されます。
また、定理2.からこの行基本費ぇん系はある正則行列を左からかけるという操作によって得られ、また、正則行列の積は正則行列ですので、証明完了です。

定理7.の証明終わり

いっちょ計算してみっか

してみましょ。

例8.
(011212394220)
を階段行列に変形してみます。
(011212394220)()(123901124220)()(123901120101036)()(1239011200056)
はじめに第1行と第2行を入れ替えて、次に第3行に(第1行)×(4)を加えます。
そして、第3行に(第2行)×(10)を加えます。
おしまい。

階段行列とランク

行基本変形をしてもランクは変わりません。

定理9.

行基本変形により、行列のランクは不変である。

定理9.の証明

行列Aに行基本変形を何回か行って、行列Bに移ったとしましょう。
定理2.から正則行列Pが存在して、
PA=B
が成り立ちます。
ここで、行列の積に対するランクを考えてみます。

定理10.

(m,n)型行列A(n,l)型行列Bについて、以下が成り立つ。
rank(AB)min{rank(A),rank(B)}

定理10.の証明

行列ABを線型写像
A:RnRm,B:RlRn
ととらえると、この2つの線型写像の合成写像は行列の積
AB:RlRm
で与えられます。
ここで、
B(Rl)=Image(B)Rn
ですので、
Image(AB)=AB(Rl)A(Rn)=Image(A)
となります。

従って、
rank(AB)=dim(Image(AB))dim(Image(A))=rank(A)
となります。

ここで、次の事実を使います。

定理11.

(m,n)型行列Aにおいて、次の1.〜5.の数は一致する。

  1. r=rank(A)
  2. Aの列ベクトル(項数がm個のベクトル)の中から選びうる線型独立なベクトルの最大個数s
  3. 行列At次の小行列式の中には0でないものがあり、t+1次以上の小行列式はすべて0である。
  4. Aの行ベクトル(項数がn個のベクトル)の中から選びうる線型独立なベクトルの最大個数u
  5. Aの行ベクトルが生成するRnの部分空間の次元v

定理11.の証明は【線型代数学の基礎シリーズ】行列編 その6を御覧ください。

定理11.から、一般に行列XのランクとXのランクが一致するので、
rank(AB)=rank((AB))=rank(BA)rank(B)=rank(B)
となります。
従って、2つの不等式から
rank(AB)min{rank(A),rank(B)}
です。

定理10.の証明終わり

定理12.

A(m,n)型の行列、Bm次の正則行列、Cn次の正則行列とするとき、
rank(BAC)=rank(BA)=rank(AC)=rank(A)
である。

定理12.の証明

定理10.から、
rank(BAC)rank(BA)rank(A)rank(BAC)rank(AC)rank(A)
が成り立ちます。
家庭から、BCは正則行列ですので、それぞれの逆行列B1C1が存在します。
従って、
rank(A)=rank((BB1)A(CC1))=rank(B1(BAC)C1)rank(BAC)C1rank(BAC)
となります。
従って、前半の不等式と合わせることで、これらはすべて等しいことが分かります。

定理12.の証明終わり

さて、定理9.の証明に戻ります。
今、正則行列Pを用いて
PA=B
なのでした。
定理12.から、
rank(B)=rank(PA)=rank(A)
が成り立ちます。
従って、行基本変形により、行列のランクは不変です。

定理9.の証明終わり

行基本変形で行列のランクを計算することができる。

最も言いたかったことです。
準備に時間がかかっちゃいましたが。

では行きましょう。
最後のひと押しです。

定理13.

行列Aに行基本変形を行って、階段行列


になったとすると、rank(A)=rである。

定理13.の証明

定理9.により、行列のランクは行基本変形で不変です。
故に行列Aが階段行列の場合に示せばOKです。
そこで、以降はAを本定理の階段行列だとします。

行列Aの行ベクトルを\boldsymbol{a}_1,\dots,\boldsymbol{a}_mとしましょう。
まず、\boldsymbol{a}_{r+1}=\dots=\boldsymbol{a}_m=0であり、
\boldsymbol{a}_i=(0\ \cdots\ 0\ a_{ij_i}\ \ast\ \cdots\ \ast)\quad(a_{ij_i}\neq0)
という形になっています。
そのとき、\boldsymbol{a}_1,\dots,\boldsymbol{a}_rが線型独立だということを示しましょう。
\sum_{i=1}^rc_i\boldsymbol{a}_i=\boldsymbol{0}
とします。
左辺のベクトルの線型結合の第j_1成分に着目すると、j_1成分が0でないようなベクトルは\boldsymbol{a}_1だけです(行列の図を参照)。
しかも、その成分はc_1a_{1j_1}です。
仮定からc_1a_{1j_1}=0で、今a_{1j_1}\neq0なのですから、c_1=0です。
結果として
\sum_{i=1}^rc_i\boldsymbol{a}_i=\sum_{i=2}^rc_i\boldsymbol{a}_i=\boldsymbol{0}
となりますが、全くもって同様の理由でc_2=0が導けます。
故に、c_i=0が示されるので、\boldsymbol{a}_1,\dots,\boldsymbol{a}_rは線型独立です。

一方で、その他のベクトル\boldsymbol{a}_{r+1},\dots,\boldsymbol{a}_mはすべて零ベクトルなので、Aの行ベクトルの中から選びうる線型独立なベクトルの最大数はまさにr個です。
従って、定理11.からr={\rm rank}(A)です。

定理13.の証明終わり

ということで、行列のランクを求めるには行基本変形をすることで求めるのが良い、ということです。
実は列基本変形でも同じことが言えます。
故に同時に使ってOKです。
しかしながら、筆者の体感だと、行基本変形だけ、列基本変形だけ、というようにいずれか一方のほうが早く計算が終わると思います。
というのも、ランクを求めるにあたって、目標は階段行列にすることなのであって、単位行列のように対角成分が1で他が0になるまで計算する必要が無いからです。

今回は行基本変形とランクについて解説しました。
ランクは像空間の次元と小行列式でもって定めましたが、いざ計算するとなると面倒です。
実は、行基本変形と列基本変形を駆使して階段行列に変形することで簡単にランクが求まります。

次回は線型代数の中でも誠に重要な「固有値、固有ベクトル」について解説します。

乞うご期待!質問、コメントなどお待ちしております!

コメントをする

タイトルとURLをコピーしました