コンテンツにスキップ

対角化とジョルダン標準形:変換が一番簡単に見える座標を探す

対象読者: 本テーマ第 1〜4 章の内容、特に固有値・固有空間・特性多項式と重複度を学んだ人。ジョルダン標準形は初めてでも読めます。

前提となる記事:固有値と固有ベクトル:線形変換が向きを変えない方向を探す

生 Markdown

行列は、平面や空間のベクトルを別のベクトルに移す「操作」だと思えます。この操作を何度も繰り返すと成分がどう変わっていくのかは、そのままでは見通しにくいものです。ところが座標軸の向きをうまく選び直すと、操作が「各軸をそれぞれ何倍かするだけ」という単純な形に見えることがあります。この記事では、それがいつ可能か、可能なら何が嬉しいか、不可能なときにどこまで単純にできるかを順に見ていきます。

  • 対角化とは「行列を変形する」ことではなく、同じ線形変換を、それが一番素直に見える座標系(固有ベクトルの基底)から眺め直すことです。座標を替えると表現行列は P−1APP^{-1}AP に変わり、うまい PP を選ぶと対角行列になります。
  • nn 次行列 AA が対角化可能であることと、AA の固有ベクトルからなる基底が取れることは同値です。判定は重複度で完結します。すなわち、固有多項式が 1 次式の積に分解し、かつ各固有値で幾何的重複度と代数的重複度が一致する(固有空間の次元と、固有多項式の根としての重複度が等しい)ことが必要十分です。
  • 対角化できれば Ak=PDkP−1A^k = PD^kP^{-1} となり、べき乗・行列指数関数(指数関数 exe^x の xx に行列を入れたもの)・線形漸化式・線形微分方程式がすべて固有値のスカラー計算に還元されます。フィボナッチ数列の一般項もこれで出ます。
  • 実対称行列は必ず直交行列で対角化できます。この定理が二次形式の主軸変換を保証し、データ解析の主成分分析(PCA。データのばらつきが最も大きい方向を探す手法)を支えています。
  • 対角化できない行列でも、複素数の範囲ではジョルダン標準形(対角成分の 1 つ上に 11 が並ぶだけの形)まで簡単にできます。細胞の大きさは rank⁡(A−λI)j\operatorname{rank}(A - \lambda I)^j の階差だけで決まります。

1. 動機:なぜ「一番簡単な行列」を探すのか

Section titled “1. 動機:なぜ「一番簡単な行列」を探すのか”

ベクトル空間と線形変換 で見たとおり、行列は数を並べた四角い表そのものではなく、基底を 1 つ固定したときの線形変換の影です。同じ変換でも、基底を替えれば行列の見た目は変わります。ここから自然な問いが出てきます。

与えられた線形変換 TT に対して、その行列表示が最も簡単になるような基底を選べるだろうか。そして「最も簡単」とは何だろうか。

いちばん簡単な行列は対角行列です。対角行列 D=diag⁡(λ1,…,λn)D = \operatorname{diag}(\lambda_1, \ldots, \lambda_n) が表す変換は、nn 本の座標軸のそれぞれを独立に λi\lambda_i 倍に伸縮するだけで、軸どうしが混ざりません。つまり nn 次元の問題が 1 次元の問題 nn 個に分解されるということです。この分解ができれば、変換を何回も繰り返す計算も、指数関数を取る計算も、各軸ごとのスカラー計算になります。

具体的な御利益を 1 つ挙げます。A=(4123)A = \begin{pmatrix} 4 & 1 \\ 2 & 3\end{pmatrix} に対して A100A^{100} を求めたいとします。素朴に掛け算を繰り返すのは(繰り返し二乗法を使っても)成分の一般式を与えてくれません。しかし後で見るように、AA の固有値 5,25, 2 を使えば

Ak=13(2⋅5k+2k5k−2k2⋅5k−2⋅2k5k+2⋅2k)A^{k} = \frac{1}{3}\begin{pmatrix} 2\cdot 5^{k} + 2^{k} & 5^{k} - 2^{k} \\ 2\cdot 5^{k} - 2\cdot 2^{k} & 5^{k} + 2\cdot 2^{k}\end{pmatrix}

という閉じた式が一気に出ます。k=100k = 100 を代入するだけです。

歴史的にも、この問いは天下り的に生まれたものではありません。19 世紀前半、コーシーは二次曲面の主軸問題、すなわち xTAx=1x^{\mathsf{T}} A x = 1 という曲面の軸の方向を決める問題を研究し、実対称行列の固有値がつねに実数であることを示しました。一方、対角化がいつでもできるわけではないことも早くから知られていました。「対角化できない行列は、どこまで簡単にできるのか」という問いに完全な答えを与えたのがワイエルシュトラスの単因子論(1868 年)とジョルダンの著作(1870 年)で、そこから得られる標準形が本記事後半の主役です。

この記事では、固有値と固有ベクトル で導入した固有値・固有ベクトル(定義 3.1[固有値と固有ベクトル])を道具として、次の 3 つに答えます。

  1. どんなときに対角化できるか(判定条件)。
  2. 対角化できると何が嬉しいか(応用)。
  3. 対角化できないとき、代わりに何が得られるか(ジョルダン標準形)。

2. 準備:基底の取り替えと相似

Section titled “2. 準備:基底の取り替えと相似”

VV を体 KK 上の nn 次元ベクトル空間、T ⁣:V→VT \colon V \to V を線形変換とします。基底 B=(b1,…,bn)\mathcal{B} = (b_1, \ldots, b_n) を固定すると、各 TbjT b_j を基底で展開した係数を並べて表現行列 AA が定まりました。別の基底 C=(c1,…,cn)\mathcal{C} = (c_1, \ldots, c_n) を取り、cjc_j を B\mathcal{B} で展開した係数を第 jj 列に並べた行列を PP とします。PP は基底から基底への変換なので正則で、C\mathcal{C} に関する表現行列は P−1APP^{-1} A P になります(表現行列の変換則(定理 5.2)[行列と連立一次方程式])。

基底の取り替え。同じ変換 T を 2 つの座標系から見ており、四角形は可換です。

この「見え方の違い」を行列の言葉だけで書いたのが次の関係です。

定義 2.1(相似)↗

A,B∈Mn(K)A, B \in M_n(K) に対し、ある正則行列 P∈GLn(K)P \in GL_n(K) が存在して B=P−1APB = P^{-1} A P となるとき、AA と BB は相似であるといい、A∼BA \sim B と書く。

相似は同値関係です(P=IP = I で反射律、A=(P−1)−1BP−1A = (P^{-1})^{-1} B P^{-1} で対称律、Q−1(P−1AP)Q=(PQ)−1A(PQ)Q^{-1}(P^{-1}AP)Q = (PQ)^{-1}A(PQ) で推移律)。同値関係については 関係と同値関係 の 定義 3.1[関係と同値関係] を参照してください。相似な行列は同じ変換の別の座標での姿ですから、変換そのものの性質は相似で変わらないはずです。それを確認します。

命題 2.2(相似不変量)✓

A∼BA \sim B ならば、次が成り立つ。

  1. AA と BB の固有多項式は一致する。すなわち det⁡(tI−A)=det⁡(tI−B)\det(tI - A) = \det(tI - B)。したがって固有値の全体も、各固有値の代数的重複度も一致する。
  2. tr⁡A=tr⁡B\operatorname{tr} A = \operatorname{tr} B、det⁡A=det⁡B\det A = \det B。
  3. 任意のスカラー λ∈K\lambda \in K と任意の整数 j≥0j \ge 0 に対し rank⁡(A−λI)j=rank⁡(B−λI)j\operatorname{rank}(A - \lambda I)^j = \operatorname{rank}(B - \lambda I)^j。
証明(命題 2.2)

B=P−1APB = P^{-1}AP とします。

(1) tI=P−1(tI)PtI = P^{-1}(tI)P ですから

tI−B=P−1(tI)P−P−1AP=P−1(tI−A)PtI - B = P^{-1}(tI)P - P^{-1}AP = P^{-1}(tI - A)P

となります。行列式の乗法性(行列式とその性質 の 定理 6.1[行列式とその性質])より

det⁡(tI−B)=det⁡(P−1)det⁡(tI−A)det⁡(P)=det⁡(tI−A)\det(tI - B) = \det(P^{-1})\det(tI - A)\det(P) = \det(tI-A)

です。det⁡(P−1)=det⁡(P)−1\det(P^{-1}) = \det(P)^{-1} を使いました。固有多項式が同じなら、その根である固有値も、根としての重複度(代数的重複度)も同じです。

(2) 固有多項式を展開すると tn−(tr⁡A)tn−1+⋯+(−1)ndet⁡At^n - (\operatorname{tr}A)t^{n-1} + \cdots + (-1)^n \det A となるので、(1) から係数どうしが一致します。

(3) (B−λI)j=(P−1(A−λI)P)j=P−1(A−λI)jP(B - \lambda I)^j = (P^{-1}(A - \lambda I)P)^j = P^{-1}(A-\lambda I)^j P です(間の PP−1PP^{-1} が消えます)。正則行列を左右から掛けても階数は変わらないので(行列と連立一次方程式)、階数は等しくなります。

注意 2.3

逆は成り立たない。固有多項式が同じでも相似とは限らない。実際 I2I_2 と (1101)\begin{pmatrix}1 & 1\\ 0 & 1\end{pmatrix} はともに固有多項式 (t−1)2(t-1)^2 をもつが、P−1I2P=I2P^{-1}I_2P = I_2 なので I2I_2 と相似な行列は I2I_2 だけであり、両者は相似でない。「どこまで不変量を集めれば相似が決まるか」という問いの答えが、この記事の最後に出るジョルダン標準形である。

定義 3.1(対角化可能)↗

A∈Mn(K)A \in M_n(K) が KK 上対角化可能であるとは、ある正則行列 P∈GLn(K)P \in GL_n(K) と対角行列 D∈Mn(K)D \in M_n(K) が存在して P−1AP=DP^{-1}AP = D となることをいう。このとき PP を対角化する行列、DD を AA の対角形という。

「対角化可能」は AA 単独の性質ではなく、どの体の上で考えるかに依存します。この点は後で反例とともに確認します。まず、対角化という代数的な条件が、幾何的には何を意味するかを押さえます。

定理 3.2(対角化と固有基底)✓

A∈Mn(K)A \in M_n(K) について、次の 2 条件は同値である。

  1. AA は KK 上対角化可能である。
  2. KnK^n は AA の固有ベクトルからなる基底をもつ。

さらにこのとき、(2) の基底 (p1,…,pn)(p_1, \ldots, p_n) を列に並べた行列 P=(p1 ⋯ pn)P = (p_1\ \cdots\ p_n) に対して P−1AP=diag⁡(λ1,…,λn)P^{-1}AP = \operatorname{diag}(\lambda_1, \ldots, \lambda_n) が成り立つ。ここで λi\lambda_i は pip_i に対応する固有値である。

