中学数学623977 views
小学理科720199 views
雑学1473717 views
高校日本史190639 views
高校生物551985 views
教育149564 views
Computer368461 views
世界の国564972 views
小学算数1201030 views
中学社会669002 views
Help
Tools
NewsSpreadsheetCalendarBookkeepingMarkdown TablesLanguage Model NewsLinux CommandsSlidesTier ListPen ToolIllustrationCrayonWatercolorPixel ArtASCII ArtPerspectiveEndless StairsGraphMind MapER DiagramFamily TreeMemeCurved TextImage EditorMosaicRetro FilterPencil SketchSwirl EffectLine ArtOCR/HighlighterMakeup EditorFaviconVideo TrimmerScrolling VideoVideo TitleColor PickerColor ExtractorBonfireFireworksCherry BlossomWater RippleWater SplashBreaking GlassGlass TextureFabric TextureWood GrainMarble TextureBrick Wall TextureMetal TextureWashi Paper TextureCardboard TextureCSS ButtonIcon MakerBar ChartGrouped Bar ChartStacked Bar ChartPie ChartLine ChartArea ChartStacked Area ChartScatter Plot3D Bar Chart3D Pie ChartBar Chart RaceBubble ChartPopulation PyramidPictogramEarningsCandlestick ChartInvestment RiskMortgage SimulatorCalculatorMatrix CalculatorFunction GraphPolynomial ExpansionVenn DiagramField VisualizerRubik's Cube Group TheoryTraveling SalesmanVoronoi and DelaunayFractalUniversity Entrance Exam MathColumn ArithmeticDraw Math FiguresArithmetic AnimationArithmetic Word ProblemsCounting with Tree DiagramsCube NetsRolling DiceCross SectionsMotion PathMechanicsWavesUniversity Entrance Exam Physics解析力学Quantum MechanicsStatistical MechanicsRelativityCelestial MechanicsAstrophysicsCosmologyElectromagnetic WavesCapacitorsLight and LensesThermodynamicsHow Semiconductors WorkMolecular StructuresAtomic OrbitalsElectrochemical CellsChemical EquilibriumCrystal LatticesBuffer pHOrganic Reaction MapPeriodic TableComplex IonsDNA Double HelixCell DivisionMembrane ChannelsNerve ImpulseMuscle ContractionHormones and HomeostasisRock ClassificationWeatherConstellationsSolar and Lunar Eclipses3D ModelingFloor PlanSeismic StructuresIntersection TurnMaglevCooking AnimationOrigamiLive Viewer CountGeoJSON MapRailway MapPopulation MapCrime MapLand Price MapSchool MapShrine and Castle MapHouse of Representatives MapWord MapSolitaireReversiHakoiri MusumeChessHamburgerRippleSlide Puzzle MakerNeon PinballNovel MakerJapanese Typing PracticePiano Score EditorMusic TheoryShogi StrategyPiano Rhythm Game

English

二次形式と標準形|合同変換・平方完成・シルヴェスターの慣性法則

二次の項だけでできた多項式が二次形式です。対称行列 を使えば、どれも同じ 1 行で書けます。

変数を取り替えると へ移ります。うまく取り替えて交差項を消し、平方の和だけにしたものが標準形です。

標準形の係数そのものは取り替え方で変わります。それでも符号の個数だけは動かない、というのがこの話の中心になります。

二次形式の定義

変数の実数係数の多項式で、どの項も次数がちょうど 2 のものを二次形式といいます。

対称行列を持ってくれば、行列の積として書けます。対角成分に平方の係数を、非対角成分に交差項の係数の半分を置きます。

半分にするのは、 の項が の 2 か所から出てくるためです。両方を足すと交差項の係数に戻ります。

対称行列はただ 1 つに決まる

は、対称でなくてもかまいません。ところが対称なものに限れば、 を決める行列は 1 つに定まります。

理由は 2 つあります。まず 行列、つまり数なので、転置しても値が変わりません。

そこで とその転置の平均を取れば、値を変えずに対称な行列へ差し替えられます。 の交代部分は二次形式に何も残しません。

次に一意性です。対称行列 がすべての を満たすとします。

に基本ベクトル を入れると を入れると が出ます。つまり は零行列です。

