作が文字通り縦横にできて、そのような操作に対して、付随する４つの部分空間の次元（とくに階数）は一定であり続ける*56 。
なお、この節の最初でも指摘したように、双対性に関する議論で必要なことは、数の範囲が加減乗除で閉じていることで、複素数あるいは実数に限るものではないことを再度強調しておく。

10 行列の対角化
この節では、スカラーの範囲は、とくに断らない限り複素数とする。正方行列 D で次の形のものを対角行列 (diagonal matrix) という。

λ1
0D=





0
λ2..
.

0..

.

..

.

00 
.
0
λn

与えられた n × n 行列 A に対して、逆をもつ n × n 行列 T をうまく選んで T −1 AT (A の相似変形という)が対角行列になるようにする操作を行列の対角化 (diagonalization) と呼ぶ。対角化の直接の御利益は冪の計算が簡単になること。
ここで、行列の冪 (べき) について復習しておこう。正方行列 A と自然数 m (m = 1, 2, · · · ) に対して、A を m 回かけて得られる行列を Am = A · · · A のように書いて A の m 乗とよぶのであった。指数法則(Al )m = Alm , Al Am = Al+m が成り立つことに再度注意。
問 10.1. 対角行列 D に対して、D2 , D 3 , · · · の表示を与えよ。また、(T −1 AT )m = T −1 Am T を確かめよ。

→, . . . −対角化の行列を見つけるために、T を縦割りにして T = (−xx→1n ) と表すと、AT = T D という関係は→−A−xj = λj →xj ,j = 1, . . . , n→となる。そこで、行列 A に対して、ベクトル −x ̸= 0 が→→A−x = λ−x→なる関係をみたすとき、−x を固有値 (eigenvalue) λ の固有ベクトル (eigenvector) と称える。
定理 10.1. 行列 A の固有値 λ は、方程式（固有方程式, eigen*57 equation, という）|tIn − A| = 0の解である（左辺を固有多項式という）。

Proof. 定理 8.6 による。
系 10.2. 行列 A の固有値と転置行列 t A の固有値は一致する。
問 10.2. n 次正方行列 A, B に対して、２つの行列 AB, BA の固有多項式が一致することを示せ。
*56 群の言葉を使えば、行列群 GLm (CCC) と GLn ( ) の Mm,n ( ) への双作用に関する軌道の完全不変量が階数の意味である。
*57 これは独語であるが、その英訳である characteristic を使うことも多い。ちなみに、こちらの和訳は「特性」をあてる。

36

命題 10.3. 行列 A の固有多項式 fA (t) = |tIn − A| は、

fA (t) = tn − (a11 + · · · + ann )tn−1 + · · · + (−1)n |A|という形の t の n 次式であり、相似変形で不変である。

|tIn − T −1 AT | = |tIn − A|.
とくに、複素数を成分とする正方行列は複素数の固有値を必ずもつ*58 。

Proof. 相似不変性は、|tIn − T −1 AT | = |T −1 (tIn − A)T | = |T |−1 |tIn − A||T | = |tIn − A| と計算する。行列式の完全展開式|B| =∑sgn(σ) bσ(1),1 . . . bσ(n),n ,B = tIn − A

σで、t が含まれる因子は対角成分 b11 , . . . , bnn のみであるから、一箇所でも対角成分でない因子が現れると、その項には他にも対角成分からはずれる因子が現れることになり、そのような項に含まれる t の次数は n − 2以下になる。従って、|tIn − A| の中の tn , tn−1 の係数は対角成分の積(t − a11 )(t − a22 ) . . . (t − ann ) = tn − (a11 + · · · + ann )tn−1 + · · ·の中に含まれるそれと一致する。なお、定数項の形は、det(−A) = (−1)n det(A) からわかる。
あとは、複素係数の n 次方程式は複素数の範囲内で必ず解をもつこと (定理 B.1) を使うだけ。
問 10.3. (♯) 正方行列 A の対角成分の和 a11 + · · · + ann を A の跡*59 あるいはトレース (trace) と呼んで、tr(A) のように表す。上の命題からわかるように跡は相似変形で不変であるが、より強く tr(AB) = tr(BA)が成り立つ。
問 10.4. (♯) 行列式 det(X) で X の各成分 xij が 実変数 t の関数であるとき、等式

