この問いは、抽象的な整理欲から出てきたのではありません。18 世紀、オイラーは二次曲面の主軸を求める問題で、ラグランジュとラプラスは惑星軌道の長期的なずれ(永年摂動)を調べる問題で、いずれも「ある行列の対角化」に相当する計算に到達しました。当時この方程式は永年方程式(secular equation)と呼ばれ、現在の特性方程式にあたります。19 世紀にはコーシーが対称行列の固有値がすべて実数であることを示し、20 世紀初頭にヒルベルトが積分方程式の研究のなかで Eigenwert(固有値)という語を用いたことで、この呼び名が定着しました。
以下、K K K は体を表し、具体的には R \mathbb{R} R または C \mathbb{C} C だと思って読んで構いません。ただし「どちらの体で考えているか」が本質的に効く場面があるので、体は明示します。V V V は K K K 上の有限次元ベクトル空間で、dim V = n ≥ 1 \dim V = n \ge 1 dim V = n ≥ 1 とします。M n ( K ) M_n(K) M n ( K ) で K K K 成分の n n n 次正方行列全体を、I I I (必要なら I n I_n I n )で単位行列を表します。ベクトルは v \boldsymbol{v} v 、行列は A A A 、転置は A T A^{\mathsf{T}} A T と書きます。
線形変換 T : V → V T : V \to V T : V → V と V V V の基底 B = ( b 1 , … , b n ) \mathcal{B} = (\boldsymbol{b}_1,\ldots,\boldsymbol{b}_n) B = ( b 1 , … , b n ) が与えられると、表現行列 A ∈ M n ( K ) A \in M_n(K) A ∈ M n ( K ) が定まります。基底を B ′ \mathcal{B}' B ′ に取り替えると表現行列は P − 1 A P P^{-1}AP P − 1 A P に変わります(P P P は基底変換行列。表現行列の変換則(Theorem 5.2)[Matrices and Linear Systems] を参照)。この関係を相似といいます。詳しくは ベクトル空間と線形変換 を参照してください。
証明で繰り返し使う既知の事実を挙げておきます。いずれも 行列と連立一次方程式 と 行列式とその性質 の内容です。
次元定理 : 線形写像 S : V → V S : V \to V S : V → V について dim ker S + dim im S = dim V \dim \ker S + \dim \operatorname{im} S = \dim V dim ker S + dim im S = dim V (次元定理(Theorem 7.3)[Vector Spaces and Linear Maps] )。とくに有限次元では、S S S が単射であることと全射であること、正則であることは同値です。
行列式の乗法性 : det ( A B ) = det A ⋅ det B \det(AB) = \det A \cdot \det B det ( A B ) = det A ⋅ det B (積の定理(Theorem 6.1)[Determinants and Their Properties] )。また A A A が正則なら det ( A − 1 ) = ( det A ) − 1 \det(A^{-1}) = (\det A)^{-1} det ( A − 1 ) = ( det A ) − 1 。
正則性の判定 : A A A が正則であることと det A ≠ 0 \det A \ne 0 det A = 0 は同値(正則性の判定(Theorem 7.1)[Determinants and Their Properties] )。同値な言い換えとして、A x = 0 A\boldsymbol{x} = \boldsymbol{0} A x = 0 が非自明解を持つことと det A = 0 \det A = 0 det A = 0 は同値です。
三角行列の行列式 : 上三角行列(下三角行列)の行列式は対角成分の積です(転置不変性と三角行列(Proposition 3.3)[Determinants and Their Properties] )。
ブロック三角行列の行列式 : X X X を r r r 次、Z Z Z を s s s 次の正方行列、Y Y Y を r × s r \times s r × s 行列、O O O を s × r s \times r s × r 零行列とすると、det ( X Y O Z ) = det X ⋅ det Z \det \begin{pmatrix} X & Y \\ O & Z \end{pmatrix} = \det X \cdot \det Z det ( X O Y Z ) = det X ⋅ det Z が成り立ちます。
転置不変性 : det ( A T ) = det A \det(A^{\mathsf{T}}) = \det A det ( A T ) = det A 。
Definition 3.1 (固有値と固有ベクトル )
V V V を体 K K K 上のベクトル空間、T : V → V T : V \to V T : V → V を線形変換とする。スカラー λ ∈ K \lambda \in K λ ∈ K とベクトル v ∈ V \boldsymbol{v} \in V v ∈ V が
T v = λ v , v ≠ 0 T\boldsymbol{v} = \lambda \boldsymbol{v}, \qquad \boldsymbol{v} \ne \boldsymbol{0} T v = λ v , v = 0 を満たすとき、λ \lambda λ を T T T の固有値 、v \boldsymbol{v} v を固有値 λ \lambda λ に属する固有ベクトル という。行列 A ∈ M n ( K ) A \in M_n(K) A ∈ M n ( K ) に対しては、T ( x ) = A x T(\boldsymbol{x}) = A\boldsymbol{x} T ( x ) = A x で定まる K n K^n K n 上の線形変換の固有値・固有ベクトルを、A A A の固有値・固有ベクトルという。
定義のうち二つの条件について、それぞれなぜそうなっているのかを確認しておきます。
一般の方向:向きが変わる v Av 固有方向:直線から出ない u Au = 3u 行列 A(第 1 行 2, 1 / 第 2 行 1, 2)の作用。左:一般のベクトルは変換で向きが変わる。右:固有ベクトル (1,1) は同じ直線上に留まり、長さが 3 倍になるだけ。 さて、定義は「そういう λ \lambda λ と v \boldsymbol{v} v が存在すれば」という形をしています。これでは探し方がわかりません。存在条件を、計算できる形に翻訳しましょう。
Proposition 3.3 (固有値の判定条件 )
A ∈ M n ( K ) A \in M_n(K) A ∈ M n ( K ) と λ ∈ K \lambda \in K λ ∈ K について、次の三つは同値である。
λ \lambda λ は A A A の固有値である。
行列 A − λ I A - \lambda I A − λ I は正則でない。
det ( λ I − A ) = 0 \det(\lambda I - A) = 0 det ( λ I − A ) = 0 。
Proof(Proposition 3.3) まず 1 と 2 の同値性を示します。λ \lambda λ が A A A の固有値であるとは、Definition 3.1 より A v = λ v A\boldsymbol{v} = \lambda\boldsymbol{v} A v = λ v を満たす v ≠ 0 \boldsymbol{v} \ne \boldsymbol{0} v = 0 が存在することです。この式は移項して
A v − λ v = ( A − λ I ) v = 0 A\boldsymbol{v} - \lambda\boldsymbol{v} = (A - \lambda I)\boldsymbol{v} = \boldsymbol{0} A v − λ v = ( A − λ I ) v = 0 と書き直せます(λ v = λ I v \lambda \boldsymbol{v} = \lambda I \boldsymbol{v} λ v = λ I v を使いました)。したがって「λ \lambda λ が固有値である」ことは「斉次連立一次方程式 ( A − λ I ) x = 0 (A - \lambda I)\boldsymbol{x} = \boldsymbol{0} ( A − λ I ) x = 0 が非自明解を持つ」ことと同じです。これは ker ( A − λ I ) ≠ { 0 } \ker(A - \lambda I) \ne \{\boldsymbol{0}\} ker ( A − λ I ) = { 0 } 、すなわち A − λ I A - \lambda I A − λ I が単射でないことを意味します。準備 1 の次元定理より、有限次元では単射でないことと正則でないことは同値です。よって 1 と 2 は同値です。
次に 2 と 3 の同値性ですが、これは準備 3 の正則性判定そのものです。A − λ I A - \lambda I A − λ I が正則でないことと det ( A − λ I ) = 0 \det(A - \lambda I) = 0 det ( A − λ I ) = 0 は同値であり、さらに λ I − A = − ( A − λ I ) \lambda I - A = -(A - \lambda I) λ I − A = − ( A − λ I ) なので、行列式の n n n 重線形性から
det ( λ I − A ) = ( − 1 ) n det ( A − λ I ) \det(\lambda I - A) = (-1)^n \det(A - \lambda I) det ( λ I − A ) = ( − 1 ) n det ( A − λ I ) となります。( − 1 ) n ≠ 0 (-1)^n \ne 0 ( − 1 ) n = 0 なので、一方が 0 0 0 であることと他方が 0 0 0 であることは同値です。
∎ この命題の意味は大きいです。固有値の定義は「うまいベクトルが存在するか」という探索問題ですが、Proposition 3.3 の条件 3 は λ \lambda λ についての一本の方程式です。つまり固有値を求める問題が、方程式を解く問題に完全に置き換わりました。しかも左辺は、次節で見るように λ \lambda λ の多項式になります。
Example 3.4 (2 次の対称行列を最後まで解く )
冒頭の A = ( 2 1 1 2 ) A = \begin{pmatrix} 2 & 1 \\ 1 & 2 \end{pmatrix} A = ( 2 1 1 2 ) を、定義から計算してみます。K = R K = \mathbb{R} K = R とします。Proposition 3.3 より
det ( λ I − A ) = det ( λ − 2 − 1 − 1 λ − 2 ) = ( λ − 2 ) 2 − 1 = λ 2 − 4 λ + 3 = ( λ − 1 ) ( λ − 3 ) . \det(\lambda I - A) = \det \begin{pmatrix} \lambda - 2 & -1 \\ -1 & \lambda - 2 \end{pmatrix}
= (\lambda-2)^2 - 1 = \lambda^2 - 4\lambda + 3 = (\lambda - 1)(\lambda - 3). det ( λ I − A ) = det ( λ − 2 − 1 − 1 λ − 2 ) = ( λ − 2 ) 2 − 1 = λ 2 − 4 λ + 3 = ( λ − 1 ) ( λ − 3 ) . よって固有値は λ = 1 , 3 \lambda = 1, 3 λ = 1 , 3 の二つです。
λ = 3 \lambda = 3 λ = 3 のとき、( A − 3 I ) x = 0 (A - 3I)\boldsymbol{x} = \boldsymbol{0} ( A − 3 I ) x = 0 を解きます。
A − 3 I = ( − 1 1 1 − 1 ) , { − x 1 + x 2 = 0 − x 1 − x 2 = 0 A - 3I = \begin{pmatrix} -1 & 1 \\ 1 & -1 \end{pmatrix}, \qquad
\begin{cases} -x_1 + x_2 = 0 \\ \phantom{-}x_1 - x_2 = 0 \end{cases} A − 3 I = ( − 1 1 1 − 1 ) , { − x 1 + x 2 = 0 − x 1 − x 2 = 0 二つの式は同値で、x 1 = x 2 x_1 = x_2 x 1 = x 2 が解です。したがって解空間は { c ( 1 , 1 ) T : c ∈ R } \{ c(1,1)^{\mathsf{T}} : c \in \mathbb{R} \} { c ( 1 , 1 ) T : c ∈ R } であり、p 1 = ( 1 , 1 ) T \boldsymbol{p}_1 = (1,1)^{\mathsf{T}} p 1 = ( 1 , 1 ) T が固有ベクトルです。検算すると A p 1 = ( 2 + 1 , 1 + 2 ) T = ( 3 , 3 ) T = 3 p 1 A\boldsymbol{p}_1 = (2+1, 1+2)^{\mathsf{T}} = (3,3)^{\mathsf{T}} = 3\boldsymbol{p}_1 A p 1 = ( 2 + 1 , 1 + 2 ) T = ( 3 , 3 ) T = 3 p 1 で正しいことが確かめられます。
λ = 1 \lambda = 1 λ = 1 のとき、
A − I = ( 1 1 1 1 ) , x 1 + x 2 = 0 A - I = \begin{pmatrix} 1 & 1 \\ 1 & 1 \end{pmatrix}, \qquad x_1 + x_2 = 0 A − I = ( 1 1 1 1 ) , x 1 + x 2 = 0 より解空間は { c ( 1 , − 1 ) T } \{ c(1,-1)^{\mathsf{T}} \} { c ( 1 , − 1 ) T } で、p 2 = ( 1 , − 1 ) T \boldsymbol{p}_2 = (1,-1)^{\mathsf{T}} p 2 = ( 1 , − 1 ) T が固有ベクトルです。検算は A p 2 = ( 2 − 1 , 1 − 2 ) T = ( 1 , − 1 ) T = 1 ⋅ p 2 A\boldsymbol{p}_2 = (2-1, 1-2)^{\mathsf{T}} = (1,-1)^{\mathsf{T}} = 1 \cdot \boldsymbol{p}_2 A p 2 = ( 2 − 1 , 1 − 2 ) T = ( 1 , − 1 ) T = 1 ⋅ p 2 です。
ここで P = ( p 1 p 2 ) = ( 1 1 1 − 1 ) P = (\boldsymbol{p}_1 \; \boldsymbol{p}_2) = \begin{pmatrix} 1 & 1 \\ 1 & -1 \end{pmatrix} P = ( p 1 p 2 ) = ( 1 1 1 − 1 ) と置くと det P = − 2 ≠ 0 \det P = -2 \ne 0 det P = − 2 = 0 で正則、しかも
A P = ( 3 1 3 − 1 ) = ( 1 1 1 − 1 ) ( 3 0 0 1 ) = P ( 3 0 0 1 ) AP = \begin{pmatrix} 3 & 1 \\ 3 & -1 \end{pmatrix} = \begin{pmatrix} 1 & 1 \\ 1 & -1 \end{pmatrix}\begin{pmatrix} 3 & 0 \\ 0 & 1 \end{pmatrix} = P \begin{pmatrix} 3 & 0 \\ 0 & 1 \end{pmatrix} A P = ( 3 3 1 − 1 ) = ( 1 1 1 − 1 ) ( 3 0 0 1 ) = P ( 3 0 0 1 ) なので、P − 1 A P = diag ( 3 , 1 ) P^{-1}AP = \operatorname{diag}(3,1) P − 1 A P = diag ( 3 , 1 ) です。§1 で述べた「A A A と B B B は同じ変換」という主張が、これで証明されました。
Definition 4.1 (特性多項式 )
A ∈ M n ( K ) A \in M_n(K) A ∈ M n ( K ) に対し、変数 t t t の多項式
φ A ( t ) : = det ( t I − A ) \varphi_A(t) := \det(t I - A) φ A ( t ) := det ( t I − A ) を A A A の特性多項式 という。方程式 φ A ( t ) = 0 \varphi_A(t) = 0 φ A ( t ) = 0 を特性方程式 という。
Proposition 4.3 (特性多項式の次数と係数 )
A = ( a i j ) ∈ M n ( K ) A = (a_{ij}) \in M_n(K) A = ( a ij ) ∈ M n ( K ) とする。φ A ( t ) \varphi_A(t) φ A ( t ) は t t t についてモニックな n n n 次多項式であり、
φ A ( t ) = t n − ( tr A ) t n − 1 + c n − 2 t n − 2 + ⋯ + c 1 t + ( − 1 ) n det A \varphi_A(t) = t^n - (\operatorname{tr} A)\, t^{n-1} + c_{n-2}t^{n-2} + \cdots + c_1 t + (-1)^n \det A φ A ( t ) = t n − ( tr A ) t n − 1 + c n − 2 t n − 2 + ⋯ + c 1 t + ( − 1 ) n det A の形をしている。ここで tr A = ∑ i = 1 n a i i \operatorname{tr} A = \sum_{i=1}^{n} a_{ii} tr A = ∑ i = 1 n a ii は A A A のトレース(対角和)であり、c n − 2 , … , c 1 ∈ K c_{n-2},\ldots,c_1 \in K c n − 2 , … , c 1 ∈ K は A A A の成分から定まるスカラーである。
Proof(Proposition 4.3) M = t I − A M = tI - A M = t I − A と置きます。その成分は m i i = t − a i i m_{ii} = t - a_{ii} m ii = t − a ii 、i ≠ j i \ne j i = j のとき m i j = − a i j m_{ij} = -a_{ij} m ij = − a ij です。ライプニッツ展開
φ A ( t ) = ∑ σ ∈ S n sgn ( σ ) ∏ i = 1 n m i σ ( i ) \varphi_A(t) = \sum_{\sigma \in S_n} \operatorname{sgn}(\sigma) \prod_{i=1}^{n} m_{i\,\sigma(i)} φ A ( t ) = σ ∈ S n ∑ sgn ( σ ) i = 1 ∏ n m i σ ( i ) の各項を、t t t の次数で分類します。
恒等置換 σ = i d \sigma = \mathrm{id} σ = id の項は ∏ i = 1 n ( t − a i i ) \prod_{i=1}^{n}(t - a_{ii}) ∏ i = 1 n ( t − a ii ) で、これは n n n 次です。
σ ≠ i d \sigma \ne \mathrm{id} σ = id の項を考えます。σ \sigma σ が恒等置換でないなら、σ ( i ) ≠ i \sigma(i) \ne i σ ( i ) = i となる i i i が存在します。しかも置換は全単射なので、そのような i i i は少なくとも 2 個あります。実際、σ ( i 0 ) ≠ i 0 \sigma(i_0) \ne i_0 σ ( i 0 ) = i 0 となる i 0 i_0 i 0 を一つ取り、j 0 = σ ( i 0 ) j_0 = \sigma(i_0) j 0 = σ ( i 0 ) と置けば j 0 ≠ i 0 j_0 \ne i_0 j 0 = i 0 であり、σ \sigma σ が単射だから σ ( j 0 ) ≠ σ ( i 0 ) = j 0 \sigma(j_0) \ne \sigma(i_0) = j_0 σ ( j 0 ) = σ ( i 0 ) = j 0 、つまり j 0 j_0 j 0 も動く添字です。したがって積 ∏ i m i σ ( i ) \prod_i m_{i\,\sigma(i)} ∏ i m i σ ( i ) のうち t t t を含みうる因子(対角成分の因子)は高々 n − 2 n - 2 n − 2 個であり、この項の次数は n − 2 n-2 n − 2 以下です。
以上より、t n t^n t n と t n − 1 t^{n-1} t n − 1 の係数は恒等置換の項だけから決まります。∏ i = 1 n ( t − a i i ) \prod_{i=1}^{n}(t - a_{ii}) ∏ i = 1 n ( t − a ii ) を展開すると、t n t^n t n の係数は 1 1 1 、t n − 1 t^{n-1} t n − 1 の係数は − ∑ i = 1 n a i i = − tr A -\sum_{i=1}^{n} a_{ii} = -\operatorname{tr} A − ∑ i = 1 n a ii = − tr A です(n − 1 n-1 n − 1 個の因子から t t t を、残り 1 個から − a i i -a_{ii} − a ii を選ぶ選び方が n n n 通りあり、それらの和になります)。これでモニック性と t n − 1 t^{n-1} t n − 1 の係数が示せました。
定数項は φ A ( 0 ) \varphi_A(0) φ A ( 0 ) です。φ A ( 0 ) = det ( 0 ⋅ I − A ) = det ( − A ) \varphi_A(0) = \det(0 \cdot I - A) = \det(-A) φ A ( 0 ) = det ( 0 ⋅ I − A ) = det ( − A ) であり、− A -A − A は A A A の各行を − 1 -1 − 1 倍したものなので、行列式の行に関する線形性を n n n 回使って det ( − A ) = ( − 1 ) n det A \det(-A) = (-1)^n \det A det ( − A ) = ( − 1 ) n det A を得ます。
∎ Theorem 4.4 (特性多項式と固有空間の相似不変性 )
A ∈ M n ( K ) A \in M_n(K) A ∈ M n ( K ) 、P ∈ M n ( K ) P \in M_n(K) P ∈ M n ( K ) を正則行列とし、B = P − 1 A P B = P^{-1}AP B = P − 1 A P と置く。このとき
φ B ( t ) = φ A ( t ) \varphi_B(t) = \varphi_A(t) φ B ( t ) = φ A ( t ) 。とくに tr B = tr A \operatorname{tr} B = \operatorname{tr} A tr B = tr A かつ det B = det A \det B = \det A det B = det A 。
任意の λ ∈ K \lambda \in K λ ∈ K について、写像 v ↦ P − 1 v \boldsymbol{v} \mapsto P^{-1}\boldsymbol{v} v ↦ P − 1 v は ker ( A − λ I ) \ker(A - \lambda I) ker ( A − λ I ) から ker ( B − λ I ) \ker(B - \lambda I) ker ( B − λ I ) への同型を与える。とくに dim ker ( A − λ I ) = dim ker ( B − λ I ) \dim \ker(A - \lambda I) = \dim \ker(B - \lambda I) dim ker ( A − λ I ) = dim ker ( B − λ I ) 。
Proof(Theorem 4.4) 1 の証明。 P − 1 ( t I ) P = t I P^{-1}(tI)P = tI P − 1 ( t I ) P = t I に注意すると
t I − B = t I − P − 1 A P = P − 1 ( t I ) P − P − 1 A P = P − 1 ( t I − A ) P tI - B = tI - P^{-1}AP = P^{-1}(tI)P - P^{-1}AP = P^{-1}(tI - A)P t I − B = t I − P − 1 A P = P − 1 ( t I ) P − P − 1 A P = P − 1 ( t I − A ) P です。準備 2 の行列式の乗法性を 2 回使って
φ B ( t ) = det ( P − 1 ( t I − A ) P ) = det ( P − 1 ) det ( t I − A ) det ( P ) = det ( P ) − 1 det ( P ) φ A ( t ) = φ A ( t ) \varphi_B(t) = \det\bigl(P^{-1}(tI-A)P\bigr) = \det(P^{-1})\det(tI-A)\det(P) = \det(P)^{-1}\det(P)\,\varphi_A(t) = \varphi_A(t) φ B ( t ) = det ( P − 1 ( t I − A ) P ) = det ( P − 1 ) det ( t I − A ) det ( P ) = det ( P ) − 1 det ( P ) φ A ( t ) = φ A ( t ) を得ます。特性多項式が一致すれば、その t n − 1 t^{n-1} t n − 1 の係数と定数項も一致します。Proposition 4.3 によりこれらはそれぞれ − tr -\operatorname{tr} − tr と ( − 1 ) n det (-1)^n \det ( − 1 ) n det なので、トレースと行列式も一致します。
2 の証明。 v ∈ ker ( A − λ I ) \boldsymbol{v} \in \ker(A - \lambda I) v ∈ ker ( A − λ I ) 、すなわち A v = λ v A\boldsymbol{v} = \lambda\boldsymbol{v} A v = λ v とします。w = P − 1 v \boldsymbol{w} = P^{-1}\boldsymbol{v} w = P − 1 v と置くと
B w = P − 1 A P P − 1 v = P − 1 A v = P − 1 ( λ v ) = λ P − 1 v = λ w B\boldsymbol{w} = P^{-1}AP P^{-1}\boldsymbol{v} = P^{-1}A\boldsymbol{v} = P^{-1}(\lambda \boldsymbol{v}) = \lambda P^{-1}\boldsymbol{v} = \lambda\boldsymbol{w} B w = P − 1 A P P − 1 v = P − 1 A v = P − 1 ( λ v ) = λ P − 1 v = λ w なので w ∈ ker ( B − λ I ) \boldsymbol{w} \in \ker(B - \lambda I) w ∈ ker ( B − λ I ) です。よって v ↦ P − 1 v \boldsymbol{v} \mapsto P^{-1}\boldsymbol{v} v ↦ P − 1 v は ker ( A − λ I ) → ker ( B − λ I ) \ker(A-\lambda I) \to \ker(B - \lambda I) ker ( A − λ I ) → ker ( B − λ I ) を定めます。これは線形写像であり、w ↦ P w \boldsymbol{w} \mapsto P\boldsymbol{w} w ↦ P w が逆写像を与える(A = P B P − 1 A = PBP^{-1} A = P B P − 1 に注意して、同じ計算を A A A と B B B 、P P P と P − 1 P^{-1} P − 1 の役割を入れ替えて行えばよい)ので同型です。同型なら次元は等しくなります。
∎ この定理により、線形変換 T : V → V T : V \to V T : V → V に対して「T T T の特性多項式」を定義できます。基底を一つ選んで表現行列 A A A を取り、φ T : = φ A \varphi_T := \varphi_A φ T := φ A と定めるのです。別の基底を選べば表現行列は P − 1 A P P^{-1}AP P − 1 A P に変わりますが、Theorem 4.4 の 1 によりこれは同じ多項式を与えるので、定義は基底の選び方によりません。トレースと行列式が「行列の量」ではなく「変換そのものの量」だと言えるのも、この定理のおかげです。
Corollary 4.5 (固有値の総和と総積 )
A ∈ M n ( K ) A \in M_n(K) A ∈ M n ( K ) の特性多項式が K K K 上で一次式の積に分解し、
φ A ( t ) = ( t − λ 1 ) ( t − λ 2 ) ⋯ ( t − λ n ) \varphi_A(t) = (t - \lambda_1)(t - \lambda_2)\cdots(t - \lambda_n) φ A ( t ) = ( t − λ 1 ) ( t − λ 2 ) ⋯ ( t − λ n ) と書けたとする(λ i \lambda_i λ i は重複を許して並べる)。このとき
∑ i = 1 n λ i = tr A , ∏ i = 1 n λ i = det A . \sum_{i=1}^{n} \lambda_i = \operatorname{tr} A, \qquad \prod_{i=1}^{n} \lambda_i = \det A . i = 1 ∑ n λ i = tr A , i = 1 ∏ n λ i = det A . Proof(Corollary 4.5) 右辺を展開します。∏ i = 1 n ( t − λ i ) \prod_{i=1}^n (t - \lambda_i) ∏ i = 1 n ( t − λ i ) の t n − 1 t^{n-1} t n − 1 の係数は、n − 1 n-1 n − 1 個の因子から t t t を、残り 1 個から − λ i -\lambda_i − λ i を選ぶ和なので − ∑ i λ i -\sum_i \lambda_i − ∑ i λ i です。また定数項は各因子から − λ i -\lambda_i − λ i を選んだ積 ∏ i ( − λ i ) = ( − 1 ) n ∏ i λ i \prod_i(-\lambda_i) = (-1)^n\prod_i \lambda_i ∏ i ( − λ i ) = ( − 1 ) n ∏ i λ i です。
一方 Proposition 4.3 より、φ A ( t ) \varphi_A(t) φ A ( t ) の t n − 1 t^{n-1} t n − 1 の係数は − tr A -\operatorname{tr}A − tr A 、定数項は ( − 1 ) n det A (-1)^n\det A ( − 1 ) n det A です。同じ多項式の係数どうしを比較して、− ∑ i λ i = − tr A -\sum_i\lambda_i = -\operatorname{tr}A − ∑ i λ i = − tr A および ( − 1 ) n ∏ i λ i = ( − 1 ) n det A (-1)^n \prod_i \lambda_i = (-1)^n \det A ( − 1 ) n ∏ i λ i = ( − 1 ) n det A を得ます。両辺を整理すれば主張が従います。
∎ Corollary 4.6 (固有値の存在 )
n ≥ 1 n \ge 1 n ≥ 1 とする。
任意の A ∈ M n ( C ) A \in M_n(\mathbb{C}) A ∈ M n ( C ) は少なくとも一つの固有値を持つ。
n n n が奇数ならば、任意の A ∈ M n ( R ) A \in M_n(\mathbb{R}) A ∈ M n ( R ) は少なくとも一つの実固有値を持つ。
Proof(Corollary 4.6) 1. Proposition 4.3 より φ A \varphi_A φ A は次数 n ≥ 1 n \ge 1 n ≥ 1 の複素係数多項式です。代数学の基本定理より、次数 1 1 1 以上の複素係数多項式は C \mathbb{C} C に根を持つので、φ A ( λ ) = 0 \varphi_A(\lambda) = 0 φ A ( λ ) = 0 を満たす λ ∈ C \lambda \in \mathbb{C} λ ∈ C が存在します。Proposition 3.3 よりこの λ \lambda λ は A A A の固有値です。
2. φ A \varphi_A φ A は実係数のモニックな n n n 次多項式で、n n n は奇数です。t → + ∞ t \to +\infty t → + ∞ のとき φ A ( t ) → + ∞ \varphi_A(t) \to +\infty φ A ( t ) → + ∞ 、t → − ∞ t \to -\infty t → − ∞ のとき φ A ( t ) → − ∞ \varphi_A(t) \to -\infty φ A ( t ) → − ∞ です(最高次の項 t n t^n t n が支配し、n n n が奇数だから符号が反転します)。φ A \varphi_A φ A は多項式なので R \mathbb{R} R 上連続であり、中間値の定理より φ A ( λ ) = 0 \varphi_A(\lambda) = 0 φ A ( λ ) = 0 となる λ ∈ R \lambda \in \mathbb{R} λ ∈ R が存在します。
∎ Example 4.7 (三角行列の固有値は対角成分 )
A = ( a i j ) A = (a_{ij}) A = ( a ij ) が上三角行列(i > j i > j i > j のとき a i j = 0 a_{ij} = 0 a ij = 0 )だとします。すると t I − A tI - A t I − A も上三角行列で、その対角成分は t − a 11 , … , t − a n n t - a_{11}, \ldots, t - a_{nn} t − a 11 , … , t − a nn です。準備 4 より
φ A ( t ) = ∏ i = 1 n ( t − a i i ) \varphi_A(t) = \prod_{i=1}^{n} (t - a_{ii}) φ A ( t ) = i = 1 ∏ n ( t − a ii ) なので、固有値はちょうど対角成分 a 11 , … , a n n a_{11},\ldots,a_{nn} a 11 , … , a nn (重複を含む)です。たとえば
A = ( 5 7 − 2 0 5 3 0 0 − 1 ) A = \begin{pmatrix} 5 & 7 & -2 \\ 0 & 5 & 3 \\ 0 & 0 & -1 \end{pmatrix} A = 5 0 0 7 5 0 − 2 3 − 1 の固有値は 5 , 5 , − 1 5, 5, -1 5 , 5 , − 1 です。
ここで強調しておきたいのは、これは三角行列に限った話だ ということです。一般の行列では対角成分と固有値は無関係です。反例として A = ( 0 1 1 0 ) A = \begin{pmatrix} 0 & 1 \\ 1 & 0 \end{pmatrix} A = ( 0 1 1 0 ) を取ると、対角成分はどちらも 0 0 0 ですが、φ A ( t ) = t 2 − 1 = ( t − 1 ) ( t + 1 ) \varphi_A(t) = t^2 - 1 = (t-1)(t+1) φ A ( t ) = t 2 − 1 = ( t − 1 ) ( t + 1 ) なので固有値は ± 1 \pm 1 ± 1 です。0 0 0 は固有値ではありません(実際この行列は正則で、det A = − 1 ≠ 0 \det A = -1 \ne 0 det A = − 1 = 0 です)。
Example 4.8 (回転行列 — 体を変えると固有値が現れる )
平面の角 θ \theta θ の回転を表す行列
R θ = ( cos θ − sin θ sin θ cos θ ) R_\theta = \begin{pmatrix} \cos\theta & -\sin\theta \\ \sin\theta & \cos\theta \end{pmatrix} R θ = ( cos θ sin θ − sin θ cos θ ) を考えます。特性多項式は
φ R θ ( t ) = det ( t − cos θ sin θ − sin θ t − cos θ ) = ( t − cos θ ) 2 + sin 2 θ = t 2 − 2 ( cos θ ) t + 1 \varphi_{R_\theta}(t) = \det\begin{pmatrix} t - \cos\theta & \sin\theta \\ -\sin\theta & t - \cos\theta\end{pmatrix} = (t-\cos\theta)^2 + \sin^2\theta = t^2 - 2(\cos\theta) t + 1 φ R θ ( t ) = det ( t − cos θ − sin θ sin θ t − cos θ ) = ( t − cos θ ) 2 + sin 2 θ = t 2 − 2 ( cos θ ) t + 1 です。判別式は 4 cos 2 θ − 4 = − 4 sin 2 θ 4\cos^2\theta - 4 = -4\sin^2\theta 4 cos 2 θ − 4 = − 4 sin 2 θ なので、sin θ ≠ 0 \sin\theta \ne 0 sin θ = 0 、すなわち θ \theta θ が π \pi π の整数倍でないとき、これは負になります。したがって K = R K = \mathbb{R} K = R では R θ R_\theta R θ に固有値は存在しません 。幾何学的には当然です。原点を通るどの直線も、0 0 0 でも π \pi π でもない角だけ回されれば元の直線からずれてしまうので、「向きが変わらない方向」は存在しません。
ところが K = C K = \mathbb{C} K = C で考えると話が変わります。根は
t = cos θ ± i sin θ = e ± i θ t = \cos\theta \pm i\sin\theta = e^{\pm i\theta} t = cos θ ± i sin θ = e ± i θ です。λ = e i θ \lambda = e^{i\theta} λ = e i θ に属する固有ベクトルを求めましょう。( R θ − λ I ) x = 0 (R_\theta - \lambda I)\boldsymbol{x} = \boldsymbol{0} ( R θ − λ I ) x = 0 の第 1 行は
( cos θ − e i θ ) x 1 − sin θ x 2 = − i sin θ x 1 − sin θ x 2 = 0 (\cos\theta - e^{i\theta})x_1 - \sin\theta \, x_2 = -i\sin\theta \, x_1 - \sin\theta\, x_2 = 0 ( cos θ − e i θ ) x 1 − sin θ x 2 = − i sin θ x 1 − sin θ x 2 = 0 で、sin θ ≠ 0 \sin\theta \ne 0 sin θ = 0 で割って x 2 = − i x 1 x_2 = -i x_1 x 2 = − i x 1 を得ます。よって v = ( 1 , − i ) T \boldsymbol{v} = (1, -i)^{\mathsf{T}} v = ( 1 , − i ) T が固有ベクトルです。検算として第 2 行を確認すると
sin θ ⋅ 1 + ( cos θ − e i θ ) ( − i ) = sin θ + ( − i sin θ ) ( − i ) = sin θ + i 2 sin θ = 0 \sin\theta \cdot 1 + (\cos\theta - e^{i\theta})(-i) = \sin\theta + (-i\sin\theta)(-i) = \sin\theta + i^2 \sin\theta = 0 sin θ ⋅ 1 + ( cos θ − e i θ ) ( − i ) = sin θ + ( − i sin θ ) ( − i ) = sin θ + i 2 sin θ = 0 で、確かに満たされています。同様に λ = e − i θ \lambda = e^{-i\theta} λ = e − i θ には ( 1 , i ) T (1, i)^{\mathsf{T}} ( 1 , i ) T が属します。
この例が示すのは、固有値は行列だけでなく、係数体とセットで決まる ということです。Corollary 4.6 が C \mathbb{C} C でしか一般に主張できない理由も、ここにあります。
固有ベクトルは定数倍の自由度を持つので、個々のベクトルではなく集合として扱うほうが自然です。
Definition 5.1 (固有空間 )
A ∈ M n ( K ) A \in M_n(K) A ∈ M n ( K ) と λ ∈ K \lambda \in K λ ∈ K に対し、
W λ : = ker ( A − λ I ) = { x ∈ K n : A x = λ x } W_\lambda := \ker(A - \lambda I) = \{ \boldsymbol{x} \in K^n : A\boldsymbol{x} = \lambda\boldsymbol{x} \} W λ := ker ( A − λ I ) = { x ∈ K n : A x = λ x } を λ \lambda λ に対する固有空間 という。線形変換 T T T についても同様に W λ = ker ( T − λ i d V ) W_\lambda = \ker(T - \lambda\,\mathrm{id}_V) W λ = ker ( T − λ id V ) と定める。
W λ W_\lambda W λ は線形写像 A − λ I A - \lambda I A − λ I の核なので、K n K^n K n の部分空間です。念のため確認しておくと、x , y ∈ W λ \boldsymbol{x}, \boldsymbol{y} \in W_\lambda x , y ∈ W λ と c ∈ K c \in K c ∈ K に対し A ( x + c y ) = A x + c A y = λ x + c λ y = λ ( x + c y ) A(\boldsymbol{x} + c\boldsymbol{y}) = A\boldsymbol{x} + cA\boldsymbol{y} = \lambda\boldsymbol{x} + c\lambda\boldsymbol{y} = \lambda(\boldsymbol{x} + c\boldsymbol{y}) A ( x + c y ) = A x + c A y = λ x + c λ y = λ ( x + c y ) なので x + c y ∈ W λ \boldsymbol{x} + c\boldsymbol{y} \in W_\lambda x + c y ∈ W λ です。
W λ W_\lambda W λ は 0 \boldsymbol{0} 0 を含みますが、0 \boldsymbol{0} 0 は固有ベクトルではありません。整理すると、
λ が A の固有値 ⟺ W λ ≠ { 0 } ⟺ dim W λ ≥ 1 \lambda \text{ が } A \text{ の固有値} \iff W_\lambda \ne \{\boldsymbol{0}\} \iff \dim W_\lambda \ge 1 λ が A の固有値 ⟺ W λ = { 0 } ⟺ dim W λ ≥ 1 であり、このとき W λ W_\lambda W λ から 0 \boldsymbol{0} 0 を除いたものが「λ \lambda λ に属する固有ベクトル全体」です。0 \boldsymbol{0} 0 を仲間に入れておくと部分空間になって扱いやすい、というのが W λ W_\lambda W λ の定義に 0 \boldsymbol{0} 0 を含める理由です。
実用上は、W λ W_\lambda W λ を求めることは連立一次方程式 ( A − λ I ) x = 0 (A - \lambda I)\boldsymbol{x} = \boldsymbol{0} ( A − λ I ) x = 0 の解空間を求めることであり、掃き出し法で機械的に計算できます。次元は次元定理から
dim W λ = n − rank ( A − λ I ) \dim W_\lambda = n - \operatorname{rank}(A - \lambda I) dim W λ = n − rank ( A − λ I ) で求まります。
固有空間の最も重要な性質は、異なる固有値の固有空間が「重ならない」ことです。
Theorem 5.2 (相異なる固有値に属する固有ベクトルの一次独立性 )
A ∈ M n ( K ) A \in M_n(K) A ∈ M n ( K ) とし、λ 1 , … , λ k ∈ K \lambda_1, \ldots, \lambda_k \in K λ 1 , … , λ k ∈ K を互いに相異なる A A A の固有値、v i \boldsymbol{v}_i v i を λ i \lambda_i λ i に属する固有ベクトル(i = 1 , … , k i = 1,\ldots,k i = 1 , … , k )とする。このとき v 1 , … , v k \boldsymbol{v}_1, \ldots, \boldsymbol{v}_k v 1 , … , v k は一次独立である。
Proof(Theorem 5.2) k k k についての数学的帰納法で示します(帰納法の形式については 証明の技術 を参照してください)。
k = 1 k = 1 k = 1 の場合。 固有ベクトルの定義(Definition 3.1 )より v 1 ≠ 0 \boldsymbol{v}_1 \ne \boldsymbol{0} v 1 = 0 なので、c 1 v 1 = 0 c_1\boldsymbol{v}_1 = \boldsymbol{0} c 1 v 1 = 0 ならば c 1 = 0 c_1 = 0 c 1 = 0 です。よって一次独立です。
帰納段階。 k − 1 k - 1 k − 1 個の場合に主張が成り立つと仮定し、k k k 個の場合を示します。スカラー c 1 , … , c k ∈ K c_1,\ldots,c_k \in K c 1 , … , c k ∈ K が
c 1 v 1 + c 2 v 2 + ⋯ + c k v k = 0 c_1\boldsymbol{v}_1 + c_2\boldsymbol{v}_2 + \cdots + c_k\boldsymbol{v}_k = \boldsymbol{0} c 1 v 1 + c 2 v 2 + ⋯ + c k v k = 0 を満たすとします。この両辺に行列 A − λ k I A - \lambda_k I A − λ k I を左から掛けます。各項について、A v i = λ i v i A\boldsymbol{v}_i = \lambda_i \boldsymbol{v}_i A v i = λ i v i を使うと
( A − λ k I ) ( c i v i ) = c i ( A v i − λ k v i ) = c i ( λ i − λ k ) v i (A - \lambda_k I)(c_i \boldsymbol{v}_i) = c_i(A\boldsymbol{v}_i - \lambda_k \boldsymbol{v}_i) = c_i(\lambda_i - \lambda_k)\boldsymbol{v}_i ( A − λ k I ) ( c i v i ) = c i ( A v i − λ k v i ) = c i ( λ i − λ k ) v i です。i = k i = k i = k の項は c k ( λ k − λ k ) v k = 0 c_k(\lambda_k - \lambda_k)\boldsymbol{v}_k = \boldsymbol{0} c k ( λ k − λ k ) v k = 0 となって消えます。右辺は ( A − λ k I ) 0 = 0 (A - \lambda_k I)\boldsymbol{0} = \boldsymbol{0} ( A − λ k I ) 0 = 0 です。したがって
c 1 ( λ 1 − λ k ) v 1 + ⋯ + c k − 1 ( λ k − 1 − λ k ) v k − 1 = 0 c_1(\lambda_1 - \lambda_k)\boldsymbol{v}_1 + \cdots + c_{k-1}(\lambda_{k-1} - \lambda_k)\boldsymbol{v}_{k-1} = \boldsymbol{0} c 1 ( λ 1 − λ k ) v 1 + ⋯ + c k − 1 ( λ k − 1 − λ k ) v k − 1 = 0 を得ます。ここで v 1 , … , v k − 1 \boldsymbol{v}_1,\ldots,\boldsymbol{v}_{k-1} v 1 , … , v k − 1 は相異なる固有値 λ 1 , … , λ k − 1 \lambda_1,\ldots,\lambda_{k-1} λ 1 , … , λ k − 1 に属する固有ベクトルなので、帰納法の仮定によって一次独立です。よってすべての係数が 0 0 0 、すなわち
c i ( λ i − λ k ) = 0 ( i = 1 , … , k − 1 ) c_i(\lambda_i - \lambda_k) = 0 \qquad (i = 1, \ldots, k-1) c i ( λ i − λ k ) = 0 ( i = 1 , … , k − 1 ) です。仮定より λ i ≠ λ k \lambda_i \ne \lambda_k λ i = λ k (i < k i < k i < k )なので λ i − λ k ≠ 0 \lambda_i - \lambda_k \ne 0 λ i − λ k = 0 、体には零因子がないので c i = 0 c_i = 0 c i = 0 (i = 1 , … , k − 1 i = 1,\ldots,k-1 i = 1 , … , k − 1 )が従います。
これを最初の関係式に戻すと c k v k = 0 c_k \boldsymbol{v}_k = \boldsymbol{0} c k v k = 0 となり、v k ≠ 0 \boldsymbol{v}_k \ne \boldsymbol{0} v k = 0 だから c k = 0 c_k = 0 c k = 0 です。以上ですべての c i c_i c i が 0 0 0 となり、v 1 , … , v k \boldsymbol{v}_1,\ldots,\boldsymbol{v}_k v 1 , … , v k は一次独立です。
∎ Corollary 5.3 (固有空間の和は直和 )
λ 1 , … , λ k \lambda_1,\ldots,\lambda_k λ 1 , … , λ k を A ∈ M n ( K ) A \in M_n(K) A ∈ M n ( K ) の互いに相異なる固有値とすると、和 W λ 1 + ⋯ + W λ k W_{\lambda_1} + \cdots + W_{\lambda_k} W λ 1 + ⋯ + W λ k は直和である。すなわち、w i ∈ W λ i \boldsymbol{w}_i \in W_{\lambda_i} w i ∈ W λ i が w 1 + ⋯ + w k = 0 \boldsymbol{w}_1 + \cdots + \boldsymbol{w}_k = \boldsymbol{0} w 1 + ⋯ + w k = 0 を満たすならば、すべての i i i について w i = 0 \boldsymbol{w}_i = \boldsymbol{0} w i = 0 である。とくに
dim ( W λ 1 + ⋯ + W λ k ) = ∑ i = 1 k dim W λ i ≤ n . \dim(W_{\lambda_1} + \cdots + W_{\lambda_k}) = \sum_{i=1}^{k}\dim W_{\lambda_i} \le n . dim ( W λ 1 + ⋯ + W λ k ) = i = 1 ∑ k dim W λ i ≤ n . Proof(Corollary 5.3) w i ∈ W λ i \boldsymbol{w}_i \in W_{\lambda_i} w i ∈ W λ i が ∑ i = 1 k w i = 0 \sum_{i=1}^k \boldsymbol{w}_i = \boldsymbol{0} ∑ i = 1 k w i = 0 を満たすとし、S = { i : w i ≠ 0 } S = \{ i : \boldsymbol{w}_i \ne \boldsymbol{0}\} S = { i : w i = 0 } と置きます。S ≠ ∅ S \ne \emptyset S = ∅ と仮定して矛盾を導きます。
w i = 0 \boldsymbol{w}_i = \boldsymbol{0} w i = 0 となる項は和に寄与しないので、∑ i ∈ S w i = 0 \sum_{i \in S} \boldsymbol{w}_i = \boldsymbol{0} ∑ i ∈ S w i = 0 です。i ∈ S i \in S i ∈ S に対して w i \boldsymbol{w}_i w i は W λ i W_{\lambda_i} W λ i の非零元、すなわち λ i \lambda_i λ i に属する固有ベクトルです。{ λ i } i ∈ S \{\lambda_i\}_{i \in S} { λ i } i ∈ S は互いに相異なるので、Theorem 5.2 より { w i } i ∈ S \{\boldsymbol{w}_i\}_{i \in S} { w i } i ∈ S は一次独立です。しかし ∑ i ∈ S 1 ⋅ w i = 0 \sum_{i\in S} 1 \cdot \boldsymbol{w}_i = \boldsymbol{0} ∑ i ∈ S 1 ⋅ w i = 0 は、係数がすべて 1 ≠ 0 1 \ne 0 1 = 0 である非自明な一次関係です。これは一次独立性に矛盾します。
よって S = ∅ S = \emptyset S = ∅ 、つまりすべての w i = 0 \boldsymbol{w}_i = \boldsymbol{0} w i = 0 です。和が直和であれば次元は各項の次元の和になり、その和は K n K^n K n の部分空間の次元なので n n n 以下です。
∎ Example 4.7 の例では固有値 5 5 5 が特性多項式の二重根でした。一方、固有空間の次元も 2 2 2 になるとは限りません。重複の数え方が二通りあり、それらが一般には一致しないことが、この節の主題です。
Definition 6.1 (代数的重複度と幾何学的重複度 )
λ \lambda λ を A ∈ M n ( K ) A \in M_n(K) A ∈ M n ( K ) の固有値とする。
φ A ( t ) = ( t − λ ) m g ( t ) \varphi_A(t) = (t - \lambda)^m g(t) φ A ( t ) = ( t − λ ) m g ( t ) 、g ( λ ) ≠ 0 g(\lambda) \ne 0 g ( λ ) = 0 を満たす整数 m ≥ 1 m \ge 1 m ≥ 1 を λ \lambda λ の代数的重複度 といい、m a ( λ ) m_a(\lambda) m a ( λ ) と書く(K [ t ] K[t] K [ t ] における一意分解性から、このような m m m と g g g は一意に定まる)。
m g ( λ ) : = dim W λ m_g(\lambda) := \dim W_\lambda m g ( λ ) := dim W λ を λ \lambda λ の幾何学的重複度 という。
代数的重複度は「特性方程式の根として何重か」、幾何学的重複度は「その固有値の固有方向がどれだけ豊富か」を測っています。両者は無関係ではなく、次の一方向の不等式で結ばれています。
Theorem 6.2 (幾何学的重複度は代数的重複度以下 )
λ \lambda λ を A ∈ M n ( K ) A \in M_n(K) A ∈ M n ( K ) の固有値とすると
1 ≤ m g ( λ ) ≤ m a ( λ ) ≤ n 1 \le m_g(\lambda) \le m_a(\lambda) \le n 1 ≤ m g ( λ ) ≤ m a ( λ ) ≤ n が成り立つ。
Proof(Theorem 6.2) 左端の不等式。 λ \lambda λ が固有値なので、Definition 3.1 より非零の固有ベクトルが存在し、W λ ≠ { 0 } W_\lambda \ne \{\boldsymbol{0}\} W λ = { 0 } 、つまり m g ( λ ) = dim W λ ≥ 1 m_g(\lambda) = \dim W_\lambda \ge 1 m g ( λ ) = dim W λ ≥ 1 です。
右端の不等式。 φ A \varphi_A φ A は n n n 次(Proposition 4.3 )で、( t − λ ) m a ( λ ) (t-\lambda)^{m_a(\lambda)} ( t − λ ) m a ( λ ) がその因子なので m a ( λ ) ≤ n m_a(\lambda) \le n m a ( λ ) ≤ n です。
中央の不等式。 d = m g ( λ ) = dim W λ d = m_g(\lambda) = \dim W_\lambda d = m g ( λ ) = dim W λ と置きます。W λ W_\lambda W λ の基底 p 1 , … , p d \boldsymbol{p}_1,\ldots,\boldsymbol{p}_d p 1 , … , p d を取り、これを K n K^n K n の基底
p 1 , … , p d , q d + 1 , … , q n \boldsymbol{p}_1, \ldots, \boldsymbol{p}_d, \boldsymbol{q}_{d+1}, \ldots, \boldsymbol{q}_n p 1 , … , p d , q d + 1 , … , q n に延長します(一次独立な組は基底に延長できる、という基底の延長定理を使いました。ベクトル空間と線形変換 の 有限次元空間の基本性質(Proposition 5.7)[Vector Spaces and Linear Maps] を参照)。これらを列に並べた行列を P = ( p 1 ⋯ p d q d + 1 ⋯ q n ) P = (\boldsymbol{p}_1 \cdots \boldsymbol{p}_d \; \boldsymbol{q}_{d+1} \cdots \boldsymbol{q}_n) P = ( p 1 ⋯ p d q d + 1 ⋯ q n ) とすると、列が基底をなすので P P P は正則です。
B = P − 1 A P B = P^{-1}AP B = P − 1 A P の形を調べます。B B B の第 j j j 列は P − 1 A p j P^{-1}A\boldsymbol{p}_j P − 1 A p j (j ≤ d j \le d j ≤ d )または P − 1 A q j P^{-1}A\boldsymbol{q}_j P − 1 A q j (j > d j > d j > d )です。j ≤ d j \le d j ≤ d のときは p j ∈ W λ \boldsymbol{p}_j \in W_\lambda p j ∈ W λ より A p j = λ p j A\boldsymbol{p}_j = \lambda\boldsymbol{p}_j A p j = λ p j なので
P − 1 A p j = λ P − 1 p j = λ e j P^{-1}A\boldsymbol{p}_j = \lambda P^{-1}\boldsymbol{p}_j = \lambda \boldsymbol{e}_j P − 1 A p j = λ P − 1 p j = λ e j です(P e j = p j P\boldsymbol{e}_j = \boldsymbol{p}_j P e j = p j すなわち P − 1 p j = e j P^{-1}\boldsymbol{p}_j = \boldsymbol{e}_j P − 1 p j = e j を使いました)。つまり B B B の左から d d d 本の列は λ e 1 , … , λ e d \lambda\boldsymbol{e}_1, \ldots, \lambda\boldsymbol{e}_d λ e 1 , … , λ e d であり、B B B はブロック上三角の形
B = ( λ I d C O D ) B = \begin{pmatrix} \lambda I_d & C \\ O & D \end{pmatrix} B = ( λ I d O C D ) をしています(C C C は d × ( n − d ) d \times (n-d) d × ( n − d ) 、D D D は ( n − d ) (n-d) ( n − d ) 次正方行列、左下の ( n − d ) × d (n-d)\times d ( n − d ) × d ブロックは零行列)。
すると t I n − B = ( ( t − λ ) I d − C O t I n − d − D ) tI_n - B = \begin{pmatrix} (t-\lambda)I_d & -C \\ O & tI_{n-d} - D\end{pmatrix} t I n − B = ( ( t − λ ) I d O − C t I n − d − D ) もブロック上三角なので、準備 5 より
φ B ( t ) = det ( ( t − λ ) I d ) ⋅ det ( t I n − d − D ) = ( t − λ ) d φ D ( t ) \varphi_B(t) = \det\bigl((t-\lambda)I_d\bigr)\cdot\det(tI_{n-d} - D) = (t-\lambda)^d\,\varphi_D(t) φ B ( t ) = det ( ( t − λ ) I d ) ⋅ det ( t I n − d − D ) = ( t − λ ) d φ D ( t ) です。A A A と B B B は相似なので Theorem 4.4 の 1 より φ A ( t ) = φ B ( t ) = ( t − λ ) d φ D ( t ) \varphi_A(t) = \varphi_B(t) = (t-\lambda)^d\varphi_D(t) φ A ( t ) = φ B ( t ) = ( t − λ ) d φ D ( t ) となり、φ A \varphi_A φ A は ( t − λ ) d (t-\lambda)^d ( t − λ ) d で割り切れます。代数的重複度は ( t − λ ) (t-\lambda) ( t − λ ) で割り切れる最大回数(Definition 6.1 )ですから、m a ( λ ) ≥ d = m g ( λ ) m_a(\lambda) \ge d = m_g(\lambda) m a ( λ ) ≥ d = m g ( λ ) を得ます。
∎ Example 6.3 (せん断行列 — 不等号が真になる最小の例 )
A = ( 1 1 0 1 ) A = \begin{pmatrix} 1 & 1 \\ 0 & 1 \end{pmatrix} A = ( 1 0 1 1 ) を考えます。これは x x x 軸を固定し、高さ y y y の点を横に y y y だけずらす変換(せん断)です。A A A は上三角なので Example 4.7 より
φ A ( t ) = ( t − 1 ) 2 \varphi_A(t) = (t-1)^2 φ A ( t ) = ( t − 1 ) 2 で、固有値は λ = 1 \lambda = 1 λ = 1 のみ、m a ( 1 ) = 2 m_a(1) = 2 m a ( 1 ) = 2 です。
固有空間を求めます。
A − I = ( 0 1 0 0 ) A - I = \begin{pmatrix} 0 & 1 \\ 0 & 0 \end{pmatrix} A − I = ( 0 0 1 0 ) なので ( A − I ) x = 0 (A-I)\boldsymbol{x} = \boldsymbol{0} ( A − I ) x = 0 は x 2 = 0 x_2 = 0 x 2 = 0 という 1 本の条件になり、
W 1 = { ( c , 0 ) T : c ∈ K } = span { e 1 } , m g ( 1 ) = 1. W_1 = \{ (c, 0)^{\mathsf{T}} : c \in K \} = \operatorname{span}\{\boldsymbol{e}_1\}, \qquad m_g(1) = 1 . W 1 = {( c , 0 ) T : c ∈ K } = span { e 1 } , m g ( 1 ) = 1. よって m g ( 1 ) = 1 < 2 = m a ( 1 ) m_g(1) = 1 < 2 = m_a(1) m g ( 1 ) = 1 < 2 = m a ( 1 ) で、Theorem 6.2 の不等号は真の不等号になりえます。dim W 1 = 2 − rank ( A − I ) = 2 − 1 = 1 \dim W_1 = 2 - \operatorname{rank}(A - I) = 2 - 1 = 1 dim W 1 = 2 − rank ( A − I ) = 2 − 1 = 1 と、次元定理から求めても同じです。
幾何学的にも納得できます。せん断で向きが変わらないのは x x x 軸方向だけで、それ以外のどの方向も横に押されて傾きが変わります。固有方向が 1 本しかないので、固有ベクトルからなる基底は作れません。つまり A A A は対角化できません。
Theorem 6.4 (対角化可能性の判定 )
A ∈ M n ( K ) A \in M_n(K) A ∈ M n ( K ) とし、λ 1 , … , λ k ∈ K \lambda_1,\ldots,\lambda_k \in K λ 1 , … , λ k ∈ K を A A A の互いに相異なる固有値のすべてとする。次の四つは同値である。
A A A は K K K 上対角化可能である。すなわち、正則行列 P ∈ M n ( K ) P \in M_n(K) P ∈ M n ( K ) が存在して P − 1 A P P^{-1}AP P − 1 A P が対角行列となる。
K n K^n K n は A A A の固有ベクトルからなる基底を持つ。
φ A ( t ) \varphi_A(t) φ A ( t ) は K K K 上で一次式の積に分解し、かつすべての i i i について m g ( λ i ) = m a ( λ i ) m_g(\lambda_i) = m_a(\lambda_i) m g ( λ i ) = m a ( λ i ) が成り立つ。
∑ i = 1 k m g ( λ i ) = n \displaystyle\sum_{i=1}^{k} m_g(\lambda_i) = n i = 1 ∑ k m g ( λ i ) = n 。
Proof(Theorem 6.4) 1 と 2 の同値性。 P P P の第 j j j 列を p j \boldsymbol{p}_j p j とし、D = diag ( d 1 , … , d n ) D = \operatorname{diag}(d_1,\ldots,d_n) D = diag ( d 1 , … , d n ) と置きます。P − 1 A P = D P^{-1}AP = D P − 1 A P = D は A P = P D AP = PD A P = P D と同値であり、両辺の第 j j j 列を比べると A p j = d j p j A\boldsymbol{p}_j = d_j \boldsymbol{p}_j A p j = d j p j となります。P P P が正則であることと、その列 p 1 , … , p n \boldsymbol{p}_1,\ldots,\boldsymbol{p}_n p 1 , … , p n が K n K^n K n の基底をなすことは同値です。基底の元は 0 \boldsymbol{0} 0 ではないので、各 p j \boldsymbol{p}_j p j は固有値 d j d_j d j に属する固有ベクトルです。逆に、固有ベクトルからなる基底 p 1 , … , p n \boldsymbol{p}_1,\ldots,\boldsymbol{p}_n p 1 , … , p n (A p j = d j p j A\boldsymbol{p}_j = d_j\boldsymbol{p}_j A p j = d j p j )があれば、それを列に並べた P P P は正則で A P = P D AP = PD A P = P D 、すなわち P − 1 A P = D P^{-1}AP = D P − 1 A P = D です。
2 から 4。 固有ベクトルからなる基底 p 1 , … , p n \boldsymbol{p}_1,\ldots,\boldsymbol{p}_n p 1 , … , p n を取ります。各 p j \boldsymbol{p}_j p j はある固有値に属するので、ある i i i について p j ∈ W λ i \boldsymbol{p}_j \in W_{\lambda_i} p j ∈ W λ i です(λ 1 , … , λ k \lambda_1,\ldots,\lambda_k λ 1 , … , λ k は固有値のすべてなので、この i i i は必ず存在します)。p j ∈ W λ i \boldsymbol{p}_j \in W_{\lambda_i} p j ∈ W λ i となる j j j の個数を n i n_i n i とすると ∑ i = 1 k n i = n \sum_{i=1}^k n_i = n ∑ i = 1 k n i = n です。W λ i W_{\lambda_i} W λ i に属する n i n_i n i 本のベクトルは、基底の一部なので一次独立です。したがって n i ≤ dim W λ i = m g ( λ i ) n_i \le \dim W_{\lambda_i} = m_g(\lambda_i) n i ≤ dim W λ i = m g ( λ i ) であり、n = ∑ i n i ≤ ∑ i m g ( λ i ) n = \sum_i n_i \le \sum_i m_g(\lambda_i) n = ∑ i n i ≤ ∑ i m g ( λ i ) を得ます。逆向きの不等式は Corollary 5.3 の ∑ i dim W λ i ≤ n \sum_i \dim W_{\lambda_i} \le n ∑ i dim W λ i ≤ n です。よって等号が成り立ちます。
4 から 2。 各 W λ i W_{\lambda_i} W λ i の基底を取り、それらをすべて並べた組を考えます。本数は ∑ i m g ( λ i ) = n \sum_i m_g(\lambda_i) = n ∑ i m g ( λ i ) = n です。この組が一次独立であることを見ます。一次関係を、各 W λ i W_{\lambda_i} W λ i に属する部分ごとにまとめると w 1 + ⋯ + w k = 0 \boldsymbol{w}_1 + \cdots + \boldsymbol{w}_k = \boldsymbol{0} w 1 + ⋯ + w k = 0 (w i ∈ W λ i \boldsymbol{w}_i \in W_{\lambda_i} w i ∈ W λ i )の形になります。Corollary 5.3 よりすべての w i = 0 \boldsymbol{w}_i = \boldsymbol{0} w i = 0 で、さらに w i \boldsymbol{w}_i w i は W λ i W_{\lambda_i} W λ i の基底の一次結合なので、その係数はすべて 0 0 0 です。よって一次独立で、本数が n = dim K n n = \dim K^n n = dim K n なので基底です。各元は非零の固有ベクトルなので、2 が成り立ちます。
3 と 4 の同値性。 λ 1 , … , λ k \lambda_1,\ldots,\lambda_k λ 1 , … , λ k は相異なるので、( t − λ 1 ) m a ( λ 1 ) , … , ( t − λ k ) m a ( λ k ) (t-\lambda_1)^{m_a(\lambda_1)},\ldots,(t-\lambda_k)^{m_a(\lambda_k)} ( t − λ 1 ) m a ( λ 1 ) , … , ( t − λ k ) m a ( λ k ) は K [ t ] K[t] K [ t ] において互いに素です。各々が φ A \varphi_A φ A を割り切る(Definition 6.1 )ので、その積も φ A \varphi_A φ A を割り切ります。次数を比べて
∑ i = 1 k m a ( λ i ) ≤ deg φ A = n \sum_{i=1}^{k} m_a(\lambda_i) \le \deg \varphi_A = n i = 1 ∑ k m a ( λ i ) ≤ deg φ A = n を得ます。しかも等号が成り立つことと、商が定数(モニック性より 1 1 1 )であること、すなわち φ A ( t ) = ∏ i = 1 k ( t − λ i ) m a ( λ i ) \varphi_A(t) = \prod_{i=1}^k (t-\lambda_i)^{m_a(\lambda_i)} φ A ( t ) = ∏ i = 1 k ( t − λ i ) m a ( λ i ) が K K K 上で一次式の積に分解することは同値です。
さて Theorem 6.2 より各 i i i で m g ( λ i ) ≤ m a ( λ i ) m_g(\lambda_i) \le m_a(\lambda_i) m g ( λ i ) ≤ m a ( λ i ) なので
∑ i = 1 k m g ( λ i ) ≤ ∑ i = 1 k m a ( λ i ) ≤ n \sum_{i=1}^{k} m_g(\lambda_i) \le \sum_{i=1}^{k} m_a(\lambda_i) \le n i = 1 ∑ k m g ( λ i ) ≤ i = 1 ∑ k m a ( λ i ) ≤ n です。条件 4 はこの両端が等しいことなので、途中の不等号がすべて等号であること、つまり「各 i i i で m g ( λ i ) = m a ( λ i ) m_g(\lambda_i) = m_a(\lambda_i) m g ( λ i ) = m a ( λ i ) 」かつ「∑ i m a ( λ i ) = n \sum_i m_a(\lambda_i) = n ∑ i m a ( λ i ) = n 、すなわち φ A \varphi_A φ A が一次式の積に分解する」ことと同値です。これはちょうど条件 3 です。
∎ flowchart TD
A["行列 A が与えられる"] --> B["特性多項式 det(tI - A) を計算"]
B --> C["特性方程式の根 = 固有値 λ1, ..., λk"]
C --> D["根の重複度 = 代数的重複度 m_a"]
C --> E["各 λi について (A - λi I)x = 0 を掃き出し法で解く"]
E --> F["解空間 = 固有空間 W_λi"]
F --> G["dim W_λi = 幾何学的重複度 m_g ≤ m_a"]
D --> H{"m_g の総和 = n か"}
G --> H
H -- "はい" --> I["固有ベクトルの基底が取れる:対角化可能"]
H -- "いいえ" --> J["対角化不可能:ジョルダン標準形へ"] 固有値・固有空間・重複度を求める手順の全体像 Example 7.1 (フィボナッチ数列とビネの公式 )
フィボナッチ数列 F 0 = 0 F_0 = 0 F 0 = 0 、F 1 = 1 F_1 = 1 F 1 = 1 、F k + 1 = F k + F k − 1 F_{k+1} = F_k + F_{k-1} F k + 1 = F k + F k − 1 を考えます。この漸化式は
( F k + 1 F k ) = ( 1 1 1 0 ) ( F k F k − 1 ) , A : = ( 1 1 1 0 ) \begin{pmatrix} F_{k+1} \\ F_k \end{pmatrix}
= \begin{pmatrix} 1 & 1 \\ 1 & 0\end{pmatrix} \begin{pmatrix} F_k \\ F_{k-1}\end{pmatrix}, \qquad A := \begin{pmatrix} 1 & 1 \\ 1 & 0\end{pmatrix} ( F k + 1 F k ) = ( 1 1 1 0 ) ( F k F k − 1 ) , A := ( 1 1 1 0 ) とベクトルの形に書けます。したがって ( F k + 1 F k ) = A k ( F 1 F 0 ) = A k ( 1 0 ) \begin{pmatrix} F_{k+1} \\ F_k\end{pmatrix} = A^k \begin{pmatrix} F_1 \\ F_0 \end{pmatrix} = A^k\begin{pmatrix}1\\0\end{pmatrix} ( F k + 1 F k ) = A k ( F 1 F 0 ) = A k ( 1 0 ) です。A k A^k A k を求めるのに固有値を使います。
φ A ( t ) = det ( t − 1 − 1 − 1 t ) = t ( t − 1 ) − 1 = t 2 − t − 1 \varphi_A(t) = \det\begin{pmatrix} t-1 & -1 \\ -1 & t\end{pmatrix} = t(t-1) - 1 = t^2 - t - 1 φ A ( t ) = det ( t − 1 − 1 − 1 t ) = t ( t − 1 ) − 1 = t 2 − t − 1 なので、固有値は
ϕ = 1 + 5 2 , ψ = 1 − 5 2 \phi = \frac{1+\sqrt5}{2}, \qquad \psi = \frac{1-\sqrt5}{2} ϕ = 2 1 + 5 , ψ = 2 1 − 5 です(黄金比とその共役)。相異なる 2 個の固有値があるので、Theorem 5.2 により固有ベクトルは一次独立で、Theorem 6.4 の条件 4 が満たされます(m g m_g m g の総和が 1 + 1 = 2 = n 1 + 1 = 2 = n 1 + 1 = 2 = n )。
固有ベクトルを求めます。固有値 λ \lambda λ (ϕ \phi ϕ でも ψ \psi ψ でもよい)に対し ( A − λ I ) x = 0 (A - \lambda I)\boldsymbol{x} = \boldsymbol{0} ( A − λ I ) x = 0 の第 2 行は x 1 − λ x 2 = 0 x_1 - \lambda x_2 = 0 x 1 − λ x 2 = 0 なので、v λ = ( λ , 1 ) T \boldsymbol{v}_\lambda = (\lambda, 1)^{\mathsf{T}} v λ = ( λ , 1 ) T が解です。第 1 行が満たされることも確認しておきます。λ 2 = λ + 1 \lambda^2 = \lambda + 1 λ 2 = λ + 1 (λ \lambda λ は t 2 − t − 1 t^2 - t - 1 t 2 − t − 1 の根)を使うと
( 1 − λ ) λ + 1 = λ − λ 2 + 1 = λ − ( λ + 1 ) + 1 = 0 (1-\lambda)\lambda + 1 = \lambda - \lambda^2 + 1 = \lambda - (\lambda+1) + 1 = 0 ( 1 − λ ) λ + 1 = λ − λ 2 + 1 = λ − ( λ + 1 ) + 1 = 0 で、確かに満たされています。
初期ベクトルを固有ベクトルで展開します。( 1 , 0 ) T = a v ϕ + b v ψ (1,0)^{\mathsf{T}} = a\boldsymbol{v}_\phi + b\boldsymbol{v}_\psi ( 1 , 0 ) T = a v ϕ + b v ψ と置くと、第 2 成分から a + b = 0 a + b = 0 a + b = 0 、第 1 成分から a ϕ + b ψ = 1 a\phi + b\psi = 1 a ϕ + b ψ = 1 です。b = − a b = -a b = − a を代入して a ( ϕ − ψ ) = 1 a(\phi - \psi) = 1 a ( ϕ − ψ ) = 1 を得ます。ϕ − ψ = 5 \phi - \psi = \sqrt5 ϕ − ψ = 5 なので a = 1 / 5 a = 1/\sqrt5 a = 1/ 5 、b = − 1 / 5 b = -1/\sqrt5 b = − 1/ 5 です。
固有ベクトルには A k v λ = λ k v λ A^k\boldsymbol{v}_\lambda = \lambda^k \boldsymbol{v}_\lambda A k v λ = λ k v λ が成り立つ(A v λ = λ v λ A\boldsymbol{v}_\lambda = \lambda\boldsymbol{v}_\lambda A v λ = λ v λ を k k k 回使う)ので、
( F k + 1 F k ) = A k ( a v ϕ + b v ψ ) = a ϕ k ( ϕ 1 ) + b ψ k ( ψ 1 ) \begin{pmatrix} F_{k+1} \\ F_k \end{pmatrix} = A^k\bigl(a\boldsymbol{v}_\phi + b\boldsymbol{v}_\psi\bigr) = a\phi^k \begin{pmatrix}\phi\\1\end{pmatrix} + b\psi^k\begin{pmatrix}\psi\\1\end{pmatrix} ( F k + 1 F k ) = A k ( a v ϕ + b v ψ ) = a ϕ k ( ϕ 1 ) + b ψ k ( ψ 1 ) です。第 2 成分を読むと
F k = a ϕ k + b ψ k = 1 5 ( ( 1 + 5 2 ) k − ( 1 − 5 2 ) k ) F_k = a\phi^k + b\psi^k = \frac{1}{\sqrt5}\left( \left(\frac{1+\sqrt5}{2}\right)^{k} - \left(\frac{1-\sqrt5}{2}\right)^{k} \right) F k = a ϕ k + b ψ k = 5 1 ( 2 1 + 5 ) k − ( 2 1 − 5 ) k が得られます。これがビネの公式です。k = 5 k = 5 k = 5 で検算すると ϕ 5 ≈ 11.0902 \phi^5 \approx 11.0902 ϕ 5 ≈ 11.0902 、ψ 5 ≈ − 0.0902 \psi^5 \approx -0.0902 ψ 5 ≈ − 0.0902 なので F 5 ≈ ( 11.0902 + 0.0902 ) / 2.2360 = 5 F_5 \approx (11.0902 + 0.0902)/2.2360 = 5 F 5 ≈ ( 11.0902 + 0.0902 ) /2.2360 = 5 で、確かに F 5 = 5 F_5 = 5 F 5 = 5 です。
∣ ψ ∣ ≈ 0.618 < 1 |\psi| \approx 0.618 < 1 ∣ ψ ∣ ≈ 0.618 < 1 なので第 2 項は k → ∞ k \to \infty k → ∞ で 0 0 0 に収束します。したがって F k F_k F k は ϕ k / 5 \phi^k/\sqrt5 ϕ k / 5 に漸近し、比 F k + 1 / F k F_{k+1}/F_k F k + 1 / F k は ϕ \phi ϕ に収束します。べき乗の長期挙動は絶対値最大の固有値が支配する という一般原理の、最も簡単な現れ方です。
Example 7.2 (主成分分析 — データが最も広がっている方向 )
N N N 個の p p p 次元データ x 1 , … , x N ∈ R p \boldsymbol{x}_1,\ldots,\boldsymbol{x}_N \in \mathbb{R}^p x 1 , … , x N ∈ R p が、平均 0 \boldsymbol{0} 0 になるようあらかじめ中心化されているとします。これらを行に並べた N × p N \times p N × p 行列を X X X とすると、共分散行列は
Σ = 1 N X T X \Sigma = \frac{1}{N} X^{\mathsf{T}} X Σ = N 1 X T X です。単位ベクトル u \boldsymbol{u} u の方向にデータを射影したときの分散は
1 N ∑ i = 1 N ⟨ x i , u ⟩ 2 = 1 N u T X T X u = u T Σ u \frac{1}{N}\sum_{i=1}^{N} \langle \boldsymbol{x}_i, \boldsymbol{u}\rangle^2 = \frac{1}{N}\,\boldsymbol{u}^{\mathsf{T}}X^{\mathsf{T}}X\boldsymbol{u} = \boldsymbol{u}^{\mathsf{T}}\Sigma\boldsymbol{u} N 1 i = 1 ∑ N ⟨ x i , u ⟩ 2 = N 1 u T X T X u = u T Σ u と書けます。主成分分析とは、この値を最大にする方向 u \boldsymbol{u} u を探すことです。答えは「Σ \Sigma Σ の最大固有値に属する固有ベクトル」であり、そのときの分散の値が最大固有値そのものです(レイリー商の最大・最小(Theorem 7.1)[スペクトル定理] がこれを与えます。スペクトル定理 と 内積空間とグラム・シュミット直交化 を参照してください)。
具体的に計算します。p = 2 p = 2 p = 2 、N = 4 N = 4 N = 4 で
x 1 = ( 2 1 ) , x 2 = ( 1 2 ) , x 3 = ( − 1 − 2 ) , x 4 = ( − 2 − 1 ) \boldsymbol{x}_1 = \begin{pmatrix}2\\1\end{pmatrix},\;
\boldsymbol{x}_2 = \begin{pmatrix}1\\2\end{pmatrix},\;
\boldsymbol{x}_3 = \begin{pmatrix}-1\\-2\end{pmatrix},\;
\boldsymbol{x}_4 = \begin{pmatrix}-2\\-1\end{pmatrix} x 1 = ( 2 1 ) , x 2 = ( 1 2 ) , x 3 = ( − 1 − 2 ) , x 4 = ( − 2 − 1 ) とします。和が 0 \boldsymbol{0} 0 なので中心化済みです。成分ごとに計算すると
∑ i x i 1 2 = 4 + 1 + 1 + 4 = 10 , ∑ i x i 1 x i 2 = 2 + 2 + 2 + 2 = 8 , ∑ i x i 2 2 = 1 + 4 + 4 + 1 = 10 \sum_i x_{i1}^2 = 4+1+1+4 = 10, \quad \sum_i x_{i1}x_{i2} = 2+2+2+2 = 8, \quad \sum_i x_{i2}^2 = 1+4+4+1 = 10 i ∑ x i 1 2 = 4 + 1 + 1 + 4 = 10 , i ∑ x i 1 x i 2 = 2 + 2 + 2 + 2 = 8 , i ∑ x i 2 2 = 1 + 4 + 4 + 1 = 10 なので
Σ = 1 4 ( 10 8 8 10 ) = ( 2.5 2 2 2.5 ) \Sigma = \frac{1}{4}\begin{pmatrix} 10 & 8 \\ 8 & 10\end{pmatrix} = \begin{pmatrix} 2.5 & 2 \\ 2 & 2.5 \end{pmatrix} Σ = 4 1 ( 10 8 8 10 ) = ( 2.5 2 2 2.5 ) です。特性多項式は
φ Σ ( t ) = ( t − 2.5 ) 2 − 4 = ( t − 2.5 − 2 ) ( t − 2.5 + 2 ) = ( t − 4.5 ) ( t − 0.5 ) \varphi_\Sigma(t) = (t - 2.5)^2 - 4 = (t - 2.5 - 2)(t - 2.5 + 2) = (t - 4.5)(t - 0.5) φ Σ ( t ) = ( t − 2.5 ) 2 − 4 = ( t − 2.5 − 2 ) ( t − 2.5 + 2 ) = ( t − 4.5 ) ( t − 0.5 ) で、固有値は 4.5 4.5 4.5 と 0.5 0.5 0.5 です。tr Σ = 5 = 4.5 + 0.5 \operatorname{tr}\Sigma = 5 = 4.5 + 0.5 tr Σ = 5 = 4.5 + 0.5 、det Σ = 6.25 − 4 = 2.25 = 4.5 × 0.5 \det\Sigma = 6.25 - 4 = 2.25 = 4.5 \times 0.5 det Σ = 6.25 − 4 = 2.25 = 4.5 × 0.5 と、Corollary 4.5 による検算も合っています。
固有ベクトルは Example 3.4 と同じ計算で、4.5 4.5 4.5 に対して ( 1 , 1 ) T (1,1)^{\mathsf{T}} ( 1 , 1 ) T 、0.5 0.5 0.5 に対して ( 1 , − 1 ) T (1,-1)^{\mathsf{T}} ( 1 , − 1 ) T です。長さ 1 1 1 に正規化すると u 1 = ( 1 , 1 ) T / 2 \boldsymbol{u}_1 = (1,1)^{\mathsf{T}}/\sqrt2 u 1 = ( 1 , 1 ) T / 2 、u 2 = ( 1 , − 1 ) T / 2 \boldsymbol{u}_2 = (1,-1)^{\mathsf{T}}/\sqrt2 u 2 = ( 1 , − 1 ) T / 2 となります。
読み取れることは次のとおりです。データは 45 45 45 度方向(u 1 \boldsymbol{u}_1 u 1 )に最も広がっており、その方向の分散が 4.5 4.5 4.5 、直交方向の分散が 0.5 0.5 0.5 です。全分散は tr Σ = 5 \operatorname{tr}\Sigma = 5 tr Σ = 5 なので、第 1 主成分だけで 4.5 / 5 = 90 % 4.5/5 = 90\% 4.5/5 = 90% の分散を説明できます。2 次元のデータを 1 次元に落としても情報の 90 % 90\% 90% が残る、というのがこの計算の意味です。
NumPy で確かめると次のようになります。
X = np. array ( [[ 2.0 , 1.0 ] , [ 1.0 , 2.0 ] , [ - 1.0 , - 2.0 ] , [ - 2.0 , - 1.0 ]] )
Sigma = X.T @ X / X.shape[ 0 ]
w, V = np.linalg. eigh ( Sigma ) # 実対称行列用。固有値は昇順に返る
print ( V [ :, - 1 ]) # 最大固有値の固有ベクトル(符号は不定)
print ( w [ - 1 ] / w. sum ()) # 0.9
np.linalg.eigh は実対称行列専用の関数で、固有値を昇順に、対応する固有ベクトルを列に持つ直交行列を返します。固有ベクトルの符号(および同じ固有値が重複する場合は固有空間内での取り方)は一意でないことに注意してください。Remark 3.2 で述べた「決まるのは方向であってベクトルではない」という事情が、そのまま数値計算にも現れています。
Exercise 8.1 標準
A = ( 3 1 1 1 3 1 1 1 3 ) A = \begin{pmatrix} 3 & 1 & 1 \\ 1 & 3 & 1 \\ 1 & 1 & 3 \end{pmatrix} A = 3 1 1 1 3 1 1 1 3 のすべての固有値、それぞれの固有空間、代数的重複度と幾何学的重複度を求めよ。また A A A が対角化可能かどうか判定せよ。
Solution 特性多項式を計算します。
φ A ( t ) = det ( t − 3 − 1 − 1 − 1 t − 3 − 1 − 1 − 1 t − 3 ) \varphi_A(t) = \det \begin{pmatrix} t-3 & -1 & -1 \\ -1 & t-3 & -1 \\ -1 & -1 & t-3\end{pmatrix} φ A ( t ) = det t − 3 − 1 − 1 − 1 t − 3 − 1 − 1 − 1 t − 3 第 2 行と第 3 行を第 1 行に加えます(行列式は変わりません)。第 1 行の各成分は ( t − 3 ) − 1 − 1 = t − 5 (t-3) - 1 - 1 = t-5 ( t − 3 ) − 1 − 1 = t − 5 になるので、第 1 行から t − 5 t-5 t − 5 をくくり出して
φ A ( t ) = ( t − 5 ) det ( 1 1 1 − 1 t − 3 − 1 − 1 − 1 t − 3 ) \varphi_A(t) = (t-5)\det\begin{pmatrix} 1 & 1 & 1 \\ -1 & t-3 & -1 \\ -1 & -1 & t-3 \end{pmatrix} φ A ( t ) = ( t − 5 ) det 1 − 1 − 1 1 t − 3 − 1 1 − 1 t − 3 を得ます。次に第 1 行を第 2 行と第 3 行にそれぞれ加えると
φ A ( t ) = ( t − 5 ) det ( 1 1 1 0 t − 2 0 0 0 t − 2 ) = ( t − 5 ) ( t − 2 ) 2 \varphi_A(t) = (t-5)\det\begin{pmatrix} 1 & 1 & 1 \\ 0 & t-2 & 0 \\ 0 & 0 & t-2 \end{pmatrix} = (t-5)(t-2)^2 φ A ( t ) = ( t − 5 ) det 1 0 0 1 t − 2 0 1 0 t − 2 = ( t − 5 ) ( t − 2 ) 2 です(最後は上三角行列の行列式)。よって固有値は λ = 5 \lambda = 5 λ = 5 (m a = 1 m_a = 1 m a = 1 )と λ = 2 \lambda = 2 λ = 2 (m a = 2 m_a = 2 m a = 2 )です。
λ = 5 \lambda = 5 λ = 5 のとき、A − 5 I = ( − 2 1 1 1 − 2 1 1 1 − 2 ) A - 5I = \begin{pmatrix} -2 & 1 & 1 \\ 1 & -2 & 1 \\ 1 & 1 & -2\end{pmatrix} A − 5 I = − 2 1 1 1 − 2 1 1 1 − 2 です。第 1 行と第 2 行を足すと ( − 1 , − 1 , 2 ) (-1,-1,2) ( − 1 , − 1 , 2 ) 、これに第 3 行を足すと 0 \boldsymbol{0} 0 になるので、3 本の行の和は 0 \boldsymbol{0} 0 、すなわち rank ≤ 2 \operatorname{rank} \le 2 rank ≤ 2 です。第 1 行と第 2 行は互いに定数倍でないので rank = 2 \operatorname{rank} = 2 rank = 2 、したがって dim W 5 = 3 − 2 = 1 \dim W_5 = 3 - 2 = 1 dim W 5 = 3 − 2 = 1 です。方程式を解くと、第 1 式と第 2 式の差から 3 x 1 − 3 x 2 = 0 3x_1 - 3x_2 = 0 3 x 1 − 3 x 2 = 0 すなわち x 1 = x 2 x_1 = x_2 x 1 = x 2 、同様に x 2 = x 3 x_2 = x_3 x 2 = x 3 なので
W 5 = span { ( 1 , 1 , 1 ) T } , m g ( 5 ) = 1. W_5 = \operatorname{span}\{(1,1,1)^{\mathsf{T}}\}, \qquad m_g(5) = 1 . W 5 = span {( 1 , 1 , 1 ) T } , m g ( 5 ) = 1. 検算すると A ( 1 , 1 , 1 ) T = ( 5 , 5 , 5 ) T = 5 ( 1 , 1 , 1 ) T A(1,1,1)^{\mathsf{T}} = (5,5,5)^{\mathsf{T}} = 5(1,1,1)^{\mathsf{T}} A ( 1 , 1 , 1 ) T = ( 5 , 5 , 5 ) T = 5 ( 1 , 1 , 1 ) T です。
λ = 2 \lambda = 2 λ = 2 のとき、A − 2 I = ( 1 1 1 1 1 1 1 1 1 ) A - 2I = \begin{pmatrix} 1&1&1\\1&1&1\\1&1&1\end{pmatrix} A − 2 I = 1 1 1 1 1 1 1 1 1 で、これは階数 1 1 1 です。方程式は x 1 + x 2 + x 3 = 0 x_1 + x_2 + x_3 = 0 x 1 + x 2 + x 3 = 0 の 1 本だけなので
W 2 = { x : x 1 + x 2 + x 3 = 0 } = span { ( 1 , − 1 , 0 ) T , ( 1 , 0 , − 1 ) T } , m g ( 2 ) = 2. W_2 = \{ \boldsymbol{x} : x_1 + x_2 + x_3 = 0\} = \operatorname{span}\{(1,-1,0)^{\mathsf{T}}, (1,0,-1)^{\mathsf{T}}\}, \qquad m_g(2) = 2 . W 2 = { x : x 1 + x 2 + x 3 = 0 } = span {( 1 , − 1 , 0 ) T , ( 1 , 0 , − 1 ) T } , m g ( 2 ) = 2. m g ( 5 ) + m g ( 2 ) = 1 + 2 = 3 = n m_g(5) + m_g(2) = 1 + 2 = 3 = n m g ( 5 ) + m g ( 2 ) = 1 + 2 = 3 = n なので、Theorem 6.4 の条件 4 により A A A は対角化可能です。実際 P = ( 1 1 1 1 − 1 0 1 0 − 1 ) P = \begin{pmatrix} 1&1&1\\1&-1&0\\1&0&-1\end{pmatrix} P = 1 1 1 1 − 1 0 1 0 − 1 とすれば P − 1 A P = diag ( 5 , 2 , 2 ) P^{-1}AP = \operatorname{diag}(5,2,2) P − 1 A P = diag ( 5 , 2 , 2 ) となります。
別解の見通し。 全成分が 1 1 1 の行列を J J J とすると A = 2 I + J A = 2I + J A = 2 I + J です。A x = 2 x + J x A\boldsymbol{x} = 2\boldsymbol{x} + J\boldsymbol{x} A x = 2 x + J x なので、A A A の固有値は J J J の固有値に 2 2 2 を足したものになります。J J J は階数 1 1 1 なので dim ker J = 2 \dim\ker J = 2 dim ker J = 2 、つまり固有値 0 0 0 が幾何学的重複度 2 2 2 で現れ、残る 1 個は Corollary 4.5 より tr J − 0 − 0 = 3 \operatorname{tr}J - 0 - 0 = 3 tr J − 0 − 0 = 3 です。よって A A A の固有値は 2 , 2 , 5 2, 2, 5 2 , 2 , 5 となり、上の結果と一致します。
Exercise 8.2 標準
A ∈ M n ( K ) A \in M_n(K) A ∈ M n ( K ) について、A A A と A T A^{\mathsf{T}} A T の特性多項式が一致することを示せ。したがって固有値も代数的重複度も一致する。一方で、固有空間 W λ ( A ) W_\lambda(A) W λ ( A ) と W λ ( A T ) W_\lambda(A^{\mathsf{T}}) W λ ( A T ) は一般には一致しないことを、具体例を挙げて示せ。
Solution 特性多項式の一致。 転置の性質 ( X + Y ) T = X T + Y T (X + Y)^{\mathsf{T}} = X^{\mathsf{T}} + Y^{\mathsf{T}} ( X + Y ) T = X T + Y T と I T = I I^{\mathsf{T}} = I I T = I より ( t I − A ) T = t I − A T (tI - A)^{\mathsf{T}} = tI - A^{\mathsf{T}} ( t I − A ) T = t I − A T です。準備 6 の det ( M T ) = det M \det(M^{\mathsf{T}}) = \det M det ( M T ) = det M を M = t I − A M = tI - A M = t I − A に適用して
φ A T ( t ) = det ( t I − A T ) = det ( ( t I − A ) T ) = det ( t I − A ) = φ A ( t ) \varphi_{A^{\mathsf{T}}}(t) = \det(tI - A^{\mathsf{T}}) = \det\bigl((tI - A)^{\mathsf{T}}\bigr) = \det(tI - A) = \varphi_A(t) φ A T ( t ) = det ( t I − A T ) = det ( ( t I − A ) T ) = det ( t I − A ) = φ A ( t ) を得ます。特性多項式が同じなら、その根とその重複度、すなわち固有値と代数的重複度(Definition 6.1 )も同じです。
固有空間は一致しない。 Example 6.3 のせん断行列 A = ( 1 1 0 1 ) A = \begin{pmatrix} 1&1\\0&1\end{pmatrix} A = ( 1 0 1 1 ) を取ります。すでに見たとおり W 1 ( A ) = span { e 1 } W_1(A) = \operatorname{span}\{\boldsymbol{e}_1\} W 1 ( A ) = span { e 1 } です。一方
A T = ( 1 0 1 1 ) , A T − I = ( 0 0 1 0 ) A^{\mathsf{T}} = \begin{pmatrix} 1 & 0 \\ 1 & 1\end{pmatrix}, \qquad A^{\mathsf{T}} - I = \begin{pmatrix} 0 & 0 \\ 1 & 0 \end{pmatrix} A T = ( 1 1 0 1 ) , A T − I = ( 0 1 0 0 ) なので、( A T − I ) x = 0 (A^{\mathsf{T}} - I)\boldsymbol{x} = \boldsymbol{0} ( A T − I ) x = 0 は x 1 = 0 x_1 = 0 x 1 = 0 となり
W 1 ( A T ) = span { e 2 } ≠ span { e 1 } = W 1 ( A ) W_1(A^{\mathsf{T}}) = \operatorname{span}\{\boldsymbol{e}_2\} \ne \operatorname{span}\{\boldsymbol{e}_1\} = W_1(A) W 1 ( A T ) = span { e 2 } = span { e 1 } = W 1 ( A ) です。
補足。 固有空間そのものは違っても、その次元は必ず一致します。rank ( M T ) = rank ( M ) \operatorname{rank}(M^{\mathsf{T}}) = \operatorname{rank}(M) rank ( M T ) = rank ( M ) を M = A − λ I M = A - \lambda I M = A − λ I に使うと、次元定理から
m g A ( λ ) = n − rank ( A − λ I ) = n − rank ( A T − λ I ) = m g A T ( λ ) m_g^{A}(\lambda) = n - \operatorname{rank}(A - \lambda I) = n - \operatorname{rank}(A^{\mathsf{T}} - \lambda I) = m_g^{A^{\mathsf{T}}}(\lambda) m g A ( λ ) = n − rank ( A − λ I ) = n − rank ( A T − λ I ) = m g A T ( λ ) となるからです。上の例でも m g = 1 m_g = 1 m g = 1 で共通です。
Exercise 8.3 標準
P ∈ M n ( K ) P \in M_n(K) P ∈ M n ( K ) が P 2 = P P^2 = P P 2 = P を満たすとする(このような P P P を射影という)。次を示せ。
P P P の固有値は 0 0 0 または 1 1 1 に限る。
K n = ker P ⊕ im P K^n = \ker P \oplus \operatorname{im} P K n = ker P ⊕ im P であり、ker P = W 0 \ker P = W_0 ker P = W 0 、im P = W 1 \operatorname{im}P = W_1 im P = W 1 。
P P P は対角化可能である。
Solution 1. λ \lambda λ を固有値、v ≠ 0 \boldsymbol{v} \ne \boldsymbol{0} v = 0 を属する固有ベクトルとします。P v = λ v P\boldsymbol{v} = \lambda\boldsymbol{v} P v = λ v の両辺に P P P を掛けると、左辺は P 2 v = P v = λ v P^2\boldsymbol{v} = P\boldsymbol{v} = \lambda\boldsymbol{v} P 2 v = P v = λ v 、右辺は λ P v = λ 2 v \lambda P\boldsymbol{v} = \lambda^2\boldsymbol{v} λ P v = λ 2 v です。よって ( λ 2 − λ ) v = 0 (\lambda^2 - \lambda)\boldsymbol{v} = \boldsymbol{0} ( λ 2 − λ ) v = 0 で、v ≠ 0 \boldsymbol{v} \ne \boldsymbol{0} v = 0 より λ 2 − λ = λ ( λ − 1 ) = 0 \lambda^2 - \lambda = \lambda(\lambda-1) = 0 λ 2 − λ = λ ( λ − 1 ) = 0 、すなわち λ ∈ { 0 , 1 } \lambda \in \{0, 1\} λ ∈ { 0 , 1 } です。
2. まず ker P = W 0 \ker P = W_0 ker P = W 0 は定義そのものです(Definition 5.1 で λ = 0 \lambda = 0 λ = 0 )。
次に im P = W 1 \operatorname{im}P = W_1 im P = W 1 を示します。w ∈ im P \boldsymbol{w} \in \operatorname{im}P w ∈ im P なら w = P u \boldsymbol{w} = P\boldsymbol{u} w = P u と書け、P w = P 2 u = P u = w P\boldsymbol{w} = P^2\boldsymbol{u} = P\boldsymbol{u} = \boldsymbol{w} P w = P 2 u = P u = w なので w ∈ W 1 \boldsymbol{w} \in W_1 w ∈ W 1 です。逆に w ∈ W 1 \boldsymbol{w} \in W_1 w ∈ W 1 なら w = P w ∈ im P \boldsymbol{w} = P\boldsymbol{w} \in \operatorname{im}P w = P w ∈ im P です。よって im P = W 1 \operatorname{im}P = W_1 im P = W 1 。
和が全体になること。任意の x ∈ K n \boldsymbol{x} \in K^n x ∈ K n について x = ( x − P x ) + P x \boldsymbol{x} = (\boldsymbol{x} - P\boldsymbol{x}) + P\boldsymbol{x} x = ( x − P x ) + P x と分解します。P ( x − P x ) = P x − P 2 x = P x − P x = 0 P(\boldsymbol{x} - P\boldsymbol{x}) = P\boldsymbol{x} - P^2\boldsymbol{x} = P\boldsymbol{x} - P\boldsymbol{x} = \boldsymbol{0} P ( x − P x ) = P x − P 2 x = P x − P x = 0 なので第 1 項は ker P \ker P ker P に、第 2 項は im P \operatorname{im}P im P に属します。よって K n = ker P + im P K^n = \ker P + \operatorname{im}P K n = ker P + im P 。
直和であること。x ∈ ker P ∩ im P = W 0 ∩ W 1 \boldsymbol{x} \in \ker P \cap \operatorname{im}P = W_0 \cap W_1 x ∈ ker P ∩ im P = W 0 ∩ W 1 とすると、x ∈ W 1 \boldsymbol{x} \in W_1 x ∈ W 1 より x = P x \boldsymbol{x} = P\boldsymbol{x} x = P x 、x ∈ W 0 \boldsymbol{x} \in W_0 x ∈ W 0 より P x = 0 P\boldsymbol{x} = \boldsymbol{0} P x = 0 なので x = 0 \boldsymbol{x} = \boldsymbol{0} x = 0 です。(これは Corollary 5.3 の特別な場合でもあります。)
3. 2 より dim W 0 + dim W 1 = dim K n = n \dim W_0 + \dim W_1 = \dim K^n = n dim W 0 + dim W 1 = dim K n = n です。P = O P = O P = O や P = I P = I P = I のように固有値が片方しか現れない場合は、現れないほうの固有空間が { 0 } \{\boldsymbol{0}\} { 0 } で次元 0 0 0 なので、この等式は「実際に現れる固有値についての m g m_g m g の総和が n n n 」と同じことを言っています。したがって Theorem 6.4 の条件 4 が満たされ、P P P は対角化可能です。対角化した形は、rank P = r \operatorname{rank}P = r rank P = r とすると diag ( 1 , … , 1 , 0 , … , 0 ) \operatorname{diag}(1,\ldots,1,0,\ldots,0) diag ( 1 , … , 1 , 0 , … , 0 ) (1 1 1 が r r r 個)になります。
Exercise 8.4 難
A , B ∈ M n ( K ) A, B \in M_n(K) A , B ∈ M n ( K ) とする。λ ≠ 0 \lambda \ne 0 λ = 0 が A B AB A B の固有値ならば、λ \lambda λ は B A BA B A の固有値でもあることを示せ。また、λ = 0 \lambda = 0 λ = 0 についてこの主張が成り立つかどうかを、n n n が一般の場合について考えよ。
Solution λ ≠ 0 \lambda \ne 0 λ = 0 の場合。 λ ≠ 0 \lambda \ne 0 λ = 0 が A B AB A B の固有値なので、A B v = λ v AB\boldsymbol{v} = \lambda\boldsymbol{v} A B v = λ v を満たす v ≠ 0 \boldsymbol{v} \ne \boldsymbol{0} v = 0 が取れます。w : = B v \boldsymbol{w} := B\boldsymbol{v} w := B v と置きます。
まず w ≠ 0 \boldsymbol{w} \ne \boldsymbol{0} w = 0 を確かめます。もし w = B v = 0 \boldsymbol{w} = B\boldsymbol{v} = \boldsymbol{0} w = B v = 0 なら、λ v = A B v = A 0 = 0 \lambda\boldsymbol{v} = AB\boldsymbol{v} = A\boldsymbol{0} = \boldsymbol{0} λ v = A B v = A 0 = 0 となります。λ ≠ 0 \lambda \ne 0 λ = 0 なので v = 0 \boldsymbol{v} = \boldsymbol{0} v = 0 となり、v ≠ 0 \boldsymbol{v} \ne \boldsymbol{0} v = 0 に矛盾します。よって w ≠ 0 \boldsymbol{w} \ne \boldsymbol{0} w = 0 です。
次に w \boldsymbol{w} w が B A BA B A の固有ベクトルであることを示します。
( B A ) w = B A B v = B ( A B v ) = B ( λ v ) = λ B v = λ w (BA)\boldsymbol{w} = BA B\boldsymbol{v} = B(AB\boldsymbol{v}) = B(\lambda\boldsymbol{v}) = \lambda B\boldsymbol{v} = \lambda\boldsymbol{w} ( B A ) w = B A B v = B ( A B v ) = B ( λ v ) = λ B v = λ w です(行列の積の結合法則と、B B B の線形性を使いました)。w ≠ 0 \boldsymbol{w} \ne \boldsymbol{0} w = 0 なので、Definition 3.1 より λ \lambda λ は B A BA B A の固有値です。
λ = 0 \lambda = 0 λ = 0 の場合。 正方行列どうしであれば、0 0 0 についても成り立ちます。Proposition 3.3 より 0 0 0 が A B AB A B の固有値であることは det ( A B ) = 0 \det(AB) = 0 det ( A B ) = 0 と同値です。行列式の乗法性(準備 2)から
det ( A B ) = det A ⋅ det B = det B ⋅ det A = det ( B A ) \det(AB) = \det A \cdot \det B = \det B \cdot \det A = \det(BA) det ( A B ) = det A ⋅ det B = det B ⋅ det A = det ( B A ) なので、det ( A B ) = 0 \det(AB) = 0 det ( A B ) = 0 と det ( B A ) = 0 \det(BA) = 0 det ( B A ) = 0 は同値です。したがって 0 0 0 が A B AB A B の固有値であることと B A BA B A の固有値であることも同値です。以上を合わせると、A B AB A B と B A BA B A は(正方行列の場合)固有値の集合が完全に一致します。
注意。 A A A が m × n m\times n m × n 、B B B が n × m n \times m n × m の長方形行列の場合、A B AB A B は m m m 次、B A BA B A は n n n 次で、サイズが違います。このときも非零固有値は一致しますが(上の議論はそのまま通用します)、0 0 0 については一致しません。たとえば A = ( 1 0 ) A = (1\ 0) A = ( 1 0 ) 、B = ( 1 0 ) T B = (1\ 0)^{\mathsf{T}} B = ( 1 0 ) T とすると A B = ( 1 ) AB = (1) A B = ( 1 ) で固有値は 1 1 1 のみ、B A = ( 1 0 0 0 ) BA = \begin{pmatrix}1&0\\0&0\end{pmatrix} B A = ( 1 0 0 0 ) で固有値は 1 1 1 と 0 0 0 です。なお、正方行列の場合には固有値の集合だけでなく特性多項式そのものが一致します(φ A B = φ B A \varphi_{AB} = \varphi_{BA} φ A B = φ B A )が、その証明には少し工夫が要ります。
齋藤正彦『線型代数入門』東京大学出版会、1966 — 第 5 章(固有値と固有ベクトル、対角化)。日本語の標準的な教科書で、この記事の内容はおおむね同章に対応します。
佐武一郎『線型代数学』裳華房、1974 — 第 III 章・第 IV 章。特性多項式と最小多項式の関係、標準形への接続が丁寧です。
Sheldon Axler, Linear Algebra Done Right , 4th ed., Springer, 2024 — Chapter 5(Eigenvalues and Eigenvectors)。行列式を使わずに固有値の存在を示す構成で、この記事とは異なる筋道が学べます。オープンアクセス版が linear.axler.net で公開されています。
Gilbert Strang, Introduction to Linear Algebra , 5th ed., Wellesley-Cambridge Press, 2016 — Chapter 6(Eigenvalues and Eigenvectors)。応用(差分方程式、微分方程式、主成分分析)との接続が豊富です。
Roger A. Horn and Charles R. Johnson, Matrix Analysis , 2nd ed., Cambridge University Press, 2013 — Chapter 1。重複度、相似不変量についての厳密で網羅的な記述があります。
Lloyd N. Trefethen and David Bau III, Numerical Linear Algebra , SIAM, 1997 — Lecture 24–28。特性方程式を解くのではない固有値計算の方法(べき乗法、QR 法)を扱います。
手計算と数値計算の断絶。 この記事では固有値を「特性方程式の根」として求めました。手で計算する 2 次・3 次の行列ではこれが最短ですが、計算機で 1000 1000 1000 次の行列を扱うとき、この方法は使われません。理由は二つあります。
第一に、5 5 5 次以上の一般の多項式には四則演算と冪根による解の公式が存在しません(アーベル・ルフィニの定理)。したがって 5 5 5 次以上の行列については、そもそも「特性方程式を代数的に解く」ことができません。固有値の計算は本質的に反復的(近似を繰り返して精度を上げる)にならざるをえない、ということです。
第二に、より実際的な問題として、多項式の根は係数の微小な変化に対して極めて敏感になることがあります。ウィルキンソンが挙げた有名な例では、∏ k = 1 20 ( t − k ) \prod_{k=1}^{20}(t - k) ∏ k = 1 20 ( t − k ) という根が 1 , 2 , … , 20 1,2,\ldots,20 1 , 2 , … , 20 の多項式で、t 19 t^{19} t 19 の係数を 2 − 23 2^{-23} 2 − 23 ほど動かすだけで、いくつかの根が複素平面上へ大きく動きます。特性多項式の係数を経由すると、行列そのものは素直なのに途中で精度が壊れる、という事態が起こります。
実際に使われる方法。 代わりに用いられるのは、行列に直接作用する反復法です。最も素朴なのはべき乗法で、適当な初期ベクトル x 0 \boldsymbol{x}_0 x 0 から x k + 1 = A x k / ∥ A x k ∥ \boldsymbol{x}_{k+1} = A\boldsymbol{x}_k / \|A\boldsymbol{x}_k\| x k + 1 = A x k /∥ A x k ∥ を繰り返します。Example 7.1 で見たように、べき乗を繰り返すと絶対値最大の固有値に属する成分が支配的になるため、x k \boldsymbol{x}_k x k はその固有ベクトルの方向に収束します。すべての固有値を求めるには QR 法が標準で、直交行列による相似変換を繰り返して行列を上三角形に近づけていきます。相似変換で固有値が変わらないことは Theorem 4.4 、上三角行列の固有値が対角成分であることは Example 4.7 が保証しています。この記事で証明した二つの事実が、そのまま数値アルゴリズムの正当性の土台になっているわけです。
向きが逆になる話。 面白いことに、実務では逆向きの使い方もされます。多項式 p ( t ) = t n + c n − 1 t n − 1 + ⋯ + c 0 p(t) = t^n + c_{n-1}t^{n-1} + \cdots + c_0 p ( t ) = t n + c n − 1 t n − 1 + ⋯ + c 0 の根を数値的に求めたいとき、p p p を特性多項式として持つ行列(コンパニオン行列)を作り、その固有値を QR 法で計算するのです。NumPy の numpy.roots はこの方法を採っています。多項式の根を求めるために固有値計算に帰着させる、という順序は、手計算の直観とはちょうど反対です。