証明(定理 3.2)

どちらの向きも、等式 P−1AP=DP^{-1}AP = D を AP=PDAP = PD と書き直して列ごとに読むのが鍵です。PP の第 ii 列を pip_i、D=diag⁡(λ1,…,λn)D = \operatorname{diag}(\lambda_1,\ldots,\lambda_n) とすると、行列の積の定義から

(AP) の第 i 列=Api,(PD) の第 i 列=λipi(AP)\text{ の第 } i \text{ 列} = A p_i, \qquad (PD)\text{ の第 } i \text{ 列} = \lambda_i p_i

です。後者は、DD の第 ii 列が λiei\lambda_i e_i であることから従います。したがって

AP=PD  ⟺  Api=λipi(i=1,…,n)AP = PD \iff A p_i = \lambda_i p_i \quad (i = 1, \ldots, n)

が成り立ちます。

(1) ⇒\Rightarrow (2):P−1AP=DP^{-1}AP = D とすると上の同値から Api=λipiAp_i = \lambda_i p_i です。PP は正則なので pi≠0p_i \ne 0 であり、pip_i は固有値 λi\lambda_i の固有ベクトルです。また PP が正則であることは、その列 p1,…,pnp_1, \ldots, p_n が KnK^n の基底をなすことと同値ですから、(2) が得られます。

(2) ⇒\Rightarrow (1):固有ベクトルからなる基底 (p1,…,pn)(p_1,\ldots,p_n) を取り、Api=λipiAp_i = \lambda_i p_i とします。これらを列に並べた PP は基底を列にもつので正則です。上の同値より AP=PDAP = PD、すなわち P−1AP=DP^{-1}AP = D となります。

つまり対角化とは、固有ベクトルを座標軸に採用することにほかなりません。対角化できるかどうかは「固有ベクトルが十分たくさんあるか」という一点にかかっています。では、どういうときに足りなくなるのでしょうか。まず、足りることを保証する十分条件から見ます。

補題 3.3(異なる固有値の固有ベクトルは一次独立)✓

A∈Mn(K)A \in M_n(K) の相異なる固有値 λ1,…,λr\lambda_1, \ldots, \lambda_r に対し、viv_i を λi\lambda_i に属する固有ベクトル(vi≠0v_i \ne 0、Avi=λiviAv_i = \lambda_i v_i)とする。このとき v1,…,vrv_1, \ldots, v_r は一次独立である。

証明(補題 3.3)

rr についての帰納法で示します(帰納法については 証明の技術 の 定理 3.2[証明の技術] を参照してください)。

r=1r = 1 のとき、v1≠0v_1 \ne 0 なので c1v1=0⇒c1=0c_1v_1 = 0 \Rightarrow c_1 = 0 であり、一次独立です。

r−1r - 1 個までで成立するとします。c1v1+⋯+crvr=0c_1v_1 + \cdots + c_rv_r = 0 とおきます。両辺に A−λrIA - \lambda_r I を掛けると、(A−λrI)vi=(λi−λr)vi(A - \lambda_r I)v_i = (\lambda_i - \lambda_r)v_i なので

∑i=1r−1ci(λi−λr)vi=0\sum_{i=1}^{r-1} c_i(\lambda_i - \lambda_r)v_i = 0

となります(i=ri = r の項は (λr−λr)vr=0(\lambda_r - \lambda_r)v_r = 0 で消えます)。帰納法の仮定により v1,…,vr−1v_1, \ldots, v_{r-1} は一次独立ですから、すべての i≤r−1i \le r-1 で ci(λi−λr)=0c_i(\lambda_i - \lambda_r) = 0 です。仮定より固有値は相異なるので λi−λr≠0\lambda_i - \lambda_r \ne 0、よって ci=0c_i = 0 です。これを最初の式に戻すと crvr=0c_rv_r = 0 となり、vr≠0v_r \ne 0 から cr=0c_r = 0 を得ます。

系 3.4(相異なる n 個の固有値をもつ行列)✓

A∈Mn(K)A \in M_n(K) が KK の中に相異なる nn 個の固有値をもてば、AA は KK 上対角化可能である。

証明(系 3.4)

各固有値に固有ベクトルを 1 つずつ選ぶと、補題 3.3 により一次独立な nn 本のベクトルが得られます。nn 次元空間 KnK^n の中の一次独立な nn 本は基底ですから、定理 3.2 により AA は対角化可能です。

固有値に重複があるときが問題です。重複度には 2 種類あり、その食い違いが対角化を妨げます。

定義 3.5(代数的重複度と幾何的重複度)↗

λ\lambda を A∈Mn(K)A \in M_n(K) の固有値とする。固有多項式 χA(t)=det⁡(tI−A)\chi_A(t) = \det(tI - A) における因子 (t−λ)(t-\lambda) の重複度、すなわち χA(t)=(t−λ)mg(t)\chi_A(t) = (t-\lambda)^m g(t)、g(λ)≠0g(\lambda) \ne 0 となる mm を λ\lambda の代数的重複度といい ma(λ)m_a(\lambda) と書く。一方、固有空間

Eλ=ker⁡(A−λI)={ x∈Kn:Ax=λx }E_\lambda = \ker(A - \lambda I) = \{\,x \in K^n : Ax = \lambda x\,\}

の次元 dim⁡Eλ=n−rank⁡(A−λI)\dim E_\lambda = n - \operatorname{rank}(A - \lambda I) を λ\lambda の幾何的重複度といい mg(λ)m_g(\lambda) と書く。

代数的重複度は「特性方程式の根としての多重度」という代数的な量、幾何的重複度は「その固有値に属する独立な方向の本数」という幾何的な量です。両者はつねに一致するとは限らず、次の一方向の不等式だけが成り立ちます。証明の方針は、固有空間の基底を空間全体の基底に延ばして行列を書き直すと、左上に λ\lambda だけが並ぶ四角い塊ができる、という点を使うことです。その塊の大きさが固有多項式の因子 (t−λ)(t-\lambda) の個数を下から押さえます。

命題 3.6(幾何的重複度は代数的重複度を超えない)✓

λ\lambda を A∈Mn(K)A \in M_n(K) の固有値とすると

1≤mg(λ)≤ma(λ)≤n1 \le m_g(\lambda) \le m_a(\lambda) \le n

が成り立つ。

証明(命題 3.6)

λ\lambda は固有値なので固有ベクトルが存在し、mg(λ)=dim⁡Eλ≥1m_g(\lambda) = \dim E_\lambda \ge 1 です。ma(λ)≤nm_a(\lambda) \le n は固有多項式の次数が nn であることから従います。残るは mg(λ)≤ma(λ)m_g(\lambda) \le m_a(\lambda) です。

m=mg(λ)m = m_g(\lambda) とおき、EλE_\lambda の基底 (u1,…,um)(u_1, \ldots, u_m) を取り、これを KnK^n の基底 (u1,…,um,um+1,…,un)(u_1, \ldots, u_m, u_{m+1}, \ldots, u_n) に延長します(基底の延長ができることは ベクトル空間と線形変換 の 命題 5.7[ベクトル空間と線形変換] です)。P=(u1 ⋯ un)P = (u_1\ \cdots\ u_n) とおくと PP は正則で、B=P−1APB = P^{-1}AP を考えます。定理 3.2 の証明中の計算と同じく、BB の第 ii 列は AuiAu_i を基底 (u1,…,un)(u_1,\ldots,u_n) で表した座標です。i≤mi \le m のときは Aui=λuiAu_i = \lambda u_i なので、その座標は λei\lambda e_i です。したがって BB はブロック上三角の形

B=(λImCOE)B = \begin{pmatrix} \lambda I_m & C \\ O & E \end{pmatrix}

をもちます(CC は m×(n−m)m \times (n-m)、EE は (n−m)(n-m) 次)。ブロック上三角行列の行列式はブロックの行列式の積なので

det⁡(tI−B)=det⁡((t−λ)Im)⋅det⁡(tIn−m−E)=(t−λ)mdet⁡(tIn−m−E)\det(tI - B) = \det\bigl((t-\lambda)I_m\bigr)\cdot \det(tI_{n-m} - E) = (t-\lambda)^m \det(tI_{n-m}-E)

となります。命題 2.2 により χA=χB\chi_A = \chi_B ですから、χA(t)\chi_A(t) は (t−λ)m(t-\lambda)^m で割り切れます。代数的重複度は (t−λ)(t-\lambda) で割り切れる最大回数ですから m≤ma(λ)m \le m_a(\lambda) です。

これで判定条件を述べる準備が整いました。次の定理の十分性の証明では、各固有値の固有空間から基底を集めてくると全体で nn 本になることを数え、それらが一次独立であることを先ほどの補題で保証します。「本数が足りていて、しかも独立」なら基底になる、という筋道です。

定理 3.7(対角化可能性の判定)✓

A∈Mn(K)A \in M_n(K) が KK 上対角化可能であるための必要十分条件は、次の 2 つがともに成り立つことである。

  1. 固有多項式 χA(t)\chi_A(t) が KK 上で 1 次式の積に分解する。すなわち相異なる λ1,…,λs∈K\lambda_1, \ldots, \lambda_s \in K と正整数 m1,…,msm_1, \ldots, m_s により χA(t)=∏i=1s(t−λi)mi\chi_A(t) = \prod_{i=1}^{s}(t-\lambda_i)^{m_i} と書ける。
  2. すべての固有値 λi\lambda_i について mg(λi)=ma(λi)m_g(\lambda_i) = m_a(\lambda_i) が成り立つ。

同値な言い換えとして、AA が対角化可能であることと ∑i=1smg(λi)=n\sum_{i=1}^{s} m_g(\lambda_i) = n であることは同値である。

証明(定理 3.7)

必要性。 P−1AP=D=diag⁡(d1,…,dn)P^{-1}AP = D = \operatorname{diag}(d_1,\ldots,d_n) とします。χD(t)=∏j=1n(t−dj)\chi_D(t) = \prod_{j=1}^n (t - d_j) は 1 次式の積であり、命題 2.2 (1) より χA=χD\chi_A = \chi_D なので条件 1 が成り立ちます。次に固有値 λ\lambda を固定し、DD の対角成分に λ\lambda が現れる回数を mm とします。このとき χD\chi_D における (t−λ)(t-\lambda) の重複度は mm なので ma(λ)=mm_a(\lambda) = m です。一方 D−λID - \lambda I は対角行列で、対角成分のうちちょうど mm 個が 00、残り n−mn - m 個が 00 でないので rank⁡(D−λI)=n−m\operatorname{rank}(D - \lambda I) = n - m です。命題 2.2 (3) より rank⁡(A−λI)=n−m\operatorname{rank}(A - \lambda I) = n-m なので mg(λ)=n−(n−m)=mm_g(\lambda) = n - (n-m) = m となり、条件 2 が成り立ちます。

