施图姆定理

施图姆定理是一个用于决定多项式的不同实根的个数的方法。这个方法是以雅克·夏尔·弗朗索瓦·施图姆命名的。 施图姆定理与代数基本定理的一个区别是，代数基本定理是关于多项式的实根或复根的个数，把重根也计算在内，而施图姆定理则只涉及实根，且不把重根计算在内。 我们首先从以下不含重根的多项式构造一个施图姆序列： X = a n x n + … + a 1 x + a 0 . {\displaystyle X=a_{n}x^{n}+\ldots +a_{1}x+a_{0}.} 标准施图姆序列是把多项式长除法应用于 X {\displaystyle X} 和它的导数 X 1 = X ′ {\displaystyle X_{1}=X'} 时，所得到的中间结果的序列。 标准施图姆序列由以下公式计算： X 2 = − r e m ( X , X 1 ) X 3 = − r e m ( X 1 , X 2 ) ⋮ 0 = − r e m ( X r − 1 , X r ) , {\displaystyle {\begin{matrix}X_{2}&=&-{\rm {rem}}(X,X_{1})\\X_{3}&=&-{\rm {rem}}(X_{1},X_{2})\\&\vdots &\\0&=&-{\rm {rem}}(X_{r-1},X_{r}),\end{matrix}}} 也就是说，序列中每一项都是前两项相除所得的余数，并将其变号。由于当 1 ≤ i < r {\displaystyle 1\leq i<r} 时， deg ⁡ X i + 1 ≤ deg ⁡ X i − 1 {\displaystyle \operatorname {deg} X_{i+1}\leq \operatorname {deg} X_{i}-1} ，因此这个序列最终要停止。最后一个多项式， X r {\displaystyle X_{r}} ，就是 X {\displaystyle X} 和它的导数的最大公因式。由于 X {\displaystyle X} 没有重根，因此 X r {\displaystyle X_{r}} 是一个常数。于是，标准施图姆序列为： X , X 1 , X 2 , … , X r . {\displaystyle X,X_{1},X_{2},\ldots ,X_{r}.\,} 设 V ξ {\displaystyle V_{\xi }} 为以下序列中符号变化的次数（零不计算在内）： X ( ξ ) , X 1 ( ξ ) , X 2 ( ξ ) , … , X r ( ξ ) , {\displaystyle X(\xi ),X_{1}(\xi ),X_{2}(\xi ),\ldots ,X_{r}(\xi ),\,\!} 其中 X {\displaystyle X} 是不含重根的多项式。于是，施图姆定理说明，对于两个实数 a , b {\displaystyle a,b} ，开区间 ( a , b ) {\displaystyle (a,b)} 中的不同根的个数为 V a − V b {\displaystyle V_{a}-V_{b}} 。 通过恰当选择 a , b {\displaystyle a,b} ，这个定理可以用来计算多项式的实根的总个数。例如，柯西发现的一个定理说明，系数为 a i {\displaystyle a_{i}} 的多项式的所有实根都在区间 [ − M , M ] {\displaystyle [-M,M]} 内，其中： M = 1 + max i = 0 n − 1 | a i | | a n | . {\displaystyle M=1+{\frac {\max _{i=0}^{n-1}|a_{i}|}{|a_{n}|}}.\,\!} 除此以外，我们还可以利用下列事实：对于很大的正数 x {\displaystyle x} ，以下多项式的符号 P ( x ) = a n x n + ⋯ {\displaystyle P(x)=a_{n}x^{n}+\cdots \,\!} 是 sgn ⁡ ( a n ) {\displaystyle \operatorname {sgn}(a_{n})} ，而 sgn ⁡ ( P ( − x ) ) {\displaystyle \operatorname {sgn}(P(-x))} 则是 sgn ⁡ ( ( − 1 ) n a n ) {\displaystyle \operatorname {sgn}((-1)^{n}a_{n})} 。 用这种方法，仅仅计算施图姆序列中首项系数的符号变化，就可以得出多项式的不同实根的个数。 通过施图姆定理的帮助，我们还可以决定某个给定根（例如 ξ {\displaystyle \xi } ）是几重根。确实，假设我们知道 ξ {\displaystyle \xi } 在 ( a , b ) {\displaystyle (a,b)} 内，且 V a − V b = 1 {\displaystyle V_{a}-V_{b}=1} 。那么， ξ {\displaystyle \xi } 是 m {\displaystyle m} 重根正好当 ξ {\displaystyle \xi } 是 X r {\displaystyle X_{r}} 的 m − 1 {\displaystyle m-1} 重根时（这是因为它是 X {\displaystyle X} 和它的导数的最大公因式）。 [ a , b ] {\displaystyle [a,b]} 上的施图姆序列，是实系数多项式 X {\displaystyle X} 的一个有限序列 X 0 , X 1 , … , X r {\displaystyle X_{0},X_{1},\ldots ,X_{r}} ，使得： X r {\displaystyle X_{r}} 在 [ a , b ] {\displaystyle [a,b]} 上没有根 X 0 ( a ) X 0 ( b ) ≠ 0 {\displaystyle X_{0}(a)X_{0}(b)\neq 0} 如果对于 ξ ∈ [ a , b ] , 1 ≤ i ≤ r − 1 , X i ( ξ ) = 0 {\displaystyle \xi \in [a,b],1\leq i\leq r-1,X_{i}(\xi )=0} ，那么 X i − 1 ( ξ ) X i + 1 ( ξ ) < 0 {\displaystyle X_{i-1}(\xi )X_{i+1}(\xi )<0} 若对于 ξ ∈ [ a , b ] , X ( ξ ) = 0 {\displaystyle \xi \in [a,b],X(\xi )=0} ,则存在 δ > 0 {\displaystyle \delta >0} ,使得 c ∈ ( ξ − δ , ξ ) {\displaystyle c\in (\xi -\delta ,\xi )} 时， X 0 ( c ) X 1 ( c ) < 0 {\displaystyle X_{0}(c)X_{1}(c)<0} 而 c ∈ ( ξ , ξ + δ ) {\displaystyle c\in (\xi ,\xi +\delta )} 时 X 0 ( c ) X 1 ( c ) > 0 {\displaystyle X_{0}(c)X_{1}(c)>0} 我们可以验证每一个标准施图姆序列确实是如上定义的施图姆序列。 劳斯–赫尔维茨稳定性判据 笛卡儿符号法则 D.G. Hook and P.R. McAree, "Using Sturm Sequences To Bracket Real Roots of Polynomial Equations" in Graphic Gems I (A. Glassner ed.), Academic Press, p. 416-422, 1990. 施图姆定理的C代码