スツルムの定理

出典: フリー百科事典『ウィキペディア(Wikipedia)』
移動: 案内検索

スツルムの定理(スツルムのていり、: Sturm's theorem)とは、多項式の異なる実根の個数を決定する方法である。

代数学の基本定理によれば多項式の重複を込めた複素根の個数を容易に得られるが、スツルムの定理では重複を考慮せずに実根のみを扱っている。

スツルム列[編集]

実区間[a,b]が与えられたとき、次の4つの条件を満足する実係数をもつ多項式

 f_0(x),~f_1(x),~f_2(x),~\cdots,~f_l(x)

は区間[a,b]においてスツルム列(スツルム関数列)をなすという。

  1. \forall x \in [a,b]に対して、隣り合う2つの多項式f_k(x)f_{k+1}(x)は同時には0にならない。
  2. x_0 \in [a,b]においてf_k(x_0)(k=1,2,\cdots,l-1)であるならば、f_{k-1}(x_0)f_{k+1}(x_0)>0である。
  3. 列の最後の多項式f_l(x)は区間[a,b]において一定の符号をもつ。
  4. x_0 \in [a,b]においてf_0(x_0)=0であるならば、f_0'(x_0)f_1(x_0)>0である。

ユークリッドの互除法によるスツルム列の生成[編集]

上の条件を満足するスツルム列の一つとして、多項式f(x)とその微分f'(x)について

f_0(x)=f(x)
f_1(x)=f'(x)

とおき、これにユークリッドの互除法を適用することで得られる多項式列がある:

\begin{matrix}
 f_0(x) & = & g_1(x)f_1(x)-f_2(x)\\
 f_1(x) & = & g_2(x)f_2(x)-f_3(x)\\
 f_2(x) & = & g_3(x)f_3(x)-f_4(x)\\
 * & \vdots & \\
 f_{l-1}(x) & = & g_l(x)f_l(x)~~~~~~~~~~\\
\end{matrix}

このときf_l(x)f_0(x)f_1(x)との最大公約数であり、さらにf(x)=0f'(x)=0が共通根をもたない、 すなわちf(x)=0が単根のみをもつとき、f_l(x)=定数\ne0を満足する。

また、3重対角化された対称行列Aからなる行列\lambda I-A主小行列式により構成される多項式列や、最高次の係数が正である直交多項式の列も 区間[a,b]においてスツルム列をなす。

スツルムの定理[編集]

実係数多項式の列f_0(x),f_1(x),f_2(x),\cdots,f_l(x)x \in [a,b]でスツルム列をなし、f_0(a)f_0(b)\neq0であるとする。 このとき、xを固定して関数値の列

 f_0(x),~f_1(x),~f_2(x),~\cdots,~f_l(x)

を左から右に見ていったときの符号(正負)の変化の回数をN(x)とすると、方程式f_0(x)=0の区間[a,b]内における解の個数は

 N(a)-N(b)

で与えられる。

スツルムの方法[編集]

スツルムの定理を用いることで、区間[a,b]内に存在するf(x)=0の根の個数を求めることができるが、これを利用して実係数をもつ代数方程式の実数解を求めることもできる。

区間[a,b]を2等分して[a,(a+b)/2],[(a+b)/2,b]なる二つの区間に分け、各区間における根の個数をスツルムの定理によって求める、という手順を繰り返してしだいに区間を狭くしていく。 そして、一つの根だけが存在する区間を十分に小さくすることで、根の近似値を得ることができる。(二分法

また、区間[a,b]においてaを固定してbN(a)-N(b)=1になるまで小さくし、それから二分法を用いてb-a\le\varepsilonになるようにa,bの値を近づけることで根の最小値を決定し、そして次に小さい根を決定する、といったように根の近似値を小さい方から、あるいは大きい方から得ることもできる。

このように二分法ニュートン法などの求根アルゴリズムを用いてスツルムの定理から根の近似値を求める手法をスツルムの方法という。

スツルムの方法は、行列固有値問題において応用される。

参考文献[編集]

  • 高木貞治、「代数学講義(改訂新版)」第3章スツルムの問題,根の計算, 共立出版、1965年(初版は1930年、改訂版は1948年)
  • 森正武 『数値解析』 共立出版、2002年2月。ISBN 4-320-01701-3
  • 夏目雄平・小川建吾 『計算物理I』 朝倉書店、2002年3月。ISBN 978-4-254-13713-2

関連項目[編集]