行列の平方根

数学 > 線型代数学 > 行列値関数 > 行列の平方根

数学のおもに線型代数学および函数解析学における行列の平方根(ぎょうれつのへいほうこん、: square root of a matrix)は、数に対する通常の平方根の概念を行列に対して拡張するものである。すなわち、行列 B が行列 A平方根であるとは、行列の積に関して B2 = BBA に等しいときに言う。

「実数の平方根は必ずしも実数にならないが、複素数は必ず複素数の範囲で平方根を持つ」ことに対応する事実として、実行列の平方根は(存在しても)必ずしも実行列にならないが、複素行列が平方根を持てばそれは必ず複素行列の範囲で取れる。

平方根を持たない行列も存在する[注 1]

また一般に、ひとつの行列が複数の平方根を持ち得る[注 2]。実際、2 × 2 単位行列は次のように無数の平方根を持つ。

[ 1 b c b c 1 b c ] , [ 1 b c b c 1 b c ] , [ 1 0 0 1 ] , [ 1 0 0 1 ] {\displaystyle {\begin{bmatrix}{\sqrt {1-bc}}&b\\c&-{\sqrt {1-bc}}\end{bmatrix}},\quad {\begin{bmatrix}-{\sqrt {1-bc}}&b\\c&{\sqrt {1-bc}}\end{bmatrix}},\quad {\begin{bmatrix}1&0\\0&1\end{bmatrix}},\quad {\begin{bmatrix}-1&0\\0&-1\end{bmatrix}}}

このように行列の平方根は無数に存在しうるが、半正定値行列[注 3]の範疇で行列の主平方根 (principal square root) の概念が定義できて「半正定値行列の主平方根はただ一つ」である(これは「非負実数が非負の平方根(主平方根)をただ一つだけ持つ」という事実に対応する)。

2 × 2 行列が、相異なる二つの非零固有値を持つならば、それは四つの平方根を持つ(より一般に、相異なる n 個の非零固有値を持つ n × n 行列は 2n 個の平方根を持つ)。実際に、そのような仮定を満たす行列 AA の固有ベクトルを列ベクトルに持つ行列 V とそれに対応する固有値を対角成分に持つ対角行列 D を用いて A = VDV−1固有値分解できるから、A の平方根は VD½V−1 で与えられることがわかる。ただし、D½D の任意の平方根で、それは D の対角成分の任意の平方根を同じ位置の対角成分として持つ対角行列であり、その選び方は 2n 通りある。同じ理由で、上で述べた「半正定値行列の主平方根がただ一つに定まる」ことも言える—半正定値行列[注 4] A の全ての非負固有値の主平方根を対角成分に持つ対角行列を D½ とする行列 VD½V−1 はただ一つしかない。

適当な冪零行列 N を用いて I + N の形に書ける行列の平方根 (I + N)½ は、二項級数に対する汎函数計算で求められる。同様に、行列の指数函数 exp, 対数函数 log が既知ならば、 exp(½⋅log(A))A の(主)平方根とすることができる(収束性に注意せよ)。

定義

定義 (行列の平方根)
行列 B が行列 A平方根であるとは、B2 = A を満たすときに言う[1][注 5]
定義 (行列の主平方根)

「非負実数が非負の平方根(主平方根)をただ一つだけ持つ」という事実に対応して

命題

  1. 半正定値行列は、それ自身が半正定値となるような平方根をただ一つ持つ。
  2. 一般に、すべての固有値が正の実数となる複素行列はすべての固有値が正の実数となる平方根をただ一つ持つ。
が成り立つ。そのように定まるただ一つの (the, unique) 平方根は主平方根 (principal square root) と呼ばれる。

主平方根をとる操作は行列全体の成す集合上で連続である[2]。このとき、考えている行列が実行列ならば、その主平方根もまた実行列になる。主平方根に関する性質は、行列に対する正則汎函数計算(英語版)の帰結として得られる[3][4]。あるいは主平方根の存在と一意性はジョルダン標準形を用いて直截に示せる(後述)。

注意
記号 1/2 は、主平方根を表すために用いる場合[5]や、平方根の任意の一つを表すために用いる場合などがあるので、文脈に注意すべきである。

計算法

明示公式

2 × 2 行列の場合は、すべての成分を明示的に計算することによって平方根を求めることはそう難しくない。固有値が退化していない場合の平方根は明示公式(英語版)として記述できる。

すなわち、 A = [ a b c d ] {\textstyle A={\begin{bmatrix}a&b\\c&d\end{bmatrix}}} とし、その行列式を Δ = a d b c {\textstyle \Delta =ad-bc} 、 特性方程式 ( x a ) ( x d ) b c = x 2 ( a + d ) x + a d b c = 0 {\textstyle (x-a)(x-d)-bc=x^{2}-(a+d)x+ad-bc=0} の判別式を δ = ( a + d ) 2 4 ( a d b c ) = ( a + d + 2 Δ ) ( a + d 2 Δ ) {\textstyle \delta =(a+d)^{2}-4(ad-bc)=(a+d+2{\sqrt {\Delta }})(a+d-2{\sqrt {\Delta }})} としたとき、