dd−d−→, · · · , −→, · · · , −−→det(−xx→xx→x→1n ) = det(1n ) + · · · + det(x1 , · · · ,n)dt
dt
dt−→ →→を確かめ、上の命題に対する別証明を試みよ。また、３次の正方行列 A = (−a , b ,−c ) に対して、()b2 c2a ca bdet(tI3 − A) = t3 − (a1 + b2 + c3 )t2 ++ 1 1 + 1 1 t − det(A)b3 c3a3 c3a2 b2を示せ。
定義 10.4. 行列 A の固有値全体 λ1 , . . . , λr を使って、固有多項式を|tIn − A| = (t − λ1 )n1 · · · (t − λr )nrと因数分解するとき、nj を固有値 λj の重複度 (multiplicity) という。

→
定義 10.5. 行列 A の固有値 λ に対して、連立一次方程式 (λIn − A)−x = 0 の解空間 ker(λIn − A) を固有値 λ の固有空間 (eigenspace) と呼び Vλ と書くことにする。

*58 行列代数における複素数および行列式の意義は、この一点に尽きるといってよいだろう。
*59 積と紛れがないように、「あと」と唱える。

37命題 10.6. 行列 A の固有値 λ に対して、固有空間 Vλ の次元 d は、λ の重複度以下である。

→, · · · , −→ を補う形で全体の基底を作り (補題 9.3)、T = (−→, · · · , −Proof. 固有空間 Vλ の基底 −xxxx→1d1n ) による行列 A の相似変形を行うと(λIdAT = T0BC)という形になるので、|tIn − A| = |tIn − T −1 AT | = (t − λ)d |tIn−d − C| (命題 6.6) からわかる。
定理 10.7. 行列 A の異なる固有値すべてに名前をつけて {λ1 , · · · , λr } とする。固有値 λi の固有空間の次元を di 、その重複度を ni で表す。このとき A が対角化可能であるための必要十分条件は、すべての 1 ≤ i ≤ rについて di = ni が成り立つこと。

∑r
Proof. 対角化できれば、固有ベクトルからなる基底が存在するから、n ≤ i=1 di . これと di ≤ ni および∑i ni = n と併せて、等号の成立がわかる。
逆に、等号がなりたつとする。(−x→)
を固有空間 V の基底とする。これらを一列に並べると、等号i,j 1≤j≤diλi成立の仮定から、n 個のベクトルの集団が得られる。そこで、あとはこれが１次独立であるかが問題となり、次の補題*60 からわかる。実際、

dir ∑∑ti,j −x→i,j = 0i=1 j=1とすると、∑di−→j=1 ti,j xij ∈ Vλi は異なる固有値 λi の固有空間に属すので、∑−→

j ti,j xi,j = 0 (i = 1, · · · , r) となり、(−x→i,j )1≤j≤di が Vλi の基底であることから、ti,j = 0 (1 ≤ j ≤ di , 1 ≤ i ≤ r) が従う。

補題 10.8. 異なる固有値の固有空間に属するベクトルの和が 0 となれば、個々のベクトルも 0 である。

→, . . . , −→ を対応する固有ベクトルとする。もし、Proof. λ1 , . . . , λr を異なる固有値とし、−xx1r−→ + ··· + −→=0xx1r→ = ··· = −→ = 0 である。実際、(A − λ ) . . . (A − λ ) をかけると、が成り立てば、−xx1r1r−1→−→ = (λ − λ ) · · · (λ − λ )−→0 = (A − λ1 ) · · · (A − λr−1 )−xrr1rr−1 xr−→

→ = 0 がわかる。他についても同様。
から −xr→→
問 10.5. A−x = λ−x であれば、→→(A − α1 I) · · · (A − αm I)−x = (λ − α1 ) · · · (λ − αm )−x.

対角化の手続き
ステップ１ 固有方程式を解くことにより、固有値を求めると共に固有値の重複度を調べる。
ステップ２ 固有空間を連立一次方程式の解空間として実現し、あわせて、固有空間の基底を求める。

*60 これの更なる拡張が定理 C.2 で与えられる。

38