十分性。 条件 1, 2 を仮定します。各 ii について固有空間 EλiE_{\lambda_i} の基底を 1 組ずつ取り、それらをすべて並べたベクトルの族を F\mathcal{F} とします。F\mathcal{F} の本数は ∑img(λi)=∑ima(λi)=deg⁡χA=n\sum_i m_g(\lambda_i) = \sum_i m_a(\lambda_i) = \deg \chi_A = n です(条件 2 と条件 1 を順に使いました)。

F\mathcal{F} が一次独立であることを示します。F\mathcal{F} の元の一次結合が 00 になったとし、同じ固有値に属する項どうしをまとめて

w1+w2+⋯+ws=0,wi∈Eλiw_1 + w_2 + \cdots + w_s = 0, \qquad w_i \in E_{\lambda_i}

と書きます。もし wi≠0w_i \ne 0 となる ii が存在すれば、その ii たちだけを取り出した等式は、相異なる固有値に属する固有ベクトルたちの自明でない一次関係になり、補題 3.3 に反します。よってすべての ii で wi=0w_i = 0 です。すると各 ii について、EλiE_{\lambda_i} の基底の一次結合が 00 になったことになり、基底の一次独立性から係数はすべて 00 です。

以上より F\mathcal{F} は nn 本の一次独立な固有ベクトルの族、すなわち KnK^n の基底です。定理 3.2 により AA は対角化可能です。

言い換えについて。 命題 3.6 より ∑img(λi)≤∑ima(λi)≤n\sum_i m_g(\lambda_i) \le \sum_i m_a(\lambda_i) \le n であり、右の不等号が等号になるのは条件 1 のとき、左が等号になるのは条件 2 のときです。したがって ∑img(λi)=n\sum_i m_g(\lambda_i) = n は条件 1 かつ条件 2 と同値です。

例 3.8(対角化の実行と 100 乗)

A=(4123)A = \begin{pmatrix} 4 & 1 \\ 2 & 3\end{pmatrix} を対角化します。固有多項式は

χA(t)=det⁡(t−4−1−2t−3)=(t−4)(t−3)−2=t2−7t+10=(t−5)(t−2)\chi_A(t) = \det\begin{pmatrix} t-4 & -1 \\ -2 & t-3\end{pmatrix} = (t-4)(t-3) - 2 = t^2 - 7t + 10 = (t-5)(t-2)

です。固有値 5,25, 2 は相異なる 2 個なので、系 3.4 によりすでに対角化可能とわかります。固有ベクトルを求めます。

λ=5\lambda = 5:A−5I=(−112−2)A - 5I = \begin{pmatrix} -1 & 1 \\ 2 & -2\end{pmatrix} で、−x1+x2=0-x_1 + x_2 = 0 より p1=(1,1)Tp_1 = (1, 1)^{\mathsf{T}}。検算すると Ap1=(4+1,2+3)T=(5,5)T=5p1Ap_1 = (4+1, 2+3)^{\mathsf{T}} = (5,5)^{\mathsf{T}} = 5p_1 です。

λ=2\lambda = 2:A−2I=(2121)A - 2I = \begin{pmatrix} 2 & 1 \\ 2 & 1\end{pmatrix} で、2x1+x2=02x_1 + x_2 = 0 より p2=(1,−2)Tp_2 = (1, -2)^{\mathsf{T}}。検算すると Ap2=(4−2,2−6)T=(2,−4)T=2p2Ap_2 = (4-2, 2-6)^{\mathsf{T}} = (2,-4)^{\mathsf{T}} = 2p_2 です。

P=(111−2)P = \begin{pmatrix} 1 & 1 \\ 1 & -2\end{pmatrix} とおくと det⁡P=−3≠0\det P = -3 \ne 0 で、

P−1=1−3(−2−1−11)=13(211−1),P−1AP=(5002)P^{-1} = \frac{1}{-3}\begin{pmatrix} -2 & -1 \\ -1 & 1\end{pmatrix} = \frac{1}{3}\begin{pmatrix} 2 & 1 \\ 1 & -1\end{pmatrix}, \qquad P^{-1}AP = \begin{pmatrix} 5 & 0 \\ 0 & 2\end{pmatrix}

です。これを使って AkA^k を計算します。Ak=PDkP−1A^k = PD^kP^{-1} なので

Ak=(111−2)(5k002k)⋅13(211−1)=13(5k2k5k−2⋅2k)(211−1)=13(2⋅5k+2k5k−2k2⋅5k−2⋅2k5k+2⋅2k).\begin{aligned} A^k &= \begin{pmatrix} 1 & 1 \\ 1 & -2\end{pmatrix}\begin{pmatrix} 5^k & 0 \\ 0 & 2^k\end{pmatrix}\cdot\frac{1}{3}\begin{pmatrix} 2 & 1 \\ 1 & -1\end{pmatrix} \\ &= \frac{1}{3}\begin{pmatrix} 5^k & 2^k \\ 5^k & -2\cdot 2^k\end{pmatrix}\begin{pmatrix} 2 & 1 \\ 1 & -1\end{pmatrix} = \frac{1}{3}\begin{pmatrix} 2\cdot 5^k + 2^k & 5^k - 2^k \\ 2\cdot 5^k - 2\cdot 2^k & 5^k + 2\cdot 2^k\end{pmatrix}. \end{aligned}

検算します。k=0k=0 とすると 13(3003)=I\frac13\begin{pmatrix}3 & 0\\ 0 & 3\end{pmatrix} = I、k=1k=1 とすると 13(12369)=A\frac13\begin{pmatrix}12 & 3\\ 6 & 9\end{pmatrix} = A となり、正しいことが確かめられます。k=100k = 100 を代入すれば A100A^{100} が得られます。

例 3.9(対角化できない行列(せん断))

N=(1101)N = \begin{pmatrix} 1 & 1 \\ 0 & 1 \end{pmatrix} を考えます。固有多項式は det⁡(t−1−10t−1)=(t−1)2\det\begin{pmatrix} t-1 & -1\\ 0 & t-1\end{pmatrix} = (t-1)^2 なので、固有値は 11 のみで ma(1)=2m_a(1) = 2 です。一方

N−I=(0100),rank⁡(N−I)=1N - I = \begin{pmatrix} 0 & 1 \\ 0 & 0\end{pmatrix}, \qquad \operatorname{rank}(N-I) = 1

なので mg(1)=2−1=1m_g(1) = 2 - 1 = 1 です。mg(1)<ma(1)m_g(1) < m_a(1) となり、定理 3.7 の条件 2 が破れているので NN は対角化できません。

別の見方もできます。もし NN が対角化できたとすると、対角形の対角成分は固有値なので D=ID = I となり、N=PIP−1=IN = PIP^{-1} = I となって矛盾します。

幾何的には、NN は xx 軸方向へのせん断です。N(x1,x2)T=(x1+x2,x2)TN(x_1, x_2)^{\mathsf{T}} = (x_1 + x_2, x_2)^{\mathsf{T}} なので、高さ x2x_2 の点ほど右へ大きくずれます。不変な方向は xx 軸だけで、独立な固有方向が 1 本しかありません。「軸が足りない」というこの状況が、対角化を妨げる本質です。

注意 3.10

対角化可能性は考える体に依存する。回転行列 R=(0−110)R = \begin{pmatrix} 0 & -1 \\ 1 & 0\end{pmatrix} の固有多項式は t2+1t^2+1 で、R\mathbb{R} 上に根をもたない(実数の範囲では不変な直線が 1 本もない。90∘90^\circ 回転なのだから当然である)。よって R\mathbb{R} 上では対角化できない。しかし C\mathbb{C} 上では固有値 ±i\pm i が相異なる 2 個なので、系 3.4 により対角化可能である。定理 3.7 の条件 1 は、K=CK = \mathbb{C} では代数学の基本定理により自動的に満たされる。つまり複素数の上では、対角化の障害は条件 2 だけである。

4. 対角化の御利益:べき乗・行列関数・線形システム

Section titled “4. 対角化の御利益:べき乗・行列関数・線形システム”

命題 4.1(対角形による関数計算)✓

P−1AP=D=diag⁡(λ1,…,λn)P^{-1}AP = D = \operatorname{diag}(\lambda_1, \ldots, \lambda_n) とする。このとき次が成り立つ。

  1. 任意の整数 k≥0k \ge 0 に対し Ak=PDkP−1=Pdiag⁡(λ1k,…,λnk)P−1A^k = PD^kP^{-1} = P\operatorname{diag}(\lambda_1^k, \ldots, \lambda_n^k)P^{-1}。AA が正則ならば負の整数 kk に対しても成り立つ。
  2. 任意の多項式 f∈K[t]f \in K[t] に対し f(A)=Pdiag⁡(f(λ1),…,f(λn))P−1f(A) = P\operatorname{diag}(f(\lambda_1), \ldots, f(\lambda_n))P^{-1}。
  3. K=RK = \mathbb{R} または C\mathbb{C} とし、べき級数 f(z)=∑k≥0akzkf(z) = \sum_{k\ge 0} a_kz^k が各 λi\lambda_i で絶対収束するとする。このとき f(A)=∑k≥0akAkf(A) = \sum_{k \ge 0}a_kA^k は収束し、f(A)=Pdiag⁡(f(λ1),…,f(λn))P−1f(A) = P\operatorname{diag}(f(\lambda_1), \ldots, f(\lambda_n))P^{-1} が成り立つ。とくに eA=Pdiag⁡(eλ1,…,eλn)P−1e^{A} = P\operatorname{diag}(e^{\lambda_1},\ldots,e^{\lambda_n})P^{-1} である。
証明(命題 4.1)

(1) A=PDP−1A = PDP^{-1} です。kk についての帰納法で示します。k=0k=0 では両辺とも II です。Ak=PDkP−1A^k = PD^kP^{-1} を仮定すると

Ak+1=AkA=(PDkP−1)(PDP−1)=PDk(P−1P)DP−1=PDk+1P−1A^{k+1} = A^kA = (PD^kP^{-1})(PDP^{-1}) = PD^k(P^{-1}P)DP^{-1} = PD^{k+1}P^{-1}

となります。対角行列のべきは各成分のべきです。AA が正則なら λi\lambda_i はすべて 00 でなく(det⁡A=∏λi≠0\det A = \prod \lambda_i \ne 0)、A−1=PD−1P−1A^{-1} = PD^{-1}P^{-1} から同様に負べきも従います。

(2) f(t)=∑kaktkf(t) = \sum_k a_kt^k とすると、(1) と和・スカラー倍の分配から

f(A)=∑kakPDkP−1=P(∑kakDk)P−1=Pf(D)P−1f(A) = \sum_k a_kPD^kP^{-1} = P\Bigl(\sum_k a_kD^k\Bigr)P^{-1} = Pf(D)P^{-1}