δ 0 {\textstyle \delta \neq 0} ならば、 A {\textstyle A} の平方根は、

1 a + d + 2 Δ ( A + Δ I ) {\textstyle {\frac {1}{\sqrt {a+d+2{\sqrt {\Delta }}}}}(A+{\sqrt {\Delta }}I)} 1 a + d + 2 Δ ( A + Δ I ) {\textstyle {\frac {-1}{\sqrt {a+d+2{\sqrt {\Delta }}}}}(A+{\sqrt {\Delta }}I)} 1 a + d 2 Δ ( A Δ I ) {\textstyle {\frac {1}{\sqrt {a+d-2{\sqrt {\Delta }}}}}(A-{\sqrt {\Delta }}I)} 1 a + d 2 Δ ( A Δ I ) {\textstyle {\frac {-1}{\sqrt {a+d-2{\sqrt {\Delta }}}}}(A-{\sqrt {\Delta }}I)} と明示的に表記できる。

平方根となることは、実際に2乗を計算すれば ( A + Δ I ) 2 = A 2 + Δ I + 2 Δ A = ( a + d + 2 Δ ) A {\textstyle (A+{\sqrt {\Delta }}I)^{2}=A^{2}+\Delta I+2{\sqrt {\Delta }}A=(a+d+2{\sqrt {\Delta }})A} から容易にわかる。

あるいは、2次のケイリー・ハミルトンの定理 A 2 ( a + d ) A + Δ I = 0 {\textstyle A^{2}-(a+d)A+\Delta I=0} から ( a + d ) A = A 2 + Δ I {\textstyle (a+d)A=A^{2}+\Delta I} ( a + d + 2 Δ ) A = A 2 + 2 Δ A + Δ I = ( A + Δ I ) 2 {\textstyle (a+d+2{\sqrt {\Delta }})A=A^{2}+2{\sqrt {\Delta }}A+\Delta I=(A+{\sqrt {\Delta }}I)^{2}} としても良い。

これら以外に平方根が存在しないことについては、 B 2 = A {\textstyle B^{2}=A} とした場合、 δ 0 {\textstyle \delta \neq 0} より A {\textstyle A} は2つの相異なる固有値 λ 1 {\textstyle \lambda _{1}} λ 2 {\textstyle \lambda _{2}} と、独立な固有ベクトル A v 1 = λ 1 v 1 {\textstyle Av_{1}=\lambda _{1}v_{1}} A v 2 = λ 2 v 2 {\textstyle Av_{2}=\lambda _{2}v_{2}} を持つが、任意の2次列ベクトルは、 v 1 {\textstyle v_{1}} v 2 {\textstyle v_{2}} の1次結合で表せるので、 B v 1 = α 11 v 1 + α 12 v 2 {\textstyle Bv_{1}=\alpha _{11}v_{1}+\alpha _{12}v_{2}} B v 2 = α 21 v 1 + α 22 v 2 {\textstyle Bv_{2}=\alpha _{21}v_{1}+\alpha _{22}v_{2}} とすると、 λ 1 v 1 = A v 1 = B B v 1 = B ( α 11 v 1 + α 12 v 2 ) = ( α 11 2 + α 12 α 21 ) v 1 + ( α 11 α 12 + α 12 α 22 ) v 2 {\textstyle \lambda _{1}v_{1}=Av_{1}=BBv_{1}=B(\alpha _{11}v_{1}+\alpha _{12}v_{2})=(\alpha _{11}^{2}+\alpha _{12}\alpha _{21})v_{1}+(\alpha _{11}\alpha _{12}+\alpha _{12}\alpha _{22})v_{2}} λ 2 v 2 = A v 2 = B B v 2 = B ( α 21 v 1 + α 22 v 2 ) = ( α 21 α 11 + α 22 α 21 ) v 1 + ( α 21 α 12 + α 22 2 ) v 2 {\textstyle \lambda _{2}v_{2}=Av_{2}=BBv_{2}=B(\alpha _{21}v_{1}+\alpha _{22}v_{2})=(\alpha _{21}\alpha _{11}+\alpha _{22}\alpha _{21})v_{1}+(\alpha _{21}\alpha _{12}+\alpha _{22}^{2})v_{2}} すなわち、 [ λ 1 0 0 λ 2 ] = [ α 11 α 12 α 21 α 22 ] [ α 11 α 12 α 21 α 22 ] = [ α 11 2 + α 12 α 21 α 12 ( α 11 + α 22 ) α 21 ( α 11 + α 22 ) α 22 2 + α 12 α 21 ] {\textstyle {\begin{bmatrix}\lambda _{1}&0\\0&\lambda _{2}\end{bmatrix}}={\begin{bmatrix}\alpha _{11}&\alpha _{12}\\\alpha _{21}&\alpha _{22}\end{bmatrix}}{\begin{bmatrix}\alpha _{11}&\alpha _{12}\\\alpha _{21}&\alpha _{22}\end{bmatrix}}={\begin{bmatrix}\alpha _{11}^{2}+\alpha _{12}\alpha _{21}&\alpha _{12}(\alpha _{11}+\alpha _{22})\\\alpha _{21}(\alpha _{11}+\alpha _{22})&\alpha _{22}^{2}+\alpha _{12}\alpha _{21}\end{bmatrix}}} であるが、 λ 1 λ 2 {\textstyle \lambda _{1}\neq \lambda _{2}} のため、解は α 11 = ± λ 1 {\textstyle \alpha _{11}=\pm {\sqrt {\lambda _{1}}}} α 12 = α 21 = 0 {\textstyle \alpha _{12}=\alpha _{21}=0} α 22 = ± λ 2 {\textstyle \alpha _{22}=\pm {\sqrt {\lambda _{2}}}} に定まる。これにより任意の2次列ベクトル x v 1 + y v 2 {\textstyle xv_{1}+yv_{2}} B {\textstyle B} によりどう変換されるかが定まるが、これは B {\textstyle B} が定まることを意味する。 A {\textstyle A} が固有値ゼロを持たない場合は解が4組、固有値ゼロを持つ場合( Δ = 0 {\textstyle \Delta =0} の場合)は解が2組であるが、これは上記の明示公式で尽くされているので、これら以外には、平方根は存在しない。