2 つの対称行列が同じ二次形式を与えるなら、差を取ってこの議論に持ち込めます。したがって対称な表し方は 1 通りしかありません。

例:多項式と行列を行き来する

3 変数で書き下します。

対角には平方の係数 が並びます。交差項は です。

半分にして対称な位置へ置きます。

逆向きに読むときは、対角成分をそのまま、非対角成分を 2 倍して交差項にします。行き来のたびに半分と 2 倍を取り違えないよう気をつけます。

変数を取り替えると合同変換になる

新しい変数 を、正則行列 と結びます。二次形式に代入します。

新しい座標での行列は です。この形の移り変わりを合同変換といい、 は合同であるといいます。

が対称であることも確かめられます。転置を取ると順序が逆転しますが、 が対称なので元の式に戻ります。

対称性は合同変換で壊れません。座標を取り替えても、相手はやはり二次形式です。

合同と相似は別物

似た形をした は相似で、こちらは線形写像の話でした。2 つは目的も保たれる量も違います。

相似

の形。同じ線形写像を別の基底で見た関係で、固有値・行列式・トレースが保たれます

合同

の形。同じ二次形式を別の座標で見た関係で、保たれるのは階数と符号の個数です

固有値は合同では保たれません。あとで見るように、係数の値は取り替え方で自由に動きます。

両者が一致するのは が直交行列のときです。 なので、相似変換と合同変換が同じ計算になります。

標準形とは

交差項が 1 つも残らない形、つまり平方の和だけになった形を標準形といいます。

行列の言葉でいえば、 を対角行列にすることです。実対称行列に対しては、この が必ず取れます。

作り方は 2 通りあります。直交行列を使う道と、平方完成で押していく道です。

HTML
CSS
JavaScript
<svg viewBox="0 0 460 200" width="100%" style="max-width:460px;display:block;margin:0 auto">
	<text x="230" y="24" font-size="11" fill="#9a9a9a" text-anchor="middle">座標を回すと、傾いた楕円が軸に揃います</text>
	<line x1="45" y1="115" x2="175" y2="115" stroke="#c8c8c8" stroke-width="1"></line>
	<line x1="110" y1="55" x2="110" y2="175" stroke="#c8c8c8" stroke-width="1"></line>
	<ellipse cx="110" cy="115" rx="52" ry="28" fill="#1b81e0" fill-opacity="0.12" stroke="#1b81e0" stroke-width="1" transform="rotate(-40 110 115)"></ellipse>
	<text x="110" y="196" font-size="11" fill="#1f1f1f" text-anchor="middle">交差項がある</text>
	<line x1="200" y1="115" x2="252" y2="115" stroke="#1b81e0" stroke-width="1"></line>
	<polygon points="252,111 260,115 252,119" fill="#1b81e0"></polygon>
	<text x="228" y="106" font-size="11" fill="#1b81e0" text-anchor="middle">回す</text>
	<line x1="265" y1="115" x2="395" y2="115" stroke="#c8c8c8" stroke-width="1"></line>
	<line x1="330" y1="55" x2="330" y2="175" stroke="#c8c8c8" stroke-width="1"></line>
	<ellipse cx="330" cy="115" rx="52" ry="28" fill="#1b81e0" fill-opacity="0.12" stroke="#1b81e0" stroke-width="1"></ellipse>
	<text x="330" y="196" font-size="11" fill="#1f1f1f" text-anchor="middle">平方の和だけになる</text>
</svg>

直交行列で標準形にする

実対称行列は直交行列で対角化できました。その をそのまま座標変換に使います。

標準形の係数は の固有値そのものです。この取り替えを主軸変換といいます。

直交行列は長さと角度を保つので、図形を回したり裏返したりするだけです。楕円が楕円のまま、軸に揃うところまで動きます。

例:主軸変換で標準形にする

最初の二次形式に戻ります。 の固有値を求めます。

固有多項式は なので、固有値は です。固有ベクトルはそれぞれ になります。

長さを にそろえて列に並べれば直交行列です。標準形は固有値を係数にした形になります。

実際に確かめます。 を代入すると です。

これを に入れると となり、 に一致します。

平方完成で標準形にする

固有値を求めなくても標準形は作れます。中学以来の平方完成を、変数の個数だけ繰り返すだけです。