です。対角行列の多項式は対角成分ごとの多項式なので f(D)=diag⁡(f(λi))f(D) = \operatorname{diag}(f(\lambda_i)) です。

(3) 部分和 Sm=∑k=0makAkS_m = \sum_{k=0}^{m}a_kA^k は (2) より Sm=P(∑k=0makDk)P−1S_m = P\bigl(\sum_{k=0}^m a_kD^k\bigr)P^{-1} です。∑k=0makDk=diag⁡(∑k=0makλik)\sum_{k=0}^m a_kD^k = \operatorname{diag}\bigl(\sum_{k=0}^m a_k\lambda_i^k\bigr) は仮定より m→∞m \to \infty で成分ごとに diag⁡(f(λi))\operatorname{diag}(f(\lambda_i)) に収束します。写像 X↦PXP−1X \mapsto PXP^{-1} は有限次元空間上の線形写像なので連続であり、極限と交換します。よって Sm→Pdiag⁡(f(λi))P−1S_m \to P\operatorname{diag}(f(\lambda_i))P^{-1} となります。

この命題の意味は「対角化とは、行列の世界の問題をスカラーの世界の問題 nn 個に翻訳する辞書である」ということです。翻訳して各軸で計算し、PP で元の座標に戻すだけです。典型的な応用を 1 つ、最後まで計算して見せます。

例 4.2(フィボナッチ数列の一般項(ビネの公式))

F0=0F_0 = 0, F1=1F_1 = 1, Fn+1=Fn+Fn−1F_{n+1} = F_n + F_{n-1} で定まる数列を考えます。A=(1110)A = \begin{pmatrix} 1 & 1 \\ 1 & 0\end{pmatrix} とおくと

A(FnFn−1)=(Fn+Fn−1Fn)=(Fn+1Fn)A\begin{pmatrix} F_n \\ F_{n-1}\end{pmatrix} = \begin{pmatrix} F_n + F_{n-1} \\ F_n \end{pmatrix} = \begin{pmatrix} F_{n+1} \\ F_{n}\end{pmatrix}

なので、(F1,F0)T=(1,0)T(F_1, F_0)^{\mathsf{T}} = (1,0)^{\mathsf{T}} から出発して

(Fn+1Fn)=An(10)\begin{pmatrix} F_{n+1} \\ F_n \end{pmatrix} = A^n \begin{pmatrix} 1 \\ 0\end{pmatrix}

が成り立ちます。あとは AnA^n です。固有多項式は det⁡(t−1−1−1t)=t(t−1)−1=t2−t−1\det\begin{pmatrix} t-1 & -1 \\ -1 & t\end{pmatrix} = t(t-1) - 1 = t^2 - t - 1 で、根は

φ=1+52,ψ=1−52\varphi = \frac{1+\sqrt5}{2}, \qquad \psi = \frac{1-\sqrt5}{2}

です。相異なる 2 実根なので 系 3.4 より対角化できます。λ∈{φ,ψ}\lambda \in \{\varphi, \psi\} に対し (A−λI)v=0(A - \lambda I)v = 0 は (1−λ)v1+v2=0(1-\lambda)v_1 + v_2 = 0 かつ v1−λv2=0v_1 - \lambda v_2 = 0 で、後者から v=(λ,1)Tv = (\lambda, 1)^{\mathsf{T}} と取れます(このとき前者は (1−λ)λ+1=λ−λ2+1=0(1-\lambda)\lambda + 1 = \lambda - \lambda^2 + 1 = 0、すなわち λ2=λ+1\lambda^2 = \lambda + 1 から成り立ちます)。そこで

P=(φψ11),det⁡P=φ−ψ=5,P−1=15(1−ψ−1φ)P = \begin{pmatrix} \varphi & \psi \\ 1 & 1\end{pmatrix}, \qquad \det P = \varphi - \psi = \sqrt5, \qquad P^{-1} = \frac{1}{\sqrt5}\begin{pmatrix} 1 & -\psi \\ -1 & \varphi\end{pmatrix}

とおきます。命題 4.1 より An=Pdiag⁡(φn,ψn)P−1A^n = P\operatorname{diag}(\varphi^n, \psi^n)P^{-1} なので、右から (1,0)T(1,0)^{\mathsf{T}} を掛けて順に計算します。

P−1(10)=15(1−1),diag⁡(φn,ψn)⋅15(1−1)=15(φn−ψn),P⋅15(φn−ψn)=15(φn+1−ψn+1φn−ψn).\begin{aligned} P^{-1}\begin{pmatrix}1\\0\end{pmatrix} &= \frac{1}{\sqrt5}\begin{pmatrix} 1 \\ -1\end{pmatrix}, \\ \operatorname{diag}(\varphi^n,\psi^n)\cdot \frac{1}{\sqrt5}\begin{pmatrix}1\\-1\end{pmatrix} &= \frac{1}{\sqrt5}\begin{pmatrix} \varphi^n \\ -\psi^n\end{pmatrix}, \\ P\cdot\frac{1}{\sqrt5}\begin{pmatrix}\varphi^n\\-\psi^n\end{pmatrix} &= \frac{1}{\sqrt5}\begin{pmatrix} \varphi^{n+1} - \psi^{n+1} \\ \varphi^n - \psi^n\end{pmatrix}. \end{aligned}

第 2 成分を読めば

Fn=φn−ψn5=15[(1+52)n−(1−52)n]F_n = \frac{\varphi^n - \psi^n}{\sqrt5} = \frac{1}{\sqrt5}\left[\left(\frac{1+\sqrt5}{2}\right)^{n} - \left(\frac{1-\sqrt5}{2}\right)^{n}\right]

です。n=2n=2 で確かめると、φ2−ψ2=(φ+ψ)(φ−ψ)=1⋅5\varphi^2 - \psi^2 = (\varphi+\psi)(\varphi-\psi) = 1\cdot\sqrt5 なので F2=1F_2 = 1 となり、正しい値です。∣ψ∣=0.618…<1|\psi| = 0.618\ldots < 1 なので第 2 項は急速に 00 に近づき、FnF_n が φn/5\varphi^n/\sqrt5 に漸近することも読み取れます。

同じ仕組みが連立線形微分方程式にも効きます。ddtx(t)=Ax(t)\frac{d}{dt}\boldsymbol{x}(t) = A\boldsymbol{x}(t)、x(0)=x0\boldsymbol{x}(0) = \boldsymbol{x}_0 の解は x(t)=etAx0\boldsymbol{x}(t) = e^{tA}\boldsymbol{x}_0 ですが、命題 4.1 (3) より AA が対角化可能なら

x(t)=Pdiag⁡(eλ1t,…,eλnt)P−1x0\boldsymbol{x}(t) = P\operatorname{diag}(e^{\lambda_1t},\ldots,e^{\lambda_nt})P^{-1}\boldsymbol{x}_0

です。固有ベクトルの方向ごとに独立な指数関数が走り、Re⁡λi<0\operatorname{Re}\lambda_i < 0 がすべての ii で成り立てば解は 00 に収束します。これが線形系の安定性判定の原理です。

5. 実対称行列はつねに直交行列で対角化できる

Section titled “5. 実対称行列はつねに直交行列で対角化できる”

対角化できない行列があると分かった以上、「この種類なら必ず対角化できる」という十分条件が欲しくなります。応用上いちばん重要なのが実対称行列です。AT=AA^{\mathsf{T}} = A という一見些細な条件が、固有値の実数性・固有ベクトルの直交性・対角化可能性のすべてを一挙に与えます。以下、Rn\mathbb{R}^n には標準内積 ⟨x,y⟩=xTy\langle x, y\rangle = x^{\mathsf{T}}y を、Cn\mathbb{C}^n には ⟨x,y⟩=xˉTy\langle x, y\rangle = \bar{x}^{\mathsf{T}}y を入れて考えます(内積空間とグラム・シュミット直交化 の 例 3.2[内積空間とグラム・シュミット直交化] を参照してください)。

補題 5.1(実対称行列の固有値と固有ベクトル)✓

A∈Mn(R)A \in M_n(\mathbb{R}) が AT=AA^{\mathsf{T}} = A を満たすとする。このとき次が成り立つ。

  1. AA を複素行列とみなしたときの固有値はすべて実数である。したがって固有ベクトルも実ベクトルの範囲で取れる。
  2. 相異なる固有値 λ≠μ\lambda \ne \mu に属する固有ベクトル v,w∈Rnv, w \in \mathbb{R}^n は直交する。すなわち ⟨v,w⟩=0\langle v, w\rangle = 0。
証明(補題 5.1)

(1) λ∈C\lambda \in \mathbb{C} を固有値、v∈Cn∖{0}v \in \mathbb{C}^n \setminus \{0\} を対応する固有ベクトルとし、Av=λvAv = \lambda v とします。v∗=vˉTv^{*} = \bar{v}^{\mathsf{T}} と書き、スカラー α=v∗Av\alpha = v^{*}Av を考えます。一方では

α=v∗(λv)=λ v∗v=λ∥v∥2\alpha = v^{*}(\lambda v) = \lambda\, v^{*}v = \lambda \|v\|^2

です。他方、1×11\times 1 行列の共役転置はそれ自身の複素共役ですから

αˉ=(v∗Av)∗=v∗A∗v=v∗Av=α\bar{\alpha} = (v^{*}Av)^{*} = v^{*}A^{*}v = v^{*}Av = \alpha

となります。ここで AA が実行列で対称であることから A∗=AˉT=AT=AA^{*} = \bar{A}^{\mathsf{T}} = A^{\mathsf{T}} = A を使いました。αˉ=α\bar\alpha = \alpha なので α\alpha は実数です。∥v∥2>0\|v\|^2 > 0 は正の実数なので λ=α/∥v∥2\lambda = \alpha/\|v\|^2 も実数です。λ\lambda が実数なら A−λIA - \lambda I は実行列であり、実の連立一次方程式 (A−λI)x=0(A-\lambda I)x = 0 が非自明解をもつので、実ベクトルの固有ベクトルが取れます。

(2) Av=λvAv = \lambda v, Aw=μwAw = \mu w とします。AT=AA^{\mathsf{T}} = A より

λ⟨v,w⟩=(λv)Tw=(Av)Tw=vTATw=vT(Aw)=μ vTw=μ⟨v,w⟩\lambda\langle v, w\rangle = (\lambda v)^{\mathsf{T}}w = (Av)^{\mathsf{T}}w = v^{\mathsf{T}}A^{\mathsf{T}}w = v^{\mathsf{T}}(Aw) = \mu\, v^{\mathsf{T}}w = \mu\langle v,w\rangle

です。よって (λ−μ)⟨v,w⟩=0(\lambda - \mu)\langle v,w\rangle = 0 となり、λ≠μ\lambda \ne \mu から ⟨v,w⟩=0\langle v,w\rangle = 0 を得ます。

定理 5.2(実対称行列のスペクトル定理)✓