δ = 0 {\textstyle \delta =0} の場合は、複雑になる。

Dn × n 対角行列ならば、D の対角成分の任意の平方根を対応する位置の対角成分に持つ対角行列 R を作れば平方根が得られる。D の対角成分が非負の実数ならば、先の対角行列 R で各成分の符号を全て正としたものは D の主平方根である。

冪等行列の平方根は、自身を平方根に持つ。

対角化の利用

対角化可能行列 A に対し、適当な行列 V と対角行列 D が存在して A = VDV−1 と書ける。これは ACn を張る n 個の固有値を持つことと同値である。このとき V はその列ベクトルが n 個の固有ベクトルであるように選べる。そうして A の平方根は D の任意の平方根を用いて A 1 / 2 = V D 1 / 2 V 1 {\textstyle A^{1/2}=VD^{1/2}V^{-1}} と書ける。実際、 ( V D 1 / 2 V 1 ) 2 = V D 1 / 2 ( V 1 V ) D 1 / 2 V 1 = V D V 1 = A {\textstyle (VD^{1/2}V^{-1})^{2}=VD^{1/2}(V^{-1}V)D^{1/2}V^{-1}=VDV^{-1}=A} である。 A がエルミート行列ならば対角化に用いる行列 V は固有ベクトルを適当に選んでユニタリ行列となるようにとれる。この場合、V の逆行列はたんに随伴をとるだけであるから、 A 1 / 2 = V D 1 / 2 V {\textstyle A^{1/2}=VD^{1/2}V^{\dagger }} と書ける。

ジョルダン分解の利用

正方行列 A {\displaystyle A} ジョルダン標準形 J = P 1 A P {\displaystyle J=P^{-1}AP} とすると、次が言える。

K {\displaystyle K} J {\displaystyle J} の平方根 K 2 = J {\displaystyle K^{2}=J} とすると、 B = P K P 1 {\displaystyle B=PKP^{-1}} は、 B 2 = ( P K P 1 ) ( P K P 1 ) = P K 2 P 1 = P J P 1 = A {\displaystyle B^{2}=(PKP^{-1})(PKP^{-1})=PK^{2}P^{-1}=PJP^{-1}=A} より、 A {\displaystyle A} の平方根となる。
逆に B {\displaystyle B} A {\displaystyle A} の平方根 B 2 = A {\displaystyle B^{2}=A} とすると、 K = P 1 B P {\displaystyle K=P^{-1}BP} は、 K 2 = ( P 1 B P ) ( P 1 B P ) = P 1 B 2 P = P 1 A P = J {\displaystyle K^{2}=(P^{-1}BP)(P^{-1}BP)=P^{-1}B^{2}P=P^{-1}AP=J} より、 J {\displaystyle J} の平方根であり、 B = P K P 1 {\displaystyle B=PKP^{-1}} である。