ステップ３ ステップ２で求めた固有空間の次元とステップ１で求めた重複度が一致しない固有値が一つでもあれば、扱っている行列は対角化できない。そうでなければ、すなわち、すべての固有値に対して、固有空間の次元と重複度が一致しているならば、各固有空間の基底を並べることにより全体の基底を得る
ので、対応する行列を→, . . . , −T = (−xx→1n ),と書けば、→→
A−xj = λ j −xjλ1
0−1T AT = 0
λ200

00
..
.という形で対角化が実現される。
対角化の手続きで最も面倒な部分は、固有方程式を解く（固有値を求める）ところである。行列のサイズが３以上の場合は、固有方程式は一般には具体的に解きがたい。よく本とかに載っている対角化の問題は、ではどうやって作るのかと言えば、固有値と固有ベクトルを最初に与えて、それから対角化する前の行列を逆算するという「ずるい」方法を取ることになる。
例 10.9. 与えられた固有値と固有ベクトルから、もとの行列を復元し、復元した行列から逆に、上で述べた対角化の手続きに従って、対角化を実行してみよう。例えば、次の行列は、対角化可能である。

2−2−1
a−2 −131 01 6a − 2b − 3c3 2 1 1 1 0 = −6a + 3b + 3c−3a + 3c
3 2 2cb4a − 2b − 2c−4a + 3b + 2c−2a + 2c
2a − 2c−2a + 2c .
−a + 2c

問 10.6. (♯)(i) 上の例で、a, b, c に色々な値を代入して対角化の手続きを確認する。
(ii) 行列 T およびその逆行列 T −1 の成分が全て整数となるような行列はどのようにして作り出せるか考えてみる。（ヒント：基本行列の積。）
２行２列の行列については、固有方程式が２次方程式になることもあって、全てのことを完全に実行するこ(とが可能である。例えば、

A=a bc d)と置いて、その対角可能性について調べてみよう。
まず固有方程式は、

t − a −b= t2 − (a + d)t + ad − bc = 0−c t − dとなるので、これが異なる二つの解をもてば対角化可能となる (何故か)。
そこで対角化できない可能性のあるのは、重根 (multiple root）をもつ場合、すなわち(a + d)2 − 4(ad − bc) = (a − d)2 + 4bc = 0でなければならない。このとき A の固有値は、λ = (a + d)/2 のただ一つである。したがってこのような行列が対角化できるのは、

A=T(λ0)0
T −1 = λI2λ39の場合、すなわち、a = d, b = c = 0 のときに限る。
まとめると、2 × 2 行列 A が対角化できるための必要十分条件は、(i) A が単位行列のスカラー倍であるかまたは (ii) (a − d)2 + 4bc ̸= 0、である。
問 10.7. a, b, c, d が実数のときに、固有方程式が実数解をもつための必要十分条件を調べ、実数の固有値をもたない実行列を具体的に一つ挙げよ。
問 10.8. (a − d)2 + 4bc = 0 の場合の固有ベクトルを求めよ。
例 10.10. 行列()
ab−b a + 2bは、b ̸= 0 であれば、対角化できない。
問 10.9. 上の例で与えた行列の固有値と固有ベクトルを求めよ。
対角化の具体的応用例では、上で述べたような対角化そのものよりも、固有値と固有ベクトルを求めたあとは、問題になっているベクトルを固有ベクトルの和で表すだけで済むことが多い。また、固有値を求める際も、行列式としての固有方程式を計算せずに直接固有ベクトル方程式を解いてしまう方がときには効率的である。
質量が 1 の２つの質点を３つのバネでつないだ
質点１
ばね A

質点２
ばね B

ばね Cという状況を考えよう。質点１の変位を x で、質点２の変位を y で表し、それぞれのばねのばね定数を a, b,c とすれば、運動方程式は、

d2dt2( ) (x−a − b=yb)( )bx−b − cyとなる。そこで、右辺の行列の固有ベクトル(が見つかれば、−a − bb)( )( )buu=λ−b − cvv()( )x(t)u= f (t)y(t)vと置くことにより、

d2f = λf (t)dt2に帰着する。
問 10.10. (♯) 三つのばね定数が共通の値 k に近いとき、すなわち α = a − k, β = b − k, γ = c − k が微小量であるとき、行列(−a − bbの固有値と固有ベクトルを求めよ。

40)
b−b − c