Дано многочленное выражение степени 5 с вещественными коэффициентами — опишите процедуры и критерии для определения числа его действительных корней без явного вычисления всех корней
Кратко — набор рабочих процедур и критериев (без явного вычисления корней). 1) Факты напоминание - Для многочлена степени 5 с вещественными коэффициентами p(x)=a5x5+a4x4+⋯+a0p(x)=a_5x^5+a_4x^4+\dots+a_0p(x)=a5x5+a4x4+⋯+a0 обязательно есть хотя бы один действительный корень (нечётная степень). Поведение на бесконечностях определяется знаком a5a_5a5. 2) Проверка кратных корней - Найдите g(x)=gcd(p(x),p′(x))g(x)=\gcd(p(x),p'(x))g(x)=gcd(p(x),p′(x)). Если degg≥1\deg g\ge 1degg≥1 (или дискриминант Δ(p)=0\Delta(p)=0Δ(p)=0), есть кратные корни. Если Δ≠0\Delta\neq 0Δ=0 — все корни простые. 3) Оценки числа положительных/отрицательных корней — правило Декарта - Число положительных корней (с учётом кратности) не превосходит числа изменений знака в последовательности коэффициентов p(x)p(x)p(x); разность с истинным числом — чётно. - Число отрицательных корней оценивают по p(−x)p(-x)p(−x). 4) Верхние оценки на отрезках — Будан–Фурье - Для отрезка (a,b](a,b](a,b] вычисляют последовательность значений производных p,p′,p′′,…,p(5)p, p', p'',\dots,p^{(5)}p,p′,p′′,…,p(5) в концах и число изменений знака; это даёт верхнюю оценку на число корней в интервале (точность как у Декарта — изм. на чётное число). 5) Точный подсчёт — теорема Шторма (рекомендуется) - Постройте последовательность Шторма: p0=p,p1=p′,pk+1=−rem(pk−1,pk)
p_0=p,\quad p_1=p',\quad p_{k+1}=-\operatorname{rem}(p_{k-1},p_k) p0=p,p1=p′,pk+1=−rem(pk−1,pk)
пока не получите нуль. Для любого ttt обозначьте V(t)V(t)V(t) число изменений знака в последовательности p0(t),p1(t),…p_0(t),p_1(t),\dotsp0(t),p1(t),…. - Тогда число различных действительных корней в интервале (a,b](a,b](a,b] равно V(a)−V(b)V(a)-V(b)V(a)−V(b). Для всей оси можно взять пределы a→−∞a\to -\inftya→−∞, b→+∞b\to +\inftyb→+∞ (на практике — достаточно больших по абсолютной величине чисел). - Шторм даёт точное число (учитывает кратные корни корректно только если перед этим убраны общие множители; если есть кратные корни, сперва вычислите gcd\gcdgcd и разделите). 6) Практические приёмы и ускорения - Сначала примените Декарт/Будан, чтобы получить быстрые верхние/нижние оценки и локализовать интервалы; затем примените Шторм на каждом интервале для точного подсчёта. - Для численного определения количества действительных корней удобно вычислить собственные значения companion-матрицы (численные ЭВМ-методы дают знаки мнимой части и позволяют быстро посчитать реальные корни). - Интервальная бисекция с тестом Шторма позволяет изолировать и подсчитать корни без их явного нахождения. 7) Про дискриминант и знак дискриминанта - Δ(p)=0\Delta(p)=0Δ(p)=0 ⇔ есть кратные корни. Сам по себе знак Δ\DeltaΔ для степени 5 не даёт прямой однозначной информации о точном числе действительных корней (в отличие от некоторых низших степеней), поэтому полагаться на него нельзя как на основной критерий. Рекомендуемая последовательность на практике: вычислить gcd(p,p′)\gcd(p,p')gcd(p,p′) (проверка кратных корней), получить быстрые оценки Декарта (положит./отриц.), затем применить последовательность Шторма для точного подсчёта и/или изоляции корней; при необходимости подтвердить численно через companion-матрицу.
1) Факты напоминание
- Для многочлена степени 5 с вещественными коэффициентами p(x)=a5x5+a4x4+⋯+a0p(x)=a_5x^5+a_4x^4+\dots+a_0p(x)=a5 x5+a4 x4+⋯+a0 обязательно есть хотя бы один действительный корень (нечётная степень). Поведение на бесконечностях определяется знаком a5a_5a5 .
2) Проверка кратных корней
- Найдите g(x)=gcd(p(x),p′(x))g(x)=\gcd(p(x),p'(x))g(x)=gcd(p(x),p′(x)). Если degg≥1\deg g\ge 1degg≥1 (или дискриминант Δ(p)=0\Delta(p)=0Δ(p)=0), есть кратные корни. Если Δ≠0\Delta\neq 0Δ=0 — все корни простые.
3) Оценки числа положительных/отрицательных корней — правило Декарта
- Число положительных корней (с учётом кратности) не превосходит числа изменений знака в последовательности коэффициентов p(x)p(x)p(x); разность с истинным числом — чётно.
- Число отрицательных корней оценивают по p(−x)p(-x)p(−x).
4) Верхние оценки на отрезках — Будан–Фурье
- Для отрезка (a,b](a,b](a,b] вычисляют последовательность значений производных p,p′,p′′,…,p(5)p, p', p'',\dots,p^{(5)}p,p′,p′′,…,p(5) в концах и число изменений знака; это даёт верхнюю оценку на число корней в интервале (точность как у Декарта — изм. на чётное число).
5) Точный подсчёт — теорема Шторма (рекомендуется)
- Постройте последовательность Шторма:
p0=p,p1=p′,pk+1=−rem(pk−1,pk) p_0=p,\quad p_1=p',\quad p_{k+1}=-\operatorname{rem}(p_{k-1},p_k)
p0 =p,p1 =p′,pk+1 =−rem(pk−1 ,pk ) пока не получите нуль. Для любого ttt обозначьте V(t)V(t)V(t) число изменений знака в последовательности p0(t),p1(t),…p_0(t),p_1(t),\dotsp0 (t),p1 (t),….
- Тогда число различных действительных корней в интервале (a,b](a,b](a,b] равно V(a)−V(b)V(a)-V(b)V(a)−V(b). Для всей оси можно взять пределы a→−∞a\to -\inftya→−∞, b→+∞b\to +\inftyb→+∞ (на практике — достаточно больших по абсолютной величине чисел).
- Шторм даёт точное число (учитывает кратные корни корректно только если перед этим убраны общие множители; если есть кратные корни, сперва вычислите gcd\gcdgcd и разделите).
6) Практические приёмы и ускорения
- Сначала примените Декарт/Будан, чтобы получить быстрые верхние/нижние оценки и локализовать интервалы; затем примените Шторм на каждом интервале для точного подсчёта.
- Для численного определения количества действительных корней удобно вычислить собственные значения companion-матрицы (численные ЭВМ-методы дают знаки мнимой части и позволяют быстро посчитать реальные корни).
- Интервальная бисекция с тестом Шторма позволяет изолировать и подсчитать корни без их явного нахождения.
7) Про дискриминант и знак дискриминанта
- Δ(p)=0\Delta(p)=0Δ(p)=0 ⇔ есть кратные корни. Сам по себе знак Δ\DeltaΔ для степени 5 не даёт прямой однозначной информации о точном числе действительных корней (в отличие от некоторых низших степеней), поэтому полагаться на него нельзя как на основной критерий.
Рекомендуемая последовательность на практике: вычислить gcd(p,p′)\gcd(p,p')gcd(p,p′) (проверка кратных корней), получить быстрые оценки Декарта (положит./отриц.), затем применить последовательность Шторма для точного подсчёта и/или изоляции корней; при необходимости подтвердить численно через companion-матрицу.