このため、ジョルダン標準形 J = P 1 A P {\displaystyle J=P^{-1}AP} の全ての平方根 K {\displaystyle K} を知ることができれば、 B = P K P 1 {\displaystyle B=PKP^{-1}} により、 A {\displaystyle A} の全ての平方根 B {\displaystyle B} を知ることができる。

J = [ J 1 0 0 J m ] {\displaystyle J={\begin{bmatrix}J_{1}&\cdots &0\\\vdots &\ddots &\vdots \\0&\cdots &J_{m}\\\end{bmatrix}}} とし、 K i 2 = J i , 1 i m {\displaystyle K_{i}^{2}=J_{i},1\leq i\leq m} とすれば、 K = [ K 1 0 0 K m ] {\displaystyle K={\begin{bmatrix}K_{1}&\cdots &0\\\vdots &\ddots &\vdots \\0&\cdots &K_{m}\\\end{bmatrix}}} は、 J {\displaystyle J} の平方根のうちの一つである。

逆に、 J = [ J 1 O O J 2 ] {\displaystyle J={\begin{bmatrix}J_{1}&O\\O&J_{2}\\\end{bmatrix}}} 、ただし J 1 , J 2 {\displaystyle J_{1},J_{2}} はジョルダン標準形で、 J 1 {\displaystyle J_{1}} J 2 {\displaystyle J_{2}} は共通の固有値を持たないとすると、 J {\displaystyle J} の平方根は、 K = [ K 1 O O K 2 ] {\displaystyle K={\begin{bmatrix}K_{1}&O\\O&K_{2}\\\end{bmatrix}}} ただし、 K 1 2 = J 1 , K 2 2 = J 2 {\displaystyle K_{1}^{2}=J_{1},K_{2}^{2}=J_{2}} に限られる。

これは、 K = [ K 1 B C K 2 ] , J = K 2 {\displaystyle K={\begin{bmatrix}K_{1}&B\\C&K_{2}\\\end{bmatrix}},J=K^{2}} とすると、

K 3 = K J = [ K 1 B C K 2 ] [ J 1 O O J 2 ] = [ K 1 J 1 B J 2 C J 1 K 2 J 2 ] = J K = [ J 1 O O J 2 ] [ K 1 B C K 2 ] = [ J 1 K 1 J 1 B J 2 C J 2 K 2 ] {\displaystyle K^{3}=KJ={\begin{bmatrix}K_{1}&B\\C&K_{2}\\\end{bmatrix}}{\begin{bmatrix}J_{1}&O\\O&J_{2}\\\end{bmatrix}}={\begin{bmatrix}K_{1}J_{1}&BJ_{2}\\CJ_{1}&K_{2}J_{2}\\\end{bmatrix}}=JK={\begin{bmatrix}J_{1}&O\\O&J_{2}\\\end{bmatrix}}{\begin{bmatrix}K_{1}&B\\C&K_{2}\\\end{bmatrix}}={\begin{bmatrix}J_{1}K_{1}&J_{1}B\\J_{2}C&J_{2}K_{2}\\\end{bmatrix}}} より

B J 2 = J 1 B {\displaystyle BJ_{2}=J_{1}B} となるが、 B = [ b 1 b k ] {\displaystyle B={\begin{bmatrix}b_{1}&\dots &b_{k}\\\end{bmatrix}}} J 2 {\displaystyle J_{2}} の対角成分(固有値)を λ i , 1 i k {\displaystyle \lambda _{i},1\leq i\leq k} と置き、第1列に注目すれば、 λ 1 b 1 = J 1 b 1 {\displaystyle \lambda _{1}b_{1}=J_{1}b_{1}} だが、 J 1 {\displaystyle J_{1}} J 2 {\displaystyle J_{2}} は共通の固有値を持たないため、 b 1 = 0 {\displaystyle b_{1}=0} が言え、順次、第2列、第3列に注目すれば b i = 0 {\displaystyle b_{i}=0} が言え、 B = O {\displaystyle B=O} が言える。

C J 1 = J 2 C {\displaystyle CJ_{1}=J_{2}C} からも同様に、 C = [ c 1 c k ] {\displaystyle C={\begin{bmatrix}c_{1}\\\vdots \\c_{k}\\\end{bmatrix}}} と置き、第k行に注目すれば c k J 1 = λ k c k {\displaystyle c_{k}J_{1}=\lambda _{k}c_{k}} だが、 J 1 {\displaystyle J_{1}} J 2 {\displaystyle J_{2}} は共通の固有値を持たないため、 c k = 0 {\displaystyle c_{k}=0} が言え、順次、第k-1行、第k-2行に注目すれば c i = 0 {\displaystyle c_{i}=0} が言え、 C = O {\displaystyle C=O} が言える。このため、上記が言える。

ジョルダン標準形の平方根には、ジョルダン細胞の平方根であるものと、