ある変数について平方をひとつくくり出し、余りを次の変数へ送る。それを順に続けます。この手順をラグランジュの方法といいます。

固有多項式を解かずに済むので、手計算では速いことが多いのが利点です。そのかわり係数は固有値になりません。

例:平方完成で標準形にする

3 変数で試します。

を含む項をまとめます。 です。

次は です。 なので、 の係数が に変わります。

と置けば標準形です。この置き換えは上三角で対角成分が なので、行列式が となり正則です。

係数はすべて で、固有値とは何の関係もありません。それでも平方の和である以上、これも立派な標準形です。

例:平方の項がない場合

平方完成には出発点が要ります。平方の項が 1 つもないときは、先に作ります。

と置けば、差と和の積の公式で平方が現れます。

対応する行列は非対角成分が の行列で、固有値は です。符号が 1 つずつという結果は、標準形から読んだものと一致しています。

この置き換えも正則なので、合同変換として正しく働いています。

標準形は 1 通りではない

同じ二次形式でも、取り替え方を変えれば違う係数が出ます。 を平方完成で処理してみます。

でくくると となり、平方完成すると次の形になります。

係数は です。主軸変換で出た とはまるで違う値になりました。

どちらも正しい標準形です。標準形の係数は、二次形式だけでは決まりません。

シルヴェスターの慣性法則

それでも動かない量があります。正の係数の個数、負の係数の個数、零の係数の個数の 3 つです。

先ほどの例では、係数が でも でも、正が 2 個で負が 0 個という点は共通していました。これが偶然ではないという主張が、シルヴェスターの慣性法則です。

3 つの個数をまとめて符号数といいます。二次形式を分類するときの基準になる不変量です。

HTML
CSS
JavaScript
<svg viewBox="0 0 460 175" width="100%" style="max-width:460px;display:block;margin:0 auto">
	<text x="230" y="24" font-size="11" fill="#9a9a9a" text-anchor="middle">係数の値は変わっても、この 3 つの個数は動きません</text>
	<rect x="50" y="60" width="150" height="42" fill="#1b81e0" fill-opacity="0.15" stroke="#1b81e0" stroke-width="1"></rect>
	<rect x="200" y="60" width="110" height="42" fill="#d0562a" fill-opacity="0.15" stroke="#d0562a" stroke-width="1"></rect>
	<rect x="310" y="60" width="100" height="42" fill="#f5f5f5" stroke="#c8c8c8" stroke-width="1"></rect>
	<text x="125" y="86" font-size="12" fill="#1b81e0" text-anchor="middle">正の係数</text>
	<text x="255" y="86" font-size="12" fill="#d0562a" text-anchor="middle">負の係数</text>
	<text x="360" y="86" font-size="12" fill="#9a9a9a" text-anchor="middle">零の係数</text>
	<line x1="50" y1="116" x2="310" y2="116" stroke="#c8c8c8" stroke-width="1"></line>
	<line x1="50" y1="112" x2="50" y2="120" stroke="#c8c8c8" stroke-width="1"></line>
	<line x1="310" y1="112" x2="310" y2="120" stroke="#c8c8c8" stroke-width="1"></line>
	<text x="180" y="136" font-size="11" fill="#1f1f1f" text-anchor="middle">この幅が階数</text>
	<text x="230" y="164" font-size="11" fill="#9a9a9a" text-anchor="middle">正と負の個数が符号数、零でない係数の個数が階数です</text>
</svg>

慣性法則の証明

標準形の係数を正のもので割れば、係数を だけにできます。そのうえで正の個数を比べます。

同じ二次形式が 2 通りに書けたとします。第 1 の座標では正が 個、第 2 の座標では正が 個だったとしましょう。

第 1 の座標のうち、正の係数がつく変数だけを動かして得られる部分空間を と置きます。 の零でない元では です。

第 2 の座標では、正でない係数がつく変数だけを動かした部分空間を とします。こちらの元では になります。

両方に入る零でないベクトルはありません。 が正でも正でないでもある、という状況になってしまうからです。

共通部分が原点だけなら、次元の和は全体を超えられません。 を入れます。

から が出ます。第 1 と第 2 の役を入れ替えれば逆向きも出るので、 です。

負の個数も同じように決まります。階数が合同変換で変わらないことを使えば、零の個数も自動的に決まります。