A∈Mn(R)A \in M_n(\mathbb{R}) が AT=AA^{\mathsf{T}} = A を満たすとする。このとき直交行列 Q∈Mn(R)Q \in M_n(\mathbb{R})(QTQ=IQ^{\mathsf{T}}Q = I)と実対角行列 D=diag⁡(λ1,…,λn)D = \operatorname{diag}(\lambda_1,\ldots,\lambda_n) が存在して

QTAQ=D,すなわちA=QDQT=∑i=1nλiqiqiTQ^{\mathsf{T}}AQ = D, \qquad \text{すなわち} \qquad A = QDQ^{\mathsf{T}} = \sum_{i=1}^{n}\lambda_i q_iq_i^{\mathsf{T}}

が成り立つ。ここで qiq_i は QQ の第 ii 列である。言い換えると、Rn\mathbb{R}^n は AA の固有ベクトルからなる正規直交基底をもつ。

証明(定理 5.2)

nn についての帰納法で示します。

n=1n = 1 のときは Q=(1)Q = (1) とすればよく、主張は自明に成り立ちます。

n≥2n \ge 2 とし、n−1n-1 次以下の実対称行列について主張が成り立つと仮定します。固有多項式 χA\chi_A は C\mathbb{C} 上に根をもつ(代数学の基本定理)ので AA は複素固有値をもち、補題 5.1 (1) よりそれは実数です。その 1 つを λ1\lambda_1 とし、対応する実固有ベクトルを長さ 11 に正規化して q1q_1 とします。

W={ w∈Rn:⟨q1,w⟩=0 }W = \{\, w \in \mathbb{R}^n : \langle q_1, w\rangle = 0 \,\} とおくと dim⁡W=n−1\dim W = n-1 です。WW が AA で不変であることを示します。w∈Ww \in W とすると

⟨q1,Aw⟩=q1TAw=(ATq1)Tw=(Aq1)Tw=λ1q1Tw=0\langle q_1, Aw\rangle = q_1^{\mathsf{T}}Aw = (A^{\mathsf{T}}q_1)^{\mathsf{T}}w = (Aq_1)^{\mathsf{T}}w = \lambda_1 q_1^{\mathsf{T}}w = 0

なので Aw∈WAw \in W です(2 番目の等号で AT=AA^{\mathsf{T}} = A を使いました)。

WW の正規直交基底 (u2,…,un)(u_2, \ldots, u_n) を取り(グラム・シュミットの直交化(定理 6.1)[内積空間とグラム・シュミット直交化] で作れます)、A∣WA|_W のこの基底に関する表現行列を B∈Mn−1(R)B \in M_{n-1}(\mathbb{R}) とします。BB は対称です。実際、正規直交基底に関する表現行列の成分は Bij=⟨ui,Auj⟩B_{ij} = \langle u_i, Au_j\rangle と書け、

Bij=⟨ui,Auj⟩=uiTAuj=(Aui)Tuj=⟨Aui,uj⟩=⟨uj,Aui⟩=BjiB_{ij} = \langle u_i, Au_j\rangle = u_i^{\mathsf{T}}Au_j = (Au_i)^{\mathsf{T}}u_j = \langle Au_i, u_j\rangle = \langle u_j, Au_i \rangle = B_{ji}

となります(ここでも AT=AA^{\mathsf{T}} = A と実内積の対称性を使いました)。

帰納法の仮定より、WW は A∣WA|_W の固有ベクトルからなる正規直交基底 (q2,…,qn)(q_2, \ldots, q_n) をもちます。これらは WW の元なので q1q_1 と直交し、(q1,q2,…,qn)(q_1, q_2, \ldots, q_n) は Rn\mathbb{R}^n の正規直交基底で、すべて AA の固有ベクトルです。これらを列に並べた QQ は QTQ=IQ^{\mathsf{T}}Q = I を満たし(列が正規直交だから)、定理 3.2 より Q−1AQ=DQ^{-1}AQ = D、Q−1=QTQ^{-1} = Q^{\mathsf{T}} なので QTAQ=DQ^{\mathsf{T}}AQ = D です。最後の表示 A=∑iλiqiqiTA = \sum_i \lambda_iq_iq_i^{\mathsf{T}} は QDQTQDQ^{\mathsf{T}} をブロック的に展開したものです。

幾何的に言えば、実対称行列は直交する nn 本の軸を保ち、それぞれを λi\lambda_i 倍に伸縮する変換です。回転やせん断のような「軸のねじれ」は起こりません。複素行列(エルミート行列・正規行列)への一般化は スペクトル定理 の 定理 4.2[スペクトル定理] で扱います。

次の例は二次形式の主軸と、データ解析への応用です。二次形式とは xTAxx^{\mathsf{T}}Ax の形の式で、xx の各成分の 2 次式になります。実対称行列を直交対角化すると、この式から x1x2x_1x_2 のような交差項が消え、平方の和だけが残ります。データ解析では、中心化した(各成分の平均を引いた)データから作る標本共分散行列(成分どうしのばらつきと連動の大きさを並べた対称行列)に同じ定理を使い、ばらつきが最大の方向を求めます。

x₁x₂q₁q₂
例の二次形式 q(x) = 1 の楕円。長い軸は q₂ = (1, −1)/√2 の方向(半径 1)、短い軸は q₁ = (1, 1)/√2 の方向(半径 1/√3)です。

例 5.3(二次形式の主軸と主成分分析)

A=(2112)A = \begin{pmatrix} 2 & 1 \\ 1 & 2\end{pmatrix} は対称です。χA(t)=(t−2)2−1=(t−3)(t−1)\chi_A(t) = (t-2)^2 - 1 = (t-3)(t-1) で固有値は 3,13, 1。λ=3\lambda = 3 では (−111−1)x=0\begin{pmatrix}-1 & 1\\ 1 & -1\end{pmatrix}x = 0 より q1=12(1,1)Tq_1 = \frac{1}{\sqrt2}(1,1)^{\mathsf{T}}、λ=1\lambda = 1 では q2=12(1,−1)Tq_2 = \frac{1}{\sqrt2}(1,-1)^{\mathsf{T}} です。補題 5.1 (2) の予告どおり ⟨q1,q2⟩=12(1−1)=0\langle q_1, q_2\rangle = \frac12(1 - 1) = 0 と直交しています。Q=12(111−1)Q = \frac{1}{\sqrt2}\begin{pmatrix} 1 & 1 \\ 1 & -1\end{pmatrix} とおけば QTAQ=diag⁡(3,1)Q^{\mathsf{T}}AQ = \operatorname{diag}(3,1) です。

二次形式 q(x)=xTAx=2x12+2x1x2+2x22q(x) = x^{\mathsf{T}}Ax = 2x_1^2 + 2x_1x_2 + 2x_2^2 は、y=QTxy = Q^{\mathsf{T}}x と置き換えると q=yTDy=3y12+y22q = y^{\mathsf{T}}Dy = 3y_1^2 + y_2^2 になります。したがって q(x)=1q(x) = 1 は楕円で、その主軸は q1,q2q_1, q_2 の方向、半径はそれぞれ 1/31/\sqrt3 と 11 です。これがコーシーの主軸問題の答えの形です。

同じ定理がデータ解析の主成分分析を支えています。NN 個の dd 次元データを中心化して行に並べた行列を XX とすると、標本共分散行列 S=1N−1XTXS = \frac{1}{N-1}X^{\mathsf{T}}X は対称です((XTX)T=XTX(X^{\mathsf{T}}X)^{\mathsf{T}} = X^{\mathsf{T}}X だから)。定理 5.2 より S=QΛQTS = Q\Lambda Q^{\mathsf{T}} と直交対角化でき、Λ=diag⁡(λ1≥⋯≥λd)\Lambda = \operatorname{diag}(\lambda_1 \ge \cdots \ge \lambda_d) とします。単位ベクトル uu 方向へ射影したデータの分散は uTSuu^{\mathsf{T}}Su ですが、y=QTuy = Q^{\mathsf{T}}u とおくと QQ が直交なので ∥y∥=∥u∥=1\|y\| = \|u\| = 1 であり、

uTSu=yTΛy=∑i=1dλiyi2≤λ1∑i=1dyi2=λ1u^{\mathsf{T}}Su = y^{\mathsf{T}}\Lambda y = \sum_{i=1}^{d}\lambda_iy_i^2 \le \lambda_1\sum_{i=1}^{d}y_i^2 = \lambda_1

が成り立ちます。等号は y=e1y = e_1、すなわち u=q1u = q_1 のときに実際に達成されます。つまり分散が最大になる方向は最大固有値の固有ベクトルであり、その分散は最大固有値そのものです。第 2 主成分以降も、q1q_1 に直交する範囲で同じ議論を繰り返せば得られます。主成分どうしが直交するのは、対称行列の固有ベクトルが直交して取れるという 定理 5.2 の帰結です。

6. 対角化できないとき:ジョルダン標準形

Section titled “6. 対角化できないとき:ジョルダン標準形”

注意 3.10 で見たとおり、C\mathbb{C} 上では固有多項式はつねに 1 次式の積に分解するので、対角化の障害は mg(λ)<ma(λ)m_g(\lambda) < m_a(\lambda)、つまり固有ベクトルの本数不足だけです。足りない分をどう補うか。例 3.9 のせん断行列 (1101)\begin{pmatrix}1&1\\0&1\end{pmatrix} は、対角化はできないものの、すでに「対角成分の 1 つ上に 11 が 1 個あるだけ」という十分単純な形をしています。一般の行列もここまでは簡単にできる、というのがジョルダンの定理です。足りない固有ベクトルの代わりに、A−λIA - \lambda I を掛けると固有ベクトルに落ちてくるベクトル(一般化固有ベクトル)を使って基底を補う、というのが基本のアイデアです。

定義 6.1(ジョルダン細胞とジョルダン標準形)↗

λ∈C\lambda \in \mathbb{C} と正整数 mm に対し、mm 次正方行列

Jm(λ)=(λ1λ⋱⋱1λ)=λIm+NmJ_m(\lambda) = \begin{pmatrix} \lambda & 1 & & \\ & \lambda & \ddots & \\ & & \ddots & 1 \\ & & & \lambda \end{pmatrix} = \lambda I_m + N_m

を固有値 λ\lambda の mm 次ジョルダン細胞という。ここで NmN_m は (i,i+1)(i, i+1) 成分がすべて 11、他が 00 の mm 次行列(記していない成分はすべて 00)である。ジョルダン細胞をブロック対角に並べた行列

J=Jm1(λ1)⊕⋯⊕Jmr(λr)J = J_{m_1}(\lambda_1)\oplus \cdots \oplus J_{m_r}(\lambda_r)

をジョルダン標準形という(λi\lambda_i は重複してよい)。mi=1m_i = 1 の細胞は 11 次の (λi)(\lambda_i) であり、すべての細胞が 11 次のときジョルダン標準形は対角行列になる。