[ 1 0 0 1 ] = [ 1 b c b c 1 b c ] 2 {\displaystyle {\begin{bmatrix}1&0\\0&1\\\end{bmatrix}}={\begin{bmatrix}{\sqrt {1-bc}}&b\\c&-{\sqrt {1-bc}}\\\end{bmatrix}}^{2}}

のようにジョルダン細胞の平方根ではないもの(同じ固有値のジョルダン細胞が複数あるときに発生する)があるので、注意が必要である。

ジョルダン細胞の平方根

ジョルダン細胞 J n ( λ ) {\displaystyle J_{n}(\lambda )} とはn次正方行列で、 j < i {\displaystyle j<i} のとき J n ( λ ) i j = 0 {\displaystyle J_{n}(\lambda )_{ij}=0} J n ( λ ) i i = λ {\displaystyle J_{n}(\lambda )_{ii}=\lambda } J n ( λ ) i i + 1 = 1 {\displaystyle J_{n}(\lambda )_{ii+1}=1} j > i + 1 {\displaystyle j>i+1} のとき J n ( λ ) i j = 0 {\displaystyle J_{n}(\lambda )_{ij}=0} となるものを言う。

λ 0 {\displaystyle \lambda \neq 0} のとき、ジョルダン細胞 J n ( λ ) {\displaystyle J_{n}(\lambda )} の平方根は、下記の行列 K {\displaystyle K} および K {\displaystyle -K} である。

j < i {\displaystyle j<i} のとき K i j = 0 {\displaystyle K_{ij}=0} K i i = λ {\displaystyle K_{ii}={\sqrt {\lambda }}} j > i {\displaystyle j>i} のとき K i j = ( 1 ) j i 1 ( 2 j 2 i 2 ) ! 2 2 j 2 i 1 ( j i 1 ) ! λ ( 2 j 2 i 1 ) / 2 {\displaystyle K_{ij}={\frac {(-1)^{j-i-1}(2j-2i-2)!}{2^{2j-2i-1}(j-i-1)!}}\lambda ^{-(2j-2i-1)/2}}

λ = 0 {\displaystyle \lambda =0} のとき、ジョルダン細胞 J n ( 0 ) {\displaystyle J_{n}(0)} は、

n = 1 {\displaystyle n=1} の場合、平方根0を持つ
n > 1 {\displaystyle n>1} の場合、平方根を持たない

J 2 ( 0 ) = [ 0 1 0 0 ] {\displaystyle J_{2}(0)={\begin{bmatrix}0&1\\0&0\\\end{bmatrix}}} は平方根を持たない。

λ 0 {\displaystyle \lambda \neq 0} のとき、ジョルダン細胞 J n ( λ ) {\displaystyle J_{n}(\lambda )} の平方根が2つしかないことは、次から言える。 K 2 = J n ( λ ) {\displaystyle K^{2}=J_{n}(\lambda )} となる行列が存在したとし、 K 3 {\displaystyle K^{3}} の成分を考える。

