シルベスターの慣性法則の意味と証明
更新
シルベスターの慣性法則(シルベスターの慣性律,Sylvester’s law of inertia)を紹介します。平方完成に関連するおもしろい定理です。
まずは定理の主張です。3つ紹介します。
1(大雑把な言い方):
多変数の二次関数を平方完成したとき,二乗の係数のプラス・0・マイナスの数は平方完成のやり方によらない。
2(数式で正確に):
対称行列 に対して,正の固有値の数, の固有値の数,負の固有値の数を とおく。正則行列 を用いて という関係が成立するなら,
3(簡潔な言い方):
互いに合同な行列の固有値の各符号の数は同じ。
- まずは,具体例を使って1の意味を説明します。
- 次に,1~3が同じ主張であることを説明します。
- 最後に,2を証明します。
簡単な例で主張1を理解する
簡単な例で主張1を理解する
をいくつかの方法で平方完成せよ。
- についての二次式と見て平方完成すると,
二乗の係数は と であり,プラスが1つ,マイナスが1つ - についての二次式と見て平方完成すると,
二乗の係数は と であり,プラスが1つ,マイナスが1つ
このように,平方完成のやり方は複数ありますが,どのように平方完成しても「各符号の数」は変わりません。これがシルベスターの慣性法則です。
行列の合同
行列の合同
次は,冒頭の主張1~3が同じ意味であることを説明します。2と3については「行列の合同」の意味がわかれば簡単です。
2と3が同じ意味であることの説明
2つの対称行列 の間に,(ある正則行列 が存在して) という関係があるとき, は互いに合同であると言います。つまり,以下の2つは同じ主張です。
- 対称行列 に対して,正の固有値の数, の固有値の数,負の固有値の数を とおく。正則行列 を用いて が成立するなら,
- 互いに合同な対称行列の固有値の各符号の数は同じ。
平方完成と行列の合同
平方完成と行列の合同
主張1が同じ意味であることの確認はけっこう大変です。まずは,前提知識(二次形式・平方完成と行列の合同の関係)を説明してから,主張1と主張2が同値であることを証明します。
二次形式
二次形式(二次の項のみからなる多変数の二次関数)を考えます。このような関数は,変数を表すベクトル と,係数を表す対称行列 を使って と表せます。
例えば,さきほどの例 は のように表せます。
平方完成と行列の合同
-
のように,正則行列 を使って変数を から に変換してみます。
-
この変換で,二次形式は,
となります。 -
が対角行列 になるように を選べば,二次形式は というきれいな形になります。
さきほどの例で, は, と変形できた。これは, と置くと と書ける。逆に解くと となる。つまり の例。実際,
と対角行列になっている。
つまり,平方完成は が対角行列になるような変換 を探すことと言えます。
1と2が同じ意味であることの証明
1と2が同じ意味であることの証明
冒頭の主張1と2が同値であること(以下の定理)を証明します。なお,この証明を理解できなくても,後述するシルベスターの慣性法則(主張2)の証明は理解できます。
以下は同値。
- 多変数の二次関数を平方完成したとき,二乗の係数のプラス・0・マイナスの数は平方完成のやり方によらない。
- 対称行列 に対して,正の固有値の数, の固有値の数,負の固有値の数を とおく。正則行列 を用いて という関係が成立するなら,
二次形式 を平方完成して
になったとする。 は対角行列である。
「平方完成したときの二乗の係数の各符号の数」
=「 の対角成分の各符号の数」
=「 の固有値の各符号の数」
=「 の固有値の各符号の数」
である。最後の等号で主張2を使った。よって,最右辺である「 の固有値の各符号の数」は だけで決まるので平方完成のやり方 によらない。
のとき,
- の固有値は と対角化したときの の対角成分
- の固有値は と対角化したときの の対角成分
( は対称行列なので,直交行列 で対角化できる)
次に, の平方完成を考える
- は平方完成の1つ
- も平方完成の1つ
よって,主張1が真ならば と の対角成分の各符号の数は等しい。
シルベスターの慣性法則の証明
シルベスターの慣性法則の証明
主張2の証明を紹介します。シルベスターの慣性則 基礎数理(素晴らしいPDF)に記載されている証明そのものです。
任意の正則行列 は,基本行列の積で表せる。(→補足1)
よって,任意の基本行列 による変換 で固有値の各符号の数が不変であることを示せば良い。以下, 3種類の基本行列それぞれについて確認する。
-
行の交換に対応する基本行列:
例えば, など。この場合 は直交行列なので,固有値自体が変わらない。なぜなら, であり固有方程式が不変であるから。 -
定数倍を他の行に加える操作に対応する基本行列:
例えば, など。 の場合単位行列であり, の固有値は の固有値と同じ。パラメータを連続的に まで変化させるとき, の固有値も連続的に変化する(→補足2)。その過程で, は常に正則なので, のゼロでない固有値が になることはない。よって,変化の間,固有値の各符号の数は不変である。つまり,任意の に対して と の固有値の各符号の数は同じ。 -
定数倍に対応する基本行列:
例えば, など。 の場合は直交行列であり の固有値と の固有値は同じ。そうでないときも, を連続的に変化させることで(2と同様の議論から)固有値の各符号の数は不変。
補足1:
- 正則行列 は,行基本変形で必ず単位行列にできる。具体的には,
- まず,一列目を単位行列と同じ形にする(正則行列なので一列目に非ゼロ成分があるので,それを1行目に持ってきて1にして残りの成分を0にすればよい)
- 同じように,2列目以降も順番に単位行列と同じ形にしていく。
- よって, となる基本行列 が存在する。よって, となる。基本行列の逆行列は基本行列なので は基本行列の積で表せる。
補足2:
- に対して固有値が連続的に変化することは Tosio Kato著の Perturbation theory for linear operators という本のTheorem 5.2からわかる。自分は当たり前っぽいと思ってしまったが,よく考えると繊細な議論が必要で証明も簡単ではない(読者の方に教えていただきました,ありがとうございました)。
証明で紹介したPDFは「基礎数理」という講義の資料です。この講義は私も受講したことがありますが,最高でした。