Jm(λ)J_m(\lambda) の意味は、NmN_m の作用を見るとはっきりします。Nme1=0N_m e_1 = 0、Nmej=ej−1N_m e_j = e_{j-1} (j≥2)(j \ge 2) なので、NmN_m は基底ベクトルを 1 つずつ「押し下げて」いき、mm 回で 00 になります(Nmm=ON_m^m = O)。つまり A−λIA - \lambda I が作る 1 本の鎖が 1 つの細胞に対応します。

鎖 1(長さ 3)→ 細胞 J₃(λ)v₃v₂v₁0NNN鎖 2(長さ 1)→ 細胞 J₁(λ)w₁0N最下段の v₁, w₁ が固有ベクトル(ker N の基底)、上段の v₂, v₃ は一般化固有ベクトル
ジョルダン鎖の構造。N = A − λI を掛けるたびに鎖を 1 段下り、最後は 0 に落ちる。鎖の長さが細胞の大きさ、鎖の本数が細胞の個数です。

次の定理の証明は 2 通りの書き方があります。1 つ目は、別の記事で示した一般の構造定理(多項式環上の加群の分類)をそのまま使うもので、短く済みます。2 つ目は、その定理を使わずに空間を「固有値ごとの塊」に分け、各塊を鎖に分ける道筋の骨格です。後者は本文では骨組みだけを述べ、詳しい部分は Appendix に回しています。

定理 6.2(ジョルダン標準形の存在と一意性)✓

A∈Mn(C)A \in M_n(\mathbb{C}) とする。このとき正則行列 P∈GLn(C)P \in GL_n(\mathbb{C})、複素数 λ1,…,λr\lambda_1, \ldots, \lambda_r(重複を許す)、正整数 m1,…,mrm_1, \ldots, m_r(m1+⋯+mr=nm_1 + \cdots + m_r = n)が存在して

P−1AP=Jm1(λ1)⊕⋯⊕Jmr(λr)P^{-1}AP = J_{m_1}(\lambda_1)\oplus\cdots\oplus J_{m_r}(\lambda_r)

となる。さらに、現れる細胞の組(対 (λi,mi)(\lambda_i, m_i) の多重集合)は AA のみによって定まり、細胞を並べる順序を除いて一意である。各 λi\lambda_i は AA の固有値であり、固有値 λ\lambda の細胞の大きさの総和は ma(λ)m_a(\lambda)、細胞の個数は mg(λ)m_g(\lambda) に等しい。

証明(定理 6.2)

存在。 代数学の基本定理(定理 4.3[正則関数の強力な性質])により C\mathbb{C} は代数閉体です。したがって、PID 上の加群の構造定理から導く 定理 7.5[加群と PID 上の構造定理](K=CK=\mathbb{C})により、AA は C[x]\mathbb{C}[x] 加群 Cn\mathbb{C}^n(xx が AA で作用)の素冪因子分解に対応するジョルダン細胞の直和 Je1(λ1)⊕⋯⊕Jeu(λu)J_{e_1}(\lambda_1)\oplus\cdots\oplus J_{e_u}(\lambda_u) に相似です。細胞の大きさの総和は nn なので、これが求める形です。存在の証明はこれで完結しています。各 λi\lambda_i が固有値であることは、細胞 Je(λ)J_{e}(\lambda) が λ\lambda を固有値にもつ(上三角で対角成分が λ\lambda)ことから従います。

以下は、構造定理を使わず固有空間の幾何だけで存在を示す別の道筋の骨格です。3 段階に分かれます(詳細は Appendix と参考文献を参照してください)。

第 1 段階(一般化固有空間への分解)。 AA の相異なる固有値を μ1,…,μs\mu_1,\ldots,\mu_s とし、E~μi=ker⁡(A−μiI)n\tilde{E}_{\mu_i} = \ker(A-\mu_iI)^n とおくと

Cn=E~μ1⊕⋯⊕E~μs\mathbb{C}^n = \tilde{E}_{\mu_1}\oplus\cdots\oplus\tilde{E}_{\mu_s}

であり、各 E~μi\tilde{E}_{\mu_i} は AA で不変です。これにより問題は「固有値がただ 1 つの場合」に帰着します。

第 2 段階(冪零への還元)。 E~μ\tilde{E}_{\mu} の上では N=A−μIN = A - \mu I は冪零、すなわちある kk で Nk=ON^k = O です(定義から Nn=ON^n = O)。A=μI+NA = \mu I + N なので、NN を細胞の形にできれば AA も細胞の形になります。

第 3 段階(冪零作用素の鎖分解)。 冪零作用素 NN に対しては、上図のような鎖からなる基底が取れます。Nk=ON^{k}=O、Nk−1≠ON^{k-1}\ne O として、ker⁡Nk−1\ker N^{k-1} の外にあるベクトル uu を取ると u,Nu,…,Nk−1uu, Nu, \ldots, N^{k-1}u は一次独立な鎖をなします。これで張られる部分空間を除いて次元に関する帰納法を回すと、空間全体が鎖の直和に分かれます。鎖 1 本を長さの順に並べた基底に関する NN の行列は NmN_m そのものなので、AA の行列は Jm(μ)J_m(\mu) になります。

一意性。 命題 6.4 により、固有値 λ\lambda の大きさ jj の細胞の個数は rank⁡(A−λI)j−1\operatorname{rank}(A-\lambda I)^{j-1}, rank⁡(A−λI)j\operatorname{rank}(A-\lambda I)^{j}, rank⁡(A−λI)j+1\operatorname{rank}(A-\lambda I)^{j+1} という AA だけで決まる量から一意に決まります。よって細胞の多重集合は AA で定まります。

最後の主張を確かめます。JJ の固有多項式は各細胞の固有多項式の積で、Jm(λ)J_m(\lambda) は上三角なので χJm(λ)(t)=(t−λ)m\chi_{J_m(\lambda)}(t) = (t-\lambda)^m です。よって固有値 λ\lambda の細胞の大きさの総和が ma(λ)m_a(\lambda) です。また細胞の個数は 命題 6.4 で j=1j=1 とした n−rank⁡(A−λI)=mg(λ)n - \operatorname{rank}(A-\lambda I) = m_g(\lambda) に等しくなります。

注意 6.3

存在の完全な証明は PID 上の構造定理から導く 定理 7.5[加群と PID 上の構造定理] で与えられる。幾何的な道筋の第 1 段階と第 3 段階は Appendix に骨組みを示した。教科書としては齋藤『線型代数入門』第 6 章、Horn–Johnson, Matrix Analysis, Chapter 3、Axler, Linear Algebra Done Right, Chapter 8 が詳しい。単因子(行列 tI−AtI - A の C[t]\mathbb{C}[t] 上の標準形)を経由する証明もあり、佐武『線型代数学』はその流儀である。

命題 6.4(細胞の個数を階数で数える)✓

A∈Mn(C)A \in M_n(\mathbb{C})、λ\lambda を AA の固有値とし、N=A−λIN = A - \lambda I とおく(N0=InN^0 = I_n と約束する)。AA のジョルダン標準形に現れる固有値 λ\lambda の細胞のうち、大きさが jj 以上のものの個数を sjs_j とすると、j≥1j \ge 1 に対して

sj=rank⁡Nj−1−rank⁡Njs_j = \operatorname{rank}N^{j-1} - \operatorname{rank}N^{j}

が成り立つ。とくに大きさがちょうど jj の細胞の個数は

sj−sj+1=rank⁡Nj−1−2rank⁡Nj+rank⁡Nj+1s_j - s_{j+1} = \operatorname{rank}N^{j-1} - 2\operatorname{rank}N^{j} + \operatorname{rank}N^{j+1}

である。

証明(命題 6.4)

P−1AP=JP^{-1}AP = J をジョルダン標準形とします。命題 2.2 (3) より rank⁡Nj=rank⁡(J−λI)j\operatorname{rank}N^{j} = \operatorname{rank}(J - \lambda I)^{j} なので、JJ で計算すればよいことになります。J−λIJ - \lambda I はブロック対角で、階数はブロックごとの階数の和です。ブロックごとに (Jm(μ)−λI)j(J_m(\mu) - \lambda I)^j の階数を求めます。

μ≠λ\mu \ne \lambda の細胞。 Jm(μ)−λI=(μ−λ)Im+NmJ_m(\mu) - \lambda I = (\mu-\lambda)I_m + N_m は対角成分がすべて μ−λ≠0\mu - \lambda \ne 0 の上三角行列なので、行列式は (μ−λ)m≠0(\mu-\lambda)^m \ne 0 であり正則です。正則行列のべきも正則なので、階数はすべての j≥0j \ge 0 で mm です。したがって階差 rank⁡Nj−1−rank⁡Nj\operatorname{rank}N^{j-1} - \operatorname{rank}N^{j} への寄与は m−m=0m - m = 0 です。

μ=λ\mu = \lambda の細胞。 Jm(λ)−λI=NmJ_m(\lambda) - \lambda I = N_m です。Nme1=0N_m e_1 = 0、Nmei=ei−1N_m e_i = e_{i-1} (i≥2)(i\ge2) なので、Nmjei=ei−jN_m^{j}e_i = e_{i-j}(i>ji > j のとき)、Nmjei=0N_m^je_i = 0(i≤ji \le j のとき)となります。よって NmjN_m^{j} の像は e1,…,em−je_1, \ldots, e_{m-j} で張られ、

rank⁡Nmj=max⁡(m−j, 0)\operatorname{rank}N_m^{j} = \max(m-j,\ 0)

です。この細胞の階差への寄与は