K i j 3 = ( J n ( λ ) K ) i j = { λ K i 1 + K i + 1 j ( 1 i n 1 ) λ K n j ( i = n ) {\displaystyle K_{ij}^{3}=(J_{n}(\lambda )K)_{ij}={\begin{cases}\lambda K_{i1}+K_{i+1j}&(1\leq i\leq n-1)\\\lambda K_{nj}&(i=n)\end{cases}}}
K i j 3 = ( K J n ( λ ) ) i j = { λ K i 1 ( j = 1 ) λ K i j + K i j 1 ( 2 j n ) {\displaystyle K_{ij}^{3}=(KJ_{n}(\lambda ))_{ij}={\begin{cases}\lambda K_{i1}&(j=1)\\\lambda K_{ij}+K_{ij-1}&(2\leq j\leq n)\end{cases}}}

K n j 3 , 2 j n {\displaystyle K_{nj}^{3},2\leq j\leq n} を比較すると、 λ K n j = λ K n j + K n j 1 , 2 j n {\displaystyle \lambda K_{nj}=\lambda K_{nj}+K_{nj-1},2\leq j\leq n} このため K n j = 0 , 1 j n 1 {\displaystyle K_{nj}=0,1\leq j\leq n-1}

K i j 3 , 1 i n 1 , 2 j n {\displaystyle K_{ij}^{3},1\leq i\leq n-1,2\leq j\leq n} を比較すると、 λ K i j + K i + 1 j = λ K i j + K i j 1 , 1 i n 1 , 2 j n {\displaystyle \lambda K_{ij}+K_{i+1j}=\lambda K_{ij}+K_{ij-1},1\leq i\leq n-1,2\leq j\leq n} このため K i + 1 j + 1 = K i j , 1 i n 1 , 1 j n 1 {\displaystyle K_{i+1j+1}=K_{ij},1\leq i\leq n-1,1\leq j\leq n-1}

このため、 K {\displaystyle K} は上三角行列で、斜めに同じ値が並ばなければならない。 K 2 = J n ( λ ) {\displaystyle K^{2}=J_{n}(\lambda )} ( n , n ) {\displaystyle (n,n)} 成分を比較することにより、 K n n 2 = λ , K n n = ± λ {\displaystyle K_{nn}^{2}=\lambda ,K_{nn}=\pm {\sqrt {\lambda }}} が言え、以下 ( j , n ) {\displaystyle (j,n)} 成分 j = n 1 , n 2 , , 1 {\displaystyle j=n-1,n-2,\dots ,1} を比較することにより、 K {\displaystyle K} の全ての成分が順番に1次方程式で定まるため、平方根が2つしかないことが言える。

英語版からの直訳

対角化可能でない行列の場合にはジョルダン標準形が利用できる。[注 6]

すべての固有値が正の実数であるような任意の複素行列が、同じ条件の平方根を持つことを見るには、ジョルダンブロックの場合に証明すれば十分である。そのようなブロックは実数 λ > 0 および冪零行列 N を用いて λ(I + N) の形に書ける。平方根の二項級数展開 (1 + z)1/2 = 1 + a1 z + a2 z2 + ⋯(収束域は |z| < 1)に対し、形式冪級数としての平方は 1 + z に等しい。zN に置き換えれば、冪零性により有限個を除く全ての項は零となり、S = λ(I + a1 N + a2 N2 + ⋯) が固有値 λ に属するジョルダンブロックの平方根を与える。

一意性を見るには λ = 1 の場合に確認すれば十分である。上で構成した平方根を S = I + L の形に書けば、L は定数項を持たない N の多項式である。固有値が正の実数となる他の任意の平方根 TT = I + M の形で M が冪零かつ N と(したがって L と)可換となるようにとれる。しかしこのとき 0 = S2T2 = 2(LM)(I + (L + M)/2) であり、また LM の可換性により L + M は冪零ゆえ I + (L + M)/2 は可逆(逆行列はノイマン級数で与えられる)となるから、したがって L = M.

すべての固有値が正の実数であるような行列 A の最小多項式を p(t) とするとき、A の一般固有空間へのジョルダン分解は p(t)−1 の部分分数分解から導かれる。すなわち、対応する一般固有空間の上への射影は A の実係数多項式として与えられ、各固有空間上で A は上記の通り λ(I + N) の形をしている。固有空間上での平方根の冪級数展開は、A の主平方根が実係数多項式 q(t) に対する q(A) の形をしていることを示すものである。

現実的な計算法

「対角化」の方法でも「ジョルダン分解」の方法でも、すべての固有値を算出することが必要となるが、それは行列の特性方程式(あるいは最小方程式)のすべての解を求めることと同じであり、行列の次数が大きくなれば非現実的となる。このため、現実的な平方根の求め方が必要となる。

行列対数関数、行列指数関数による求め方

実数 a > 0 {\displaystyle a>0} の平方根 a {\displaystyle {\sqrt {a}}} exp ( 1 2 log ( a ) ) {\displaystyle \exp \left({\frac {1}{2}}\log(a)\right)} で求まることと同様に、

n次実数値正方行列 A {\displaystyle A} の全ての特性根の実数部分が正である場合、

行列対数関数を log ( A ) = log ( c ) I Σ k = 1 1 k ( I 1 c A ) k {\displaystyle \log(A)=\log(c)I-\Sigma _{k=1}^{\infty }{\frac {1}{k}}\left(I-{\frac {1}{c}}A\right)^{k}} と定義し(cは任意の正数、級数が収束すれば c {\displaystyle c} に係らず同じ値に収束する)

行列指数関数 exp ( X ) = Σ k = 0 1 k ! X k {\displaystyle \exp(X)=\Sigma _{k=0}^{\infty }{\frac {1}{k!}}X^{k}} と定義すれば( X {\displaystyle X} はn次実数値正方行列)、

2乗すると A {\displaystyle A} となり、かつ全ての特性根の実数部分が正となる行列 A {\displaystyle {\sqrt {A}}} は、

A = exp ( 1 2 log ( A ) ) {\displaystyle {\sqrt {A}}=\exp \left({\frac {1}{2}}\log(A)\right)} により計算でき、かつこの行列に一意に定まる。

この方法は、固有値を全て求める必要がないこと(「全ての特性根の実数部分が正」という条件は、特性根を全て求めなくても、十分条件がいくつか知られている)、収束計算が速いこと、対称行列に限らず一般の行列に利用可能であることなど、現実的かつ速い計算方法になっている。

また、行列の平方根に限らず、n乗根も同様に計算することができる。

ニュートン法

実数の方程式 f ( x ) = x 2 a = 0 {\textstyle f(x)=x^{2}-a=0} ニュートン法で解く方法を、行列にそのまま適用して求める方法である。

n次正方行列 A {\textstyle A} に対し、n次正方行列の列 X m {\textstyle X_{m}} を次の漸化式で定める

X m + 1 = 1 2 ( X m + A X m 1 ) {\textstyle X_{m+1}={\frac {1}{2}}(X_{m}+AX_{m}^{-1})}

この列が適当な初期値 X 0 {\displaystyle X_{0}} について収束すれば、収束値 X {\textstyle X_{\infty }} について、 X 2 = A {\textstyle X_{\infty }^{2}=A} となる。

このことは、収束すれば X = 1 2 ( X + A X 1 ) {\textstyle X_{\infty }={\frac {1}{2}}(X_{\infty }+AX_{\infty }^{-1})} が成り立つことから言える。

対称行列(エルミート行列)に限定した議論

以下では、対称行列(あるいはエルミート行列)に限定した行列の平方根についての性質を示す。 「正定値行列」とは、対称行列(あるいはエルミート行列)で、その全ての固有値が正の実数であるものをいう。「半正定値行列」とは、対称行列(あるいはエルミート行列)で、その全ての固有値がゼロまたは正の実数であるものをいう。

定義

転置あるいはエルミート共軛を用いれば、より一般に非対称あるいは非エルミートな矩形行列の範疇で「平方根」をとることができる。

定義
半正定値実正方行列 A に対して、A = B tB(あるいは A = tBB、すなわちAグラム行列)を満たす任意の矩形行列 BA非対称平方根 (asymmetric square root)[6] と呼ぶ。(記号 t行列の転置を表す)
定義
半正定値複素正方行列 A に対して、A = BB*(あるいは A = B*B)を満たす任意の矩形行列 BA非エルミート平方根 (non-Hermitian square root) と呼ぶ。(記号 *エルミート共軛を表す)

B がエルミート(実係数の場合は対称)ならば、B は上で述べたAの平方根と一致する。任意の正定値エルミート行列 A に対し、それ自身正定値エルミートとなる平方根は一意であり、これを主平方根 (unique square root, principal square root)[7]と呼ぶ。

コレスキー分解からも平方根の例が得られるが、コレスキー因子と(主)平方根とを混同してはならない。

非対称平方根のユニタリ自由度

正実数の平方根は、主平方根に ±1 を掛けたものですべて与えられた。これに対応するように、正定値エルミート行列の任意の非エルミート平方根は、ユニタリ変換によって関連付けられる[8]:

主張
半正定値行列 T に対し、T = A*A = B*B ならばユニタリ行列 U が存在して A = UB と書ける。

実際、主平方根を BT½ と書けば、T が正定値のとき B は可逆で、U = AB−1がユニタリであることは

U U = ( ( B ) 1 A ) ( A B 1 ) = ( B ) 1 T ( B 1 ) = ( B ) 1 B B ( B 1 ) = I . {\displaystyle {\begin{aligned}U^{*}U&=\left((B^{*})^{-1}A^{*}\right)\left(AB^{-1}\right)=(B^{*})^{-1}T(B^{-1})\\&=(B^{*})^{-1}B^{*}B(B^{-1})=I.\end{aligned}}}
からわかる。T が正定値でない半正定値行列のときは逆行列の代わりにムーア・ペンローズ擬逆行列 B+ が取れて、作用素 B+A は部分等長だから、T の核の上で自明となるように拡張して U が得られる。

応用

平方根およびそのユニタリ自由度は線型代数学および函数解析学の全般に応用を持つ。

極分解

詳細は「極分解(英語版)」を参照

可逆行列 A に対して、ユニタリ行列 U および正定値行列 P が一意に存在して A = UP と書ける。これを A の極分解と呼ぶ。この正定値行列 P は正定値行列 A*A の主平方根であり、UU = AP−1 で求まる。

A が可逆でないときでも、適当な方法で P が定まれば(それは一意であり)極分解が定義される。極分解におけるユニタリ作用素 U は一意ではないが、以下のようにして「自然な」ユニタリ行列は求められる: AP+A の値域からそれ自身への作用素であり、これは A* の核上自明に延長してユニタリ作用素 U にできるから、この U を極分解に用いればよい。

一般化

  • 有限次元数空間上で行列を考える代わりに、任意のヒルベルト空間上の有界作用素に対して、その平方根を考えることができる。とくに有界半正定値作用素に対して、半正定値な平方根としての主平方根は一意に決まる。あるいは非エルミート平方根に関しても同様に考えることができる。無限次元の場合には、平方根がユニタリ作用素を施す違いを除いて決まるという事実は、作用素が閉値域ならば正しい。非有界作用素に対しては、かつ稠密に定義された二つの平方根 A, B に対し部分等方な UA = UB とできることなどは言える。

関連項目

脚注

[脚注の使い方]

注釈

  1. ^ 例えば [ 0 1 0 0 ] {\textstyle {\begin{bmatrix}0&1\\0&0\end{bmatrix}}}
  2. ^ たとえば、行列 [ 33 24 48 57 ] {\textstyle {\begin{bmatrix}33&24\\48&57\end{bmatrix}}} は行列 [ 1 4 8 5 ] , [ 5 2 4 7 ] {\textstyle {\begin{bmatrix}1&4\\8&5\end{bmatrix}},{\begin{bmatrix}5&2\\4&7\end{bmatrix}}} およびこれらの符号を変えたものを平方根に持つ
  3. ^ これはふつう、対称あるいはエルミートで考える
  4. ^ 正定値行列となるための必要十分条件はそのすべての固有値が正となることであった
  5. ^ このとき、平方が定義できるために行列は必然的に正方行列でなければならないことに注意せよ。とくに対称行列の場合が重要である。
  6. ^ 行列の対数函数#非対角化可能行列の対数の項と同様の級数展開を用いる方法

出典

  1. ^ Higham, Nicholas J. (April 1986), “Newton's Method for the Matrix Square Root”, Mathematics of Computation 46 (174): 537–549, doi:10.2307/2007992, JSTOR 2007992, http://www.ams.org/journals/mcom/1986-46-174/S0025-5718-1986-0829624-5/S0025-5718-1986-0829624-5.pdf 
  2. ^ Horn, Roger A.; Johnson, Charles R. (1990). Matrix analysis. Cambridge: Cambridge Univ. Press. p. 411. ISBN 9780521386326 
  3. ^ 行列変数の解析函数について: Higham 2008, Horn & Johnson 1994
  4. ^ 正則汎函数計算について: Rudin 1991, Bourbaki 2007, Conway 1990
  5. ^ Gentle, James E., Matrix Algebra, p. 125, https://books.google.co.jp/books?id=PDjIV0iWa2cC&pg=PA125&dq=%22Cholesky+factor%22 
  6. ^ Marshall, Albert W.; Olkin, Ingram; Arnold, Barry, Inequalities, p. 773, https://books.google.co.jp/books?id=I9wfajyOrooC&pg=PA773&dq=%22asymmetric%2Bsquare%2Broot%22 
  7. ^ Higham, Nicholas J., Functions of Matrices, p. 20, https://books.google.co.jp/books?id=2Wz_zVUEwPkC&pg=PA20&dq=%22unique%2Bsquare%2Broot%22 
  8. ^ Lu, Andreas, Practical Optimization, p. 601, https://books.google.co.jp/books?id=6_2RhaMFPLcC&pg=PA601&dq=%22non-hermitian%2Bsquare%2Broot%22 

参考文献

  • Bourbaki, Nicolas (2007), Théories spectrales, chapitres 1 et 2, Springer, ISBN 3540353313 
  • Conway, John B. (1990), A Course in Functional Analysis, Graduate Texts in Mathematics, 96, Springer, pp. 199–205, ISBN 0387972455 , Chapter IV, Reisz functional calculus
  • Cheng, Sheung Hun; Higham, Nicholas J.; Kenney, Charles S.; Laub, Alan J. (2001), “Approximating the Logarithm of a Matrix to Specified Accuracy”, SIAM Journal on Matrix Analysis and Applications 22 (4): 1112–1125, doi:10.1137/S0895479899364015, オリジナルの2011-08-09時点におけるアーカイブ。, https://web.archive.org/web/20110809202647/https://eeweb.ee.ucla.edu/publications/journalAlanLaubajlaub_simax22(4)_2001.pdf 
  • Burleson, Donald R., Computing the square root of a Markov matrix: eigenvalues and the Taylor series, http://www.blackmesapress.com/TaylorSeries.htm 
  • Denman, Eugene D.; Beavers, Alex N. (1976), “The matrix sign function and computations in systems”, Applied Mathematics and Computation 2 (1): 63–94, doi:10.1016/0096-3003(76)90020-5 
  • Higham, Nicholas (2008), Functions of Matrices. Theory and Computation, SIAM, ISBN 978-0-89871-646-7 
  • Horn, Roger A.; Johnson, Charles R. (1994), Topics in Matrix Analysis, Cambridge University Press, ISBN 0521467136 
  • Rudin, Walter (1991), Functional analysis, International series in pure and applied mathematics (2nd ed.), McGraw-Hill, ISBN 0070542368 
連立一次方程式
ベクトル
ベクトル空間
計量ベクトル空間
行列線型写像
演算・操作
不変量
クラス
行列式
多重線型代数
数値線形代数
基本的な概念
ソフトウェア
ライブラリ
反復法・技法
人物
行列値関数
その他
カテゴリ カテゴリ