Метод Штурма

Теорема Штурма — мощный инструмент в алгебре и анализе, позволяющий определить точное количество действительных корней многочлена на заданном интервале. Её можно эффективно применять и к полиномам с параметром, чтобы исследовать, как число действительных корней зависит от значения параметра.

Жак Шарль Франсуа Штурм (1803–1855) — швейцарско-французский математик. Он придумал метод, с помощью которого можно точно узнать, сколько действительных корней (то есть решений на числовой прямой) имеет многочлен на любом заданном отрезке — не решая уравнение!

Метод Штурма предлагает построить специальный список функций (называется последовательность Штурма), а потом посчитать, как меняются знаки этих функций в точках a и b .

Разница в числе «смен знаков» и даст точное количество корней на этом отрезке.

Теорема Штурма даёт число корней в открытом интервале (α,β) , даже если в концах есть корни — они не учитываются.

Построение последовательности Штурма

Допустим, у нас есть многочлен f(x) . Тогда:

  1. Первый элемент: сам многочлен f0​(x)=f(x)
  1. Второй элемент: его производная f1​(x)=f′(x)
  1. Следующие элементы: берём остаток от деления предыдущих двух, но с минусом:
  • f2​(x)=−остаток от деления f0​ на f1​
  • f3​(x)=−остаток от деления f1​ на f2​
  • и так далее — пока не получим постоянное число (не зависящее от x ).

Подсчет числа корней

Пусть мы построили последовательность: f0​(x), f1​(x), f2​(x), …, fn​(x)

Подставляем левую границу отрезка x=a → получаем числа: f0​(a), f1​(a), f2​(a), …

Игнорируем нули и считаем, сколько раз подряд идут разные знаки:
Например: +, +, −, + → смены: +→− (1), −→+ (2) → 2 смены.Это число обозначают V(a) .

То же самое делаем для правой границы x=b → получаем V(b) .

Ответ:Число корней на (a,b]=V(a)−V(b)

Общее правило определения знака

Пусть дан многочлен

f(x) = a_n x^n + a_{n-1} x^{n-1} + \dots + a_1 x + a_0, \quad a_n \ne 0.

Тогда при x→±∞ , достаточно посмотреть на старший член этого многочлена fn(x) .

\operatorname{sgn}\bigl(f(x)\bigr) \xrightarrow[x \to +\infty]{} \operatorname{sgn}(a_n), \qquad
\operatorname{sgn}\bigl(f(x)\bigr) \xrightarrow[x \to -\infty]{} \operatorname{sgn}\bigl(a_n (-1)^n\bigr).

Примеры

Пример 1.

Рассмотрим многочлен:

f(x) = x^2 - 2

Определить сколько корней между x=0 и x=2 .

Построим последовательность Штурма:

\begin{aligned}
f_0(x) &= x^2 - 2, \\
f_1(x) &= f'(x) = 2x, \\
f_2(x) &= -\operatorname{rem}(f_0, f_1) = 2.
\end{aligned}

Значения в точке x = 0 :

f_0(0) = -2,\quad f_1(0) = 0,\quad f_2(0) = 2
\quad\Rightarrow\quad \text{знаки: } -, + \quad\Rightarrow\quad V(0) = 1

Значения в точке x = 2:

f_0(2) = 2,\quad f_1(2) = 4,\quad f_2(2) = 2
\quad\Rightarrow\quad \text{знаки: } +, +, + \quad\Rightarrow\quad V(2) = 0

Число действительных корней:

V(0) - V(2) = 1 - 0 = 1

Следовательно, уравнение x2 — 2 = 0 имеет ровно один корень на интервале (0,2] .

Пример 2.

Рассмотрим кубический многочлен:

f(x) = x^3 - 3x + 1

Построим последовательность Штурма:

\begin{aligned}
f_0(x) &= x^3 - 3x + 1, \\
f_1(x) &= f'(x) = 3x^2 - 3, \\
f_2(x) &= -\operatorname{rem}(f_0, f_1) = 2x - 1, \\
f_3(x) &= -\operatorname{rem}(f_1, f_2) = \frac{9}{4}.
\end{aligned}

Найдём число действительных корней на всей числовой прямой

Чтобы узнать знак fk​(x) при x→±∞ , достаточно посмотреть на старший член этого многочлена fk​(x).

 x \to +\infty :\\
f_0 \to +,\quad f_1 \to +,\quad f_2 \to +,\quad f_3 = + \quad\Rightarrow\quad 
V(+\infty) = 0\\
x \to -\infty :\\
f_0 \to -,\quad f_1 \to +,\quad f_2 \to -,\quad f_3 = + \quad\Rightarrow\quad \text{знаки: } -, +, -, + \quad\Rightarrow\quad 
V(-\infty) = 3

Число действительных корней:

V(-\infty) - V(+\infty) = 3 - 0 = 3

Следовательно, уравнение x3 — 3x + 1 = 0 $ имеет три различных действительных корня.

Пример 3.

Рассмотрим многочлен с параметром:

f(x; a) = x^3 - 3x + a,\quad a \in \mathbb{R}

Последовательность Штурма:

\begin{aligned}
f_0(x) &= x^3 - 3x + a, \\
f_1(x) &= f'(x) = 3x^2 - 3, \\
f_2(x) &= -\operatorname{rem}(f_0, f_1) = 2x - a, \\
f_3(x) &= -\operatorname{rem}(f_1, f_2) = 3 - \frac{3a^2}{4}.
\end{aligned}