符号数と階数

正の個数を 、負の個数を と書きます。零でない係数の総数 が、行列 の階数です。

階数が に届いているとき、二次形式は非退化であるといいます。届かなければ退化で、 が恒等的に になる方向が残ります。

を符号と呼ぶこともあります。どの呼び方でも、決まっているのは個数であって係数の値ではありません。

固有値の符号を数えても同じ結果になります。主軸変換では係数が固有値そのものなので、慣性法則から符号の個数が一致するためです。

例:2 通りの標準形で符号数を確かめる

先ほどの で照合します。主軸変換では係数が でした。

平方完成では です。値は違いますが、どちらも正が 2 個、負が 0 個、零が 0 個です。

符号数は一致しました。階数はどちらも で、非退化です。

係数の積が でそろっているのは別の事情によります。合同変換では行列式が 倍になり、今回はどちらの変換も行列式が だったためです。

二次曲線の形が決まる

が表す図形は、符号数だけで決まります。標準形にしてしまえば見慣れた方程式になるからです。

符号数q = 1 が表す図形
正 2 個楕円
正 1 個・負 1 個双曲線
正 1 個・零 1 個平行な 2 直線
正 0 個図形なし

は正が 2 個なので楕円です。主軸変換で となり、傾きが取れた形が出ます。

は正と負が 1 個ずつなので双曲線です。標準形の が、まさに双曲線の方程式でした。

回転させても図形の種類は変わりません。慣性法則は、その当たり前を式の側から保証しています。

理解の確認

ある二次形式を 2 通りの方法で標準形にしたところ、係数が になりました。矛盾していないのはなぜでしょうか。

  • どちらかの計算が誤っている。標準形の係数は 1 通りに決まる
  • 標準形の係数は取り替え方で変わり、決まっているのは符号の個数だけである
  • 係数の積が等しいので、2 つは同じ標準形とみなしてよい
__RESULT__

慣性法則が保証するのは、正の係数の個数と負の係数の個数と零の個数であって、係数の値ではありません。どちらも正が 2 個・負が 0 個なので符号数は一致しており、矛盾はありません。係数の積がそろったのは、合同変換で行列式が 倍になるという別の事情によるもので、標準形が同じであることを意味しません。

他の話題とのつながり

すべての係数が正になる場合が正定値です。判定の仕方は正定値行列の記事で扱い、主小行列式による方法はシルヴェスターの判定法の記事にあります。

主軸変換の土台になるのは、実対称行列が直交行列で対角化できるという定理です。スペクトル分解の記事がその主題になります。

交代行列では が恒等的に でした。二次形式が対称行列だけを相手にするのは、交代部分が何も残さないからです。

複素数まで広げると、共役転置を使ったエルミート形式が対応物になります。値が実数になる点が実の二次形式と同じで、慣性法則も同じ形で成り立ちます。

よくある誤り

交差項の係数をそのまま非対角成分に書くと、二次形式が別物になります。置くのは半分の値です
標準形の係数が固有値に決まっていると考えると外します。固有値になるのは直交行列で取り替えたときだけです
合同 と相似 を混ぜると、保たれる量を取り違えます。固有値が残るのは相似のほうです
平方完成の途中で置き換えが正則かどうかを確かめないと、標準形と呼べません。正則でなければ座標の取り替えになっていません
平方の項がないからといって標準形が作れない、ということはありません。和と差に置き換えれば平方が現れます
符号数が一致すれば係数まで一致する、と読むのは行き過ぎです。一致するのは個数だけです
階数が に届かない二次形式を非退化と呼ぶのは誤りです。零の係数が残っている時点で退化しています

参考文献

Quadratic form - Wikipedia
Sylvester's law of inertia - Wikipedia
Quadratische Form - Wikipedia(ドイツ語)
Forme quadratique - Wikipédia(フランス語)
Forma quadratica - Wikipedia(イタリア語)
Forma cuadrática - Wikipedia(スペイン語)
交差項を消して平方の和にするのが標準形です。作り方は直交行列で回す道と、平方完成で押していく道の二つ。前者は係数が固有値になり、後者は固有多項式を解かずに済みます。どちらを選んでも符号の個数は変わらない、というのがシルヴェスターの慣性法則で、証明では部分空間の次元の勘定を使います。