TOPICS
Search

Sturm Function


Given a function f(x)=f_0(x), write f_1=f^'(x) and define the Sturm functions by

 f_n(x)=-{f_(n-2)(x)-f_(n-1)(x)[(f_(n-2)(x))/(f_(n-1)(x))]},
(1)

where [P(x)/Q(x)] is a polynomial quotient. Then construct the following chain of Sturm functions,

f_0=q_0f_1-f_2
(2)
f_1=q_1f_2-f_3
(3)
f_2=q_2f_3-f_4
(4)
|
(5)
f_(s-2)=q_(s-2)f_(s-1)-f_s,
(6)

known as a Sturm chain. The chain is terminated when a constant -f_s(x) is obtained.

Sturm functions provide a convenient way for finding the number of real roots of an algebraic equation with real coefficients over a given interval. Specifically, the difference in the number of sign changes between the Sturm functions evaluated at two points x=a and x=b gives the number of real roots in the interval (a,b). This powerful result is known as the Sturm theorem. However, when the method is applied numerically, care must be taken when computing the polynomial quotients to avoid spurious results due to roundoff error.

SturmFunction

As a specific application of Sturm functions toward finding polynomial roots, consider the function f_0(x)=x^5-3x-1, plotted above, which has roots -1.21465, -0.334734, 0.0802951+/-1.32836i, and 1.38879 (three of which are real). The derivative is given by f^'(x)=5x^4-3, and the Sturm chain is then given by

f_0=x^5-3x-1
(7)
f_1=5x^4-3
(8)
f_2=1/5(12x+5)
(9)
f_3=(59083)/(20736).
(10)

The following table shows the signs of f_i and the number of sign changes Delta obtained for points separated by Deltax=2.

xf_0f_1f_2f_3Delta
-2-11-113
0-1-1111
211110

This shows that 3-1=2 real roots lie in (-2,0), and 1-0=1 real root lies in (0,2). Reducing the spacing to Deltax=0.5 gives the following table.

xf_0f_1f_2f_3Delta
-2.0-11-113
-1.5-11-113
-1.011-112
-0.51-1-112
0.0-1-1111
0.5-1-1111
1.0-11111
1.511110
2.011110

This table isolates the three real roots and shows that they lie in the intervals (-1.5,-1.0), (-0.5,0.0), and (1.0,1.5). If desired, the intervals in which the roots fall could be further reduced.

The Sturm functions satisfy the following conditions:

1. Two neighboring functions do not vanish simultaneously at any point in the interval.

2. At a null point of a Sturm function, its two neighboring functions are of different signs.

3. Within a sufficiently small interval surrounding a zero point of f_0(x), f_1(x) is everywhere greater than zero or everywhere smaller than zero.


See also

Descartes' Sign Rule, Sturm Chain, Sturm Theorem

Explore with Wolfram|Alpha

References

Acton, F. S. Numerical Methods That Work, 2nd printing. Washington, DC: Math. Assoc. Amer., p. 334, 1990.Dörrie, H. "Sturm's Problem of the Number of Roots." §24 in 100 Great Problems of Elementary Mathematics: Their History and Solutions. New York: Dover, pp. 112-116, 1965.Press, W. H.; Flannery, B. P.; Teukolsky, S. A.; and Vetterling, W. T. Numerical Recipes in FORTRAN: The Art of Scientific Computing, 2nd ed. Cambridge, England: Cambridge University Press, p. 469, 1992.Rusin, D. "Known Math." http://www.math.niu.edu/~rusin/known-math/96/sturm.Sturm, C. "Mémoire sur la résolution des équations numériques." Bull. des sciences de Férussac 11, 1929.

Referenced on Wolfram|Alpha

Sturm Function

Cite this as:

Weisstein, Eric W. "Sturm Function." From MathWorld--A Wolfram Web Resource. https://mathworld.wolfram.com/SturmFunction.html

Subject classifications