ゲルシュゴリンの定理
数学におけるゲルシュゴリンの定理(ゲルシュゴリンのていり、Gershgorin circle theorem)は正方行列の固有値の大まかな存在範囲を示す。ゲルシュゴリンの円板定理とも呼ばれる。この定理を初めて発表したのはソヴィエトの数学者セムヨン・アラノヴィッチ・ゲルシュゴリン である。近年では精度保証付き数値計算に用いられることもある。
n × n-複素行列 A の各成分を a_{ij} とする。また各 i ∈ 1, …, n に対して
R_i = \sum_{j\neq{i} \left|a_{ij}\right|
を第 i-行の非対角成分の絶対和とする。このとき、aii を中心とする半径 Ri の閉円板 D(aii, Ri) をゲルシュゴリン円板 (Gershgorin disc) と言う。
定理 (Gershgorin) : A の任意の固有値は少なくとも一つのゲルシュゴリン円板 D(aii, Ri) の上に載っている
証明. A の固有値 λ とそれに属する固有ベクトル x = (xj) を取り、固有ベクトル x のうち絶対値が最大となる成分の番号 i ∈ 1, …, n (xi = maxj xj) を選ぶと xi > 0 である(さもなくば x = 0 である)。x は固有ベクトルゆえ Ax = λx が成り立つが、これは各行について
\sum_j a_{ij} x_j = \lambda x_i
が成り立つということであり、対角成分を移行して
\sum_{j \neq i} a_{ij} x_j = \lambda x_i - a_{ii} x_i
が得られる。i を上で述べたように選んだならば、選び方から xi ≠ 0 だから、両辺を xi で割って絶対値を取れば
|\lambda - a_{ii}| = \left|\frac{\sum_{j\ne i} a_{ij} x_j}{x_i}\right| \le \sum_{j\ne i} \left| \frac{a_{ij} x_j}{x_i} \right| \le \sum_{j\ne i} |a_{ij}| = R_i
を得る。ここで最後の不等号が成り立つことは
\left| \frac{x_j}{x_i} \right| \leq 1 \quad \text{for }j \neq i
による。
系: A の固有値は A の(行ではなく)列に対応して作られるゲルシュゴリン円板の上にも載っていなければならない。
証明は A の代わりに A の転置行列 AT を考えればよい。
例: 対角行列に対しゲルシュゴリン円板はその行列のスペクトルそのものである。逆にゲルシュゴリン円板がスペクトルに一致するならば、その行列は対角行列である。
この定理を解釈する一つの方法は、「複素正方行列の非対角成分のノルムが十分小さいならば、その行列の固有値は対角成分から「あまり遠くならない」」と考えることである。従って、非対角成分のノルムを減らすことで行列の固有値を近似するという方法論を考えることができる。もちろん、非対角成分を最小化する過程において対角成分は変わってしまうかもしれない。
ゲルシュゴリン円板の一つが、ほかのどの円板と交わらないならば、その円板はちょうど一つの固有値を含む。しかし、円板が他の円板と交わるならば、その円板は一つも固有値を含まないことが起こり得る(例えば
A=\begin{pmatrix}0&1\\4&0\end{pmatrix} や A=\begin{pmatrix}1&-2\\1&-1\end{pmatrix}
など)。一般の場合に、定理の主張を以下のように強めることができる。
定理 : k 枚のゲルシュゴリン円板の合併が残りの n − k 枚の円板と交わらないならば、前者の円板の合併はちょうど k 個の A の固有値を含み、後者の円板には n − k 個の固有値を含む。
証明. A の対角成分と同じ成分を持つ対角行列 D に対し、
B(t)=(1-t)D + tA,\quad (t\in [0,1])
と置く。ここで B(t) の固有値が連続パラメタ t に関して連続であるという事実を認めることにして、円板の合併に属する固有値の何れかが他の円板へ移るならば、適当な t に対してその固有値はどの円板にも属さない状態が起きることを示す(そうすればゲルシュゴリンの定理に矛盾する)。
定理の主張は D = B(0) に対しては成り立つ。B(t) の対角成分は A のそれと同じであるから、ゲルシュゴリン円板の中心も共通だが、半径は A のときの t-倍される。従って B(t) に対して対応する k 枚の円板の合併は t の値に依らず残りの n − k 枚の円板と交わらない。各円板は閉だから、A の場合の両者の間の距離を d > 0 とすると、B(t) の場合のそれは t に関して単調減少だから、常に d よりも大きい。B(t) の固有値は t に関して連続だから、B(t) の k 枚の円板の合併に属する任意の固有値 λ(t) に対して、それと残りの n − k 枚の円板との距離もまた t に関して連続になる。明らかに d(0) ≥ d かつ、λ(1) は n − k 枚の円板の上にあると仮定したから d(1) = 0 である。故に 0 < d(t0) < d となる 0 < t0 < 1 が存在するが、これは λ(t0) がゲルシュゴリン円板の外側にあることを意味し、これは不可能である。ゆえに λ(1) は k 枚の円板の合併に属し、定理は証明された。
ゲルシュゴリンの定理は条件数の大きな行列 A に対する Ax = b (b はベクトル) の形の方程式を x について解くときに有用である。
この種の問題において、最終結果における誤差は初期データの誤差と A の条件数との積と同じオーダーになるのがふつうである。例えば b がコンマ以下6桁既知で A の条件数が 1000 ならば x はコンマ以下3桁の精度でしか保証できない。条件数が非常に大きければ、丸めによる非常に小さな誤差でさえ、その影響で拡大されてしまい、結果は意味のないものになってしまう。
A の条件数は減らした方がよいのだが、それは前処理で実行できる。つまり、P ≈ A−1 となる行列 P を構成して方程式 PAx = Pb を x について解くのである。ここで A の本当の逆行列が使えればよいのだが、逆行列を求める問題は一般には非常に難しい。
さて、PA ≈ I で I は単位行列だから、PA の固有値はすべて 1 に近いはずである。ゲルシュゴリンの定理により、PA の任意の固有値はどの領域にあるのかわかっているから、P をどのように選べばよいかを大まかに評価することができる。
A = \begin{bmatrix}
10  & -1 & 0   & 1\\
0.2 & 8  & 0.2 & 0.2\\
1   & 1  & 2   & 1\\
-1  & -1 & -1  & -11
\end{bmatrix}
の固有値を評価するためにゲルシュゴリンの定理を適用しよう。一行ごとに見て、対角成分 aii を円板の中心にとり、残りの成分は等式
\sum_{j\ne i} |a_{ij}| = R_i
に放り込んで円板の半径を求めると、四つの円板
D(10,2), \; D(8,0.6), \; D(2,3), \; D(-11,3)
が得られる。
後ろ二つの円板をより精緻にするために、列に関して同じように計算すれば  D(2,1.2)  と  D(-11,2.2)  が得られることに注意。
実際の固有値は 9.8218, 8.1478, 1.8995, -10.86 である。