max⁡(m−j+1,0)−max⁡(m−j,0)={1(m≥j)0(m≤j−1)\max(m-j+1,0) - \max(m-j,0) = \begin{cases} 1 & (m \ge j) \\ 0 & (m \le j-1)\end{cases}

となります。m≥jm \ge j のときは (m−j+1)−(m−j)=1(m-j+1)-(m-j) = 1、m≤j−1m \le j-1 のときは m−j+1≤0m-j+1 \le 0 なので両方 00 です。

すべての細胞について足し合わせると、階差は「固有値 λ\lambda の細胞のうち大きさが jj 以上のものの個数」に等しくなります。これが sjs_j です。大きさがちょうど jj の個数は「jj 以上の個数」から「j+1j+1 以上の個数」を引いたもの、すなわち sj−sj+1s_j - s_{j+1} であり、代入すると主張の式になります。

例 6.5(3 次行列のジョルダン標準形と変換行列)

A=(110−130−112)A = \begin{pmatrix} 1 & 1 & 0 \\ -1 & 3 & 0 \\ -1 & 1 & 2\end{pmatrix}

のジョルダン標準形と、それを与える PP を求めます。

固有値。 第 3 列に 00 が 2 つ並んでいるので第 3 列で余因子展開すると

χA(t)=det⁡(t−1−101t−301−1t−2)=(t−2)[(t−1)(t−3)+1]=(t−2)(t2−4t+4)=(t−2)3\chi_A(t) = \det\begin{pmatrix} t-1 & -1 & 0 \\ 1 & t-3 & 0 \\ 1 & -1 & t-2\end{pmatrix} = (t-2)\bigl[(t-1)(t-3)+1\bigr] = (t-2)(t^2-4t+4) = (t-2)^3

です。固有値は 22 のみ、ma(2)=3m_a(2) = 3。

重複度。 N=A−2I=(−110−110−110)N = A - 2I = \begin{pmatrix} -1 & 1 & 0 \\ -1 & 1 & 0 \\ -1 & 1 & 0\end{pmatrix} は 3 つの行がすべて等しいので rank⁡N=1\operatorname{rank}N = 1、よって mg(2)=3−1=2m_g(2) = 3-1 = 2 です。mg<mam_g < m_a なので 定理 3.7 より対角化できません。

細胞の形。 N=abTN = ab^{\mathsf{T}}(a=(1,1,1)Ta = (1,1,1)^{\mathsf{T}}, b=(−1,1,0)Tb = (-1,1,0)^{\mathsf{T}})と書けるので N2=a(bTa)bT=(−1+1+0)N=ON^2 = a(b^{\mathsf{T}}a)b^{\mathsf{T}} = (-1+1+0)N = O です。命題 6.4 を使うと、rank⁡N0=3\operatorname{rank}N^0 = 3, rank⁡N=1\operatorname{rank}N = 1, rank⁡N2=0\operatorname{rank}N^2 = 0 より

s1=3−1=2,s2=1−0=1,s3=0−0=0s_1 = 3 - 1 = 2, \qquad s_2 = 1 - 0 = 1, \qquad s_3 = 0-0 = 0

です。よって大きさ 11 の細胞が s1−s2=1s_1 - s_2 = 1 個、大きさ 22 の細胞が s2−s3=1s_2 - s_3 = 1 個で、

J=J2(2)⊕J1(2)=(210020002)J = J_2(2)\oplus J_1(2) = \begin{pmatrix} 2 & 1 & 0 \\ 0 & 2 & 0 \\ 0 & 0 & 2\end{pmatrix}

と決まります。大きさの総和 2+1=3=ma(2)2+1 = 3 = m_a(2)、細胞の個数 2=mg(2)2 = m_g(2) も合っています。

変換行列。 長さ 2 の鎖を作ります。Nv2≠0Nv_2 \ne 0 となる v2v_2 を取ればよく、v2=e1=(1,0,0)Tv_2 = e_1 = (1,0,0)^{\mathsf{T}} とすると v1=Nv2=(−1,−1,−1)T≠0v_1 = Nv_2 = (-1,-1,-1)^{\mathsf{T}} \ne 0 です。N2=ON^2 = O より v1∈ker⁡Nv_1 \in \ker N で、これが固有ベクトルです。次に ker⁡N={x:−x1+x2=0}\ker N = \{x : -x_1+x_2 = 0\} から v1v_1 と一次独立な元を選びます。v3=(0,0,1)Tv_3 = (0,0,1)^{\mathsf{T}} は ker⁡N\ker N に属し(第 1・第 2 成分が 00 なので)、v1v_1 とは一次独立です。そこで

P=(v1 v2 v3)=(−110−100−101)P = (v_1\ v_2\ v_3) = \begin{pmatrix} -1 & 1 & 0 \\ -1 & 0 & 0 \\ -1 & 0 & 1\end{pmatrix}

とおきます。第 3 列で余因子展開すると det⁡P=1⋅det⁡(−11−10)=1≠0\det P = 1\cdot\det\begin{pmatrix}-1&1\\-1&0\end{pmatrix} = 1 \ne 0 なので PP は正則です。実際に確かめます。

Av1=2v1,Av2=(1−1−1)=2(100)+(−1−1−1)=2v2+v1,Av3=(002)=2v3Av_1 = 2v_1,\qquad Av_2 = \begin{pmatrix}1\\-1\\-1\end{pmatrix} = 2\begin{pmatrix}1\\0\\0\end{pmatrix} + \begin{pmatrix}-1\\-1\\-1\end{pmatrix} = 2v_2 + v_1, \qquad Av_3 = \begin{pmatrix}0\\0\\2\end{pmatrix} = 2v_3

です(Av2Av_2 は AA の第 1 列、Av3Av_3 は第 3 列そのものです)。これは 定理 3.2 の証明と同じ「列ごとの読み替え」により AP=PJAP = PJ、すなわち P−1AP=JP^{-1}AP = J を意味します。

べき乗。 J2(2)=2I2+N2J_2(2) = 2I_2 + N_2 で N22=ON_2^2 = O、しかも 2I22I_2 と N2N_2 は可換なので二項定理が使えて

J2(2)k=(2I2)k+k(2I2)k−1N2=(2kk2k−102k)J_2(2)^k = (2I_2)^k + k(2I_2)^{k-1}N_2 = \begin{pmatrix} 2^k & k2^{k-1} \\ 0 & 2^k\end{pmatrix}

です。よって Ak=P(J2(2)k⊕(2k))P−1A^k = P\bigl(J_2(2)^k \oplus (2^k)\bigr)P^{-1} が具体的に計算できます。対角化できなくても、べき乗は閉じた式で書けるということです。

注意 6.6

一般に Jm(λ)k=∑j=0m−1(kj)λk−jNmjJ_m(\lambda)^k = \sum_{j=0}^{m-1}\binom{k}{j}\lambda^{k-j}N_m^{j} である(λI\lambda I と NmN_m が可換なので二項定理が使え、Nmm=ON_m^{m} = O で打ち切られる)。成分は (kj)λk−j\binom{k}{j}\lambda^{k-j}、すなわち kk の多項式と指数関数の積である。線形漸化式の特性方程式が重解 λ\lambda をもつときに一般解へ kλkk\lambda^{k}, k2λkk^2\lambda^{k} といった項が現れる理由は、まさにこれである。例 4.2 のように相異なる根しかない場合には純粋な指数関数だけが現れたことと対照的である。

演習 7.1易

A,B∈Mn(K)A, B \in M_n(K) が相似ならば tr⁡A=tr⁡B\operatorname{tr}A = \operatorname{tr}B かつ det⁡A=det⁡B\det A = \det B であることを示してください。また、tr⁡\operatorname{tr} と det⁡\det と固有多項式がすべて一致しても相似とは限らないことを、22 次の具体例で示してください。

解答

前半は 命題 2.2 (2) そのものです。念のため筋を再掲すると、B=P−1APB = P^{-1}AP のとき固有多項式が一致し、その tn−1t^{n-1} の係数が −tr⁡-\operatorname{tr}、定数項が (−1)ndet⁡(-1)^n\det なので、両者が一致します。

後半は A=I2A = I_2, B=(1101)B = \begin{pmatrix} 1 & 1 \\ 0 & 1\end{pmatrix} を取ります。どちらも固有多項式は (t−1)2(t-1)^2、トレースは 22、行列式は 11 です。しかし A=I2A = I_2 に相似な行列は P−1I2P=I2P^{-1}I_2P = I_2 だけなので、B≠I2B \ne I_2 より両者は相似ではありません。定理 3.7 の言葉でいえば、AA は対角化可能、BB は mg(1)=1<2=ma(1)m_g(1) = 1 < 2 = m_a(1) なので対角化不可能であり、対角化可能性という性質で区別できています。

演習 7.2標準

A=(5−113)A = \begin{pmatrix} 5 & -1 \\ 1 & 3\end{pmatrix} について、対角化可能かどうかを判定し、ジョルダン標準形 JJ とそれを与える PP を求め、さらに AkA^k(k≥0k \ge 0)を求めてください。

解答

固有多項式は det⁡(t−51−1t−3)=(t−5)(t−3)+1=t2−8t+16=(t−4)2\det\begin{pmatrix} t-5 & 1 \\ -1 & t-3\end{pmatrix} = (t-5)(t-3)+1 = t^2-8t+16 = (t-4)^2 なので、固有値は 44 のみで ma(4)=2m_a(4) = 2 です。M=A−4I=(1−11−1)M = A - 4I = \begin{pmatrix} 1 & -1 \\ 1 & -1\end{pmatrix} は 2 つの行が等しいので rank⁡M=1\operatorname{rank}M = 1、よって mg(4)=2−1=1m_g(4) = 2-1 = 1 です。mg<mam_g < m_a なので 定理 3.7 より対角化できません。

命題 6.4 を使うと、M2=OM^2 = O(実際 M2=(1−11−1)2=(0000)M^2 = \begin{pmatrix}1&-1\\1&-1\end{pmatrix}^2 = \begin{pmatrix}0&0\\0&0\end{pmatrix})なので s1=2−1=1s_1 = 2-1 = 1, s2=1−0=1s_2 = 1-0 = 1、大きさ 22 の細胞が s2−s3=1s_2 - s_3 = 1 個、大きさ 11 の細胞が s1−s2=0s_1 - s_2 = 0 個です。よって J=J2(4)=(4104)J = J_2(4) = \begin{pmatrix} 4 & 1 \\ 0 & 4\end{pmatrix}。

鎖を作ります。v2=e1=(1,0)Tv_2 = e_1 = (1,0)^{\mathsf{T}} とすると v1=Mv2=(1,1)T≠0v_1 = Mv_2 = (1,1)^{\mathsf{T}} \ne 0 です。P=(1110)P = \begin{pmatrix} 1 & 1 \\ 1 & 0\end{pmatrix} とおくと det⁡P=−1≠0\det P = -1 \ne 0、P−1=(011−1)P^{-1} = \begin{pmatrix} 0 & 1 \\ 1 & -1\end{pmatrix} です。Av1=(5−1,1+3)T=4v1Av_1 = (5-1, 1+3)^{\mathsf{T}} = 4v_1、Av2=(5,1)T=4v2+v1Av_2 = (5,1)^{\mathsf{T}} = 4v_2 + v_1 なので AP=PJAP = PJ、すなわち P−1AP=JP^{-1}AP = J です。

べき乗は 注意 6.6 の式より Jk=(4kk4k−104k)J^k = \begin{pmatrix} 4^k & k4^{k-1} \\ 0 & 4^k\end{pmatrix} なので

Ak=PJkP−1=(4kk4k−1+4k4kk4k−1)(011−1)=(4k+k4k−1−k4k−1k4k−14k−k4k−1)A^k = PJ^kP^{-1} = \begin{pmatrix} 4^k & k4^{k-1}+4^k \\ 4^k & k4^{k-1}\end{pmatrix}\begin{pmatrix} 0 & 1 \\ 1 & -1\end{pmatrix} = \begin{pmatrix} 4^k + k4^{k-1} & -k4^{k-1} \\ k4^{k-1} & 4^k - k4^{k-1}\end{pmatrix}

です。k=0k=0 で II、k=1k=1 で (5−113)=A\begin{pmatrix}5&-1\\1&3\end{pmatrix} = A となり、検算できます。

演習 7.3標準

A∈Mn(R)A \in M_n(\mathbb{R}) を実対称行列とします。次の 2 条件が同値であることを示してください。

  1. すべての x∈Rnx\in\mathbb{R}^n に対して xTAx≥0x^{\mathsf{T}}Ax \ge 0(AA は半正定値)。
  2. AA のすべての固有値は 00 以上である。
解答

(2) ⇒\Rightarrow (1)。 定理 5.2 より直交行列 QQ と D=diag⁡(λ1,…,λn)D = \operatorname{diag}(\lambda_1,\ldots,\lambda_n) で A=QDQTA = QDQ^{\mathsf{T}} と書けます。x∈Rnx \in \mathbb{R}^n を任意に取り y=QTxy = Q^{\mathsf{T}}x とおくと

xTAx=xTQDQTx=yTDy=∑i=1nλiyi2x^{\mathsf{T}}Ax = x^{\mathsf{T}}QDQ^{\mathsf{T}}x = y^{\mathsf{T}}Dy = \sum_{i=1}^{n}\lambda_iy_i^2

です。仮定 (2) よりすべての λi≥0\lambda_i \ge 0、また yi2≥0y_i^2 \ge 0 なので和は 00 以上です。

(1) ⇒\Rightarrow (2)。 λ\lambda を AA の固有値とします。AA は実対称なので 補題 5.1 (1) より λ\lambda は実数で、実の固有ベクトル v≠0v \ne 0 が取れます。x=vx = v として仮定 (1) を使うと

0≤vTAv=vT(λv)=λ∥v∥20 \le v^{\mathsf{T}}Av = v^{\mathsf{T}}(\lambda v) = \lambda\|v\|^2

です。∥v∥2>0\|v\|^2 > 0 なので両辺を割って λ≥0\lambda \ge 0 を得ます。

なお 例 5.3 の共分散行列 S=1N−1XTXS = \frac{1}{N-1}X^{\mathsf{T}}X は、xTSx=1N−1∥Xx∥2≥0x^{\mathsf{T}}Sx = \frac{1}{N-1}\|Xx\|^2 \ge 0 なので半正定値であり、この同値性からその固有値(各主成分の分散)はすべて 00 以上だと分かります。

この演習の考え方は、NN を 1 回掛けるごとに、各鎖から基底ベクトルが 1 本ずつ消えて階数が下がる、ということです。長さが jj 以上の鎖は jj 回目の掛け算でもまだ 1 本残っているので、rank⁡Nj−1−rank⁡Nj\operatorname{rank}N^{j-1} - \operatorname{rank}N^{j} が「長さ jj 以上の鎖の本数」になります。

演習 7.4難

A∈M7(C)A \in M_7(\mathbb{C}) の固有多項式が (t−λ)7(t-\lambda)^7 であり、N=A−λIN = A - \lambda I について

rank⁡N=4,rank⁡N2=2,rank⁡N3=1,rank⁡N4=0\operatorname{rank}N = 4,\quad \operatorname{rank}N^2 = 2,\quad \operatorname{rank}N^3 = 1,\quad \operatorname{rank}N^4 = 0

が分かっているとします。AA のジョルダン標準形を決定してください。

解答

固有値は λ\lambda ただ 1 つです。rank⁡N0=rank⁡I7=7\operatorname{rank}N^0 = \operatorname{rank}I_7 = 7 に注意して 命題 6.4 を適用します。大きさ jj 以上の細胞の個数 sjs_j は

s1=7−4=3,s2=4−2=2,s3=2−1=1,s4=1−0=1,s5=0−0=0.\begin{aligned} s_1 &= 7 - 4 = 3, & s_2 &= 4 - 2 = 2, \\ s_3 &= 2 - 1 = 1, & s_4 &= 1 - 0 = 1, \\ s_5 &= 0 - 0 = 0. && \end{aligned}

j≥5j \ge 5 ではすべて 00 です。大きさがちょうど jj の細胞の個数は sj−sj+1s_j - s_{j+1} なので

大きさ 1:s1−s2=1,大きさ 2:s2−s3=1,大きさ 3:s3−s4=0,大きさ 4:s4−s5=1\begin{aligned} \text{大きさ }1 &: s_1 - s_2 = 1, & \text{大きさ }2 &: s_2 - s_3 = 1, \\ \text{大きさ }3 &: s_3 - s_4 = 0, & \text{大きさ }4 &: s_4 - s_5 = 1 \end{aligned}

です。したがって

J=J4(λ)⊕J2(λ)⊕J1(λ)J = J_4(\lambda)\oplus J_2(\lambda)\oplus J_1(\lambda)

です。検算として、大きさの総和は 4+2+1=74+2+1 = 7 で行列のサイズと一致し、細胞の個数は 3=s1=7−rank⁡N=mg(λ)3 = s_1 = 7 - \operatorname{rank}N = m_g(\lambda) で 定理 6.2 の主張とも整合します。また最大の細胞の大きさ 44 は、N4=ON^4 = O かつ N3≠ON^3 \ne O(rank⁡N3=1≠0\operatorname{rank}N^3 = 1 \ne 0)であることと合っています。

  • 齋藤正彦『線型代数入門』東京大学出版会、1966 — 第 5 章(固有値と固有ベクトル)、第 6 章(単因子およびジョルダンの標準形)。
  • 佐武一郎『線型代数学(新装版)』裳華房、2015 — 単因子論を経由してジョルダン標準形を構成する流儀の標準的な文献。
  • Sheldon Axler, Linear Algebra Done Right, 3rd ed., Springer, 2015 — Chapter 7(内積空間上の作用素とスペクトル定理)、Chapter 8(複素ベクトル空間上の作用素と一般化固有ベクトル)。
  • Roger A. Horn and Charles R. Johnson, Matrix Analysis, 2nd ed., Cambridge University Press, 2013 — Chapter 3(相似に関する標準形とジョルダン標準形)。
  • Gilbert Strang, Introduction to Linear Algebra, 5th ed., Wellesley-Cambridge Press, 2016 — Chapter 6(固有値と固有ベクトル、対角化と対称行列)。
  • Lloyd N. Trefethen and David Bau III, Numerical Linear Algebra, SIAM, 1997 — Part V(固有値問題。対角化を数値計算にそのまま使うことの危うさについて)。

Appendix: 一般化固有空間分解の骨組み

Section titled “Appendix: 一般化固有空間分解の骨組み”

定理 6.2 の第 1 段階と第 3 段階について、証明の骨組みを補います。A∈Mn(C)A \in M_n(\mathbb{C}) を固定し、λ\lambda をその固有値、N=A−λIN = A - \lambda I とします。

核の増大列は必ず止まります。 ker⁡N⊆ker⁡N2⊆⋯\ker N \subseteq \ker N^2 \subseteq \cdots は明らかに増大列です(Njx=0N^jx = 0 なら Nj+1x=N(Njx)=0N^{j+1}x = N(N^jx) = 0)。次元は nn で頭打ちなので、ある k≤nk \le n で ker⁡Nk=ker⁡Nk+1\ker N^{k} = \ker N^{k+1} となります。さらに、いったん等号が成り立てばその先もずっと等号です。実際 x∈ker⁡Nk+2x \in \ker N^{k+2} とすると Nx∈ker⁡Nk+1=ker⁡NkNx \in \ker N^{k+1} = \ker N^{k} なので Nk(Nx)=0N^{k}(Nx) = 0、すなわち x∈ker⁡Nk+1x \in \ker N^{k+1} です。したがって ker⁡Nn=ker⁡Nn+1=⋯\ker N^{n} = \ker N^{n+1} = \cdots であり、これを E~λ\tilde{E}_\lambda(一般化固有空間)と書きます。

空間は核と像に分かれます。 M=NnM = N^{n} とおくと Cn=ker⁡M⊕im⁡M\mathbb{C}^n = \ker M \oplus \operatorname{im} M が成り立ちます。まず次元は次元定理(階数・退化次数の関係)より dim⁡ker⁡M+dim⁡im⁡M=n\dim\ker M + \dim\operatorname{im}M = n です。交わりが 00 であることを見ます。x∈ker⁡M∩im⁡Mx \in \ker M \cap \operatorname{im}M とすると x=Myx = My と書け、0=Mx=M2y=N2ny0 = Mx = M^2y = N^{2n}y です。前段落より ker⁡N2n=ker⁡Nn\ker N^{2n} = \ker N^{n} なので y∈ker⁡Nn=ker⁡My \in \ker N^n = \ker M、よって x=My=0x = My = 0 です。次元の和が nn で交わりが 00 なら直和分解になります。ker⁡M\ker M と im⁡M\operatorname{im}M はどちらも AA で不変です(AA と MM が可換だから)。

残りの部分では λ\lambda は固有値ではありません。 im⁡M\operatorname{im}M 上で NN は単射です(x=Myx = My かつ Nx=0Nx = 0 なら x∈ker⁡N∩im⁡M⊆ker⁡M∩im⁡M=0x \in \ker N \cap \operatorname{im}M \subseteq \ker M\cap\operatorname{im}M = 0)。つまり im⁡M\operatorname{im}M に制限した AA は固有値 λ\lambda をもちません。よって固有値の個数に関する帰納法により、Cn\mathbb{C}^n はすべての固有値の一般化固有空間の直和に分かれます。

冪零作用素は鎖に分かれます。 E~λ\tilde{E}_\lambda 上で NN は冪零です。Nk=ON^{k} = O、Nk−1≠ON^{k-1}\ne O とし、Nk−1u≠0N^{k-1}u \ne 0 となる uu を取ると、u,Nu,…,Nk−1uu, Nu, \ldots, N^{k-1}u は一次独立です(c0u+c1Nu+⋯+ck−1Nk−1u=0c_0u + c_1Nu+\cdots+c_{k-1}N^{k-1}u = 0 に Nk−1N^{k-1} を掛けると c0Nk−1u=0c_0N^{k-1}u = 0 より c0=0c_0 = 0、以下 Nk−2N^{k-2} を掛けて c1=0c_1 = 0、と順に決まります)。この鎖が張る NN 不変部分空間を UU とすると、UU の NN 不変な補空間が取れることが示せ、その補空間で次元に関する帰納法を回すと、空間全体が鎖の直和になります。鎖を「短いものから長いものへ」並べれば、その基底に関する行列がジョルダン標準形です。この最後の補空間の存在が技術的な山場で、詳細は参考文献に挙げた各書を参照してください。

このテーマの 100 本ノック(100 問)

執筆: Claude Code(Sonnet 5.5)・監査 3 回(Claude Code)・最終 2026-10-12

この記事の誤りを報告する ・運営: 夢現技研合同会社 ・料金 ・利用条件 ・特定商取引法に基づく表記

© 2026 夢現技研合同会社 ・コード例は MIT ライセンスです。