対称行列と反対称行列の固有値
すぐそこに迫っている院試の過去問を解いていたら,反対称行列の固有値に関して気になる性質を知ったので記事にします*1。
導入
固有値
A \boldsymbol{x} = \lambda \boldsymbol{x}
\end{align}を満たすのことを行列の固有値 (eigenvalue) *2,をに対応する固有ベクトル (eigenvector) といいます。
試しに次の行列の固有値を計算してみます。\begin{align}
A = \begin{pmatrix}
-3 & 0 & 0 \\
-2 & -3 & 1 \\
2 & -3 & -3
\end{pmatrix}.
\end{align}固有値の計算には,固有値が次の方程式の解であるという性質を使います。この方程式を固有方程式あるいは特性方程式 (characteristic equation) と言います。
\begin{align}
\operatorname{det} (xI - A) = 0.
\end{align}先の行列に対して,固有方程式は\begin{align}
(x+3)(x^{2} + 6 x + 12) = 0
\end{align}と変形されます。これを解いて,固有値はと分かります。
対称行列と反対称行列
以後は,単に「対称行列」や「反対称行列」といえば,それは実行列を考えているものとします。
対称行列の固有値
対称行列では次の性質が成立します。
証明
を対称行列の固有値,に対応する固有ベクトルをとする。固有値の定義の式の両辺に左からの随伴*5であるをかけて,について解くと,
\begin{align}
\lambda = \frac{\boldsymbol{x}^{*} A \boldsymbol{x}}{\boldsymbol{x}^{*} \boldsymbol{x}}.
\end{align}が実行列であることに注意すると,
\begin{align}
\lambda^{*} = \left( \frac{\boldsymbol{x}^{*} A \boldsymbol{x}}{\boldsymbol{x}^{*} \boldsymbol{x}} \right)^{*} = \frac{\boldsymbol{x}^{*} A^{*} \boldsymbol{x}}{\boldsymbol{x}^{*} \boldsymbol{x}} = \frac{\boldsymbol{x}^{*} A \boldsymbol{x}}{\boldsymbol{x}^{*} \boldsymbol{x}} = \lambda.
\end{align}よって,は実数。
この性質は割と有名かと思います。上の証明で実際に使われた性質はという性質です。を満たす行列のことをHermite行列 (Hermitian matrix) *6と言いますが,上の証明から,Hermite行列の固有値もすべて実数であることも従います。
反対称行列の固有値
反対称行列では次の性質が成り立ちます。
証明
を反対称行列の固有値として,に対応する固有ベクトルをとする。先と同じく
\begin{align}
\lambda = \frac{\boldsymbol{x}^{*} B \boldsymbol{x}}{\boldsymbol{x}^{*} \boldsymbol{x}}
\end{align}に対して,\begin{align}
\lambda^{*} = \left( \frac{\boldsymbol{x}^{*} B \boldsymbol{x}}{\boldsymbol{x}^{*} \boldsymbol{x}} \right)^{*}
= \frac{\boldsymbol{x}^{*} B^{*} \boldsymbol{x}}{\boldsymbol{x}^{*} \boldsymbol{x}}
= - \frac{\boldsymbol{x}^{*} B \boldsymbol{x}}{\boldsymbol{x}^{*} \boldsymbol{x}}
= - \lambda.
\end{align}よって,\begin{align}
\operatorname{Re} \lambda = \frac{\lambda + \lambda^{*}}{2} = 0
\end{align}である。
証明の流れは先と全く同じでした。したがって,ここでもという性質が鍵になっています。を満たす行列のことを反Hermite行列 (anti-Hermitian matrix) *7と言いますが,上の証明から,反Hermite行列の固有値もすべて実部が0であることも従います。
もう一つ,反対称行列の固有値に関する定理を紹介します。
証明
固有値の定義の式の両辺を倍すると\begin{align}
A^{\top} \boldsymbol{x} = -A \boldsymbol{x} = - \lambda \boldsymbol{x}.
\end{align}これはがの固有値であることを示している。固有値は転置をとっても変化しないので,もの固有値である*8。
上の証明により,反対称行列についてさらに次のことも言えます。
固有値に属する固有ベクトルをとると,それは同時にに属する固有ベクトルにもなっています。いまもし,が正則であるとすると,固有値に0は含まれないので,それらはすべてという形になります。このプラスマイナスの2つは重複度が等しく,重複度の和は偶数です。よって,すべての固有値の重複度の和,これはのサイズに等しくなりますが,これも偶数になります。したがって,対偶をとることで次の定理を得ます。
ちなみに,この定理は行列式を使うとスムーズに証明ができますので,その証明も補足しておきましょう。
証明
の行列式をと書く。行列式は転置操作に対して不変であり,行列のある1行または1列を倍すると行列式も倍になる。このことから,を次反対称行列とすると,\begin{align}
\operatorname{det} B = \operatorname{det} B^{\top} = \operatorname{det} (-B) = (-1)^{2k+1} \operatorname{det} B = -\operatorname{det} B.
\end{align}よって,\begin{align}
\operatorname{det} B = 0.
\end{align}これよりには逆行列が存在しない,つまり,は特異であることが従う。
なお,偶数次の反対称行列の正則性は一概には判定できません。例えば次の2つの反対称行列を考えてみると,は正則ですが,は特異です。
\begin{align}
B_{1} = \begin{pmatrix}
0 & 2 & 0 & 1 \\
-2 & 0 & 1 & -2 \\
0 & -1 & 0 & -1 \\
-1 & 2 & 1 & 0
\end{pmatrix}, \quad
B_{2} = \begin{pmatrix}
0 & 1 & 0 & 1 \\
-1 & 0 & 1 & -1 \\
0 & -1 & 0 & -1 \\
-1 & 1 & 1 & 0
\end{pmatrix}.
\end{align}
*1:今回はこういった動機から,あまり対称行列の固有値については触れていませんが,本来は対称行列の固有値のほうが多く取り上げられる話題です。例えば,対称行列の一つのクラスである「正定値行列」は固有値がすべて正になることでも知られていますし,これを少し拡張した「半正定値行列」と呼ばれる行列は連続最適化の分野では非常に大きな立ち位置を占めます。また,対称行列の固有値に関して最も基本的で忘れてはならないことが,「対称行列の固有ベクトルは,属する固有値が異なれば直交する」ということです。このことから,直交行列と呼ばれる逆行列が非常に計算しやすい行列によって対称行列は対角化できることが分かり,計算上で大きな役割を果たします。他にも固有値の性質を調べる際に対称行列の仮定を置くことはしばしばあります。一方,反対称行列はどちらかというとあまり日の目を見ない印象があります。とはいえ,反対称行列は調和振動子の微分方程式の係数行列として出現しますので,この辺りの物理を解析する際には反対称行列のことを知っておくことは損ではないかもしれません。個人的には院試で出てきた内容だというだけでかなり重要に思えてはきますが,それには幾分かバイアスがかかっている気もします。
*2:eigenvalueという響きがどことなくドイツ風だなあと思います。
*3:この性質は実数体が代数的に閉じていない,つまり,実係数多項式の根が実数の範囲には収まりきらない,という性質から従うものです。つまり,逆に言えば,代数的に閉じている体,例えば複素数体上で考えれば固有値もその体上できちんと求まるということになります。
*4:対称行列は一般的に呼称が一意的ですが,反対称行列についてはほかに歪対称行列 (skew-symmetric matrix),交代行列 (alternating matrix)という2つの呼称が存在します。ちなみに1つ目は「わいたいしょうぎょうれつ」と読みます。「歪」は「事実を歪曲(わいきょく)する」の「わい」です。
*5:共軛転置。複素共軛をとって転置したもの。
*6:読み方が「エルミート」なのは憎い。
*7:反Hermite行列のことを「歪Hermite行列 (skew-Hermitian matrix) 」とも言います。
*8:もう一つ別の考え方をすることも可能です。実行列の固有方程式は実係数の方程式になりますから,複素解が存在すればその複素共軛もこの方程式の解になります。いま,先の定理より反対称行列の固有値は実部が0ですので,複素共軛をとると元の数の倍になるのです。
*9:行列が特異であるとは,行列が正則でないことを意味します。