Анализ пределов:

f0​(x)=x3−3x+a → старший член x3 → при x→−∞ : знак «–»

f1​(x)=3x2−3 → старший член 3x2 → всегда «+» при ∣x∣→∞

f2​(x)=2x−a → старший член 2x → при x→−∞ : «–», при x→+∞ : «+»

f3​(x)=3−3a2​/4 — константа, не зависит от x

Знаки зависят от старших степеней и от параметра a

x \to +\infty :\\
(f_0, f_1, f_2, f_3) \to \bigl(+,\, +,\, +,\, \operatorname{sgn}(3 - \tfrac{3a^2}{4})\bigr)
\\
x \to -\infty :\\
(f_0, f_1, f_2, f_3) \to \bigl(-,\, +,\, -,\, \operatorname{sgn}(3 - \tfrac{3a^2}{4})\bigr)

Теперь считаем смены знаков в зависимости от того, положительна или отрицательна f3​.

Анализируем три случая

  1. Если ∣a∣<2 → f3​>0
    • V(−∞)=3 , V(+∞)=0 → 3 корня
  2. Если ∣a∣=2 → f3​=0
    • Последовательность обрывается — есть кратный корень → 2 корня (один двойной)
  3. Если ∣a∣>2 → f3​<0
    • V(−∞)=2 , V(+∞)=1 → 1 корень

Таким образом, число корней полностью определяется значением параметра a — и мы это выяснили без решения уравнения!

Число действительных корней:

\text{Количество корней} =
\begin{cases}
3, & |a| < 2, \\
2, & |a| = 2 \quad (\text{кратный корень}), \\
1, & |a| > 2.
\end{cases}

Пример 4.

Найдите все значения параметра a, при которых уравнение

x^3 - 3x + a = 0

имеет ровно два различных действительных корня.

Решение:

У кубического уравнения не может быть ровно два различных корня, если только один из них не является кратным (двойным). То есть:

  • либо 1 корень (и два комплексных),
  • либо 3 различных корня,
  • либо 2 корня, из которых один — двойной (график касается оси).

Значит, нужно найти такие a , при которых уравнение имеет кратный корень.

Кратный корень — это число x0​ , которое одновременно является корнем и самого уравнения, и его производной:

\begin{cases}
x^3 - 3x + a = 0, \\
3x^2 - 3 = 0.
\end{cases}

Из второго уравнения: x2=1⇒x=±1 .

Подставляем в первое:

  • При x=1 : 1−3+a=0⇒a=2
  • При x=−1 : −1+3+a=0⇒a=−2

Проверка:

  • При a=2 : x3−3x+2=(x−1)2(x+2) → корни: x=1 (кратность 2), x=−2 → два различных корня
  • При a=−2 : x3−3x−2=(x+1)2(x−2) → корни: x=−1 (кратность 2), x=2 → два различных корня

Ответ: a=−2 или a=2

Пример 5.

Найдите все значения параметра a, при которых все корни уравнения
ax^2+2(2−a)x+1=0 удовлетворяют условия |x|<1

Задача 1447: https://uchus.online/tasks/bank/79

Решим методом Штурма

Ряд Штурма

\begin{align*}
f_0(x) &= a x^2 + (4-2a)x + 1 \\
f_1(x) &= f_0'(x) = 2a x + 4 - 2a \\
f_2(x) &= -\frac{(a-1)(a-4)}{a}
\end{align*}

Анализ знаков

\textbf{В точке $x = -1$:}\\
\begin{align*}
f_0(-1)& = 3(a-1) \\
f_1(-1)& = 4(1-a) \\
f_2& = -\frac{(a-1)(a-4)}{a}
\end{align*}\\

\textbf{В точке $x = 1$:}\\
\begin{align*}
f_0(1) &= -a + 5 \\
f_1(1) &= 4 \\
f_2 &= -\frac{(a-1)(a-4)}{a}
\end{align*}

Число перемен знаков

N=W(−1)−W(1):

  • 0<a<1: W(−1)=2, W(1)=1 ⇒ N=1 корень в (-1,1) — не подходит (должны быть оба).
  • 1<a<4: W(−1)=2, W(1)=0 ⇒ N=2 корня в (-1,1) — подходит.
  • 4<a<5: W(−1)=1, W(1)=1⇒ N=0 корней в (-1,1) — не подходит (корни вне).
  • a>5: W(−1)=1, W(1)=2 ⇒ N=−1 — невозможно, значит, где-то f1(1) или f0(1) ноль — особый случай.

Граничные точки

a=1: f0(x)=x2+2x+1=(x+1)2, корень -1 не в открытом интервале ⇒ не подходит.
a=4: f0(x)=4x2−4x+1=(2x−1)2, корень 1/2 в (-1,1) ⇒ подходит.
a=5: f0(1)=0 — особый случай, но  5x2−6x+1=0 ⇒ корни 1 и 1/5 ⇒ не все в (-1,1) ⇒ не подходит.

Случай a<0

Можно аналогично проверить — окажется N≤1 корень в (-1,1), так что не подходит.


Случай a=0

Уравнение линейное: 4x+1=0, x=−1/4∈(−1,1) — подходит.


Итог по методу Штурма

Подходят:
a=0 и 1<a≤4.

Дополнительно

https://www.mathedu.ru/text/shafarevich_o_reshenii_uravneniy_vysshyh_stepeney_1954/p21

Прокрутить вверх