Алгоритм Горнера

Для того чтобы понять принцип работы алгоритма (который также называют «схемой Горнера» или «методом Горнера»), разберемся, что с его помощью можно делать, откуда берется этот алгоритм, как именно и почему он работает.

    Алгоритм Горнера помогает решать две алгебраические задачи:

  1. Решение уравнений высших степеней;
  2. Работа с многочленами.

Все это можно делать и без использования алгоритма, однако его преимущество заключается в скорости.

Выведем схему Горнера

Пусть нам нужно найти корни многочлена $P\left(x\right),$ то есть решить уравнение $P\left(x\right)=0.$ $P\left(x\right)$ представим в виде: $$\displaystyle\sum\limits_{i=0}^n{a_{i}x^i} = a_{n}x^n + a_{n-1}x^{n-1} + \ldots +\ a_{1}x + a_{0}. $$ Решение может осуществляться методами, которые используют производные (если нам нужно найти только действительные корни), а также любыми итерационными способами. Последний требует многократного вычисления значений многочлена.

По следствию из теоремы Безу, многочлен $P\left(x\right)$ можно представить в виде: $$P\left(x\right) = \left(x-x_{0}\right)Q\left(x\right) + R\left(x\right),$$ где $Q\left(x\right)\ — $ результат деления $P\left(x\right)$ на $\left(x-x_{0}\right),\ R\left(x\right)\ — $ остаток от этого деления. Обозначим $Q\left(x\right)$ как $b_{n-1}x^{n-1} + b_{n-2}x^{n-2} + \ldots + b_{0}.$ Перепишем наш многочлен: \begin{multline}\underbrace{a_{n}x^n + a_{n-1}x^{n-1} + \ldots + a_{1}x + a_{0}}_{P\left(x\right)} \equiv \\ \equiv \left(x-x_{0}\right)\underbrace{\left(b_{n-1}x^{n-1} + b_{n-2}x^{n-2} + \ldots + b_{0}\right)}_{Q\left(x\right)} + R\left(x\right). \end{multline} Для того чтобы вычислить значения многочлена, нам необходимо при заданном $x = x_{0}$ найти степени $x_{0}^k,\ \left(k = \overline{1,n}\right),$ результаты умножить на коэффициенты $\left(b_{n-1}, b_{n-2}, \ldots, b_{0}\right)$, а получившееся сложить. Однако, чтобы ускорить процесс и вдвое сократить количество умножений, можно воспользоваться алгоритмом Горнера. Выведем его.

Алгоритм берет свое начало из теоремы Безу, которая звучит так: если многочлен $P\left(x\right)$ разделить на двучлен $\left(x-x_{0}\right),$ то остаток от этого деления будет равен значению $P\left(x\right)$ на элементе $x_{0},$ т.е. (остаток)$R\left(x\right) = P\left(x_{0}\right).$

В тождестве $\left(1\right)$ умножим $\left(x-x_{0}\right)$ на $Q\left(x\right)$. Получаем $$a_{n}x^n + a_{n-1}x^{n-1} + \ldots + a_{1}x + a_{0} \equiv \\ \equiv b_{n-1}x^n + b_{n-2}x^{n-1} + \ldots + b_{0}x-\\-x_{0}b_{n-1}x^{n-1}-x_{0}b_{n-2}x^{n-2}-\ldots-x_{0}b_{0} + R\left(x\right).$$ Теперь приравняем коэффициенты при одинаковых степенях $x:$ $b_{n-1} = a_{n};\ b_{n-2} = a_{n-1}+x_{0}b_{n-1};\ \ldots;\ R\left(x\right) = a_{0}+x_{0}b_{0}.$ Приходим к исходному: $R\left(x\right)=P\left(x_{0}\right).$ Результаты оформим в виде таблицы:

$a_n$ $a_{n-1}$ $\ldots$ $a_0$
$x_0$ $b_{n-1}$ $b_{n-2}$ $\ldots$ $R\left(x\right)$

Эта таблица и есть схемой Горнера.

Замечание: помимо значения остатка $R\left(x\right),$ алгоритм дает нам $Q\left(x\right)$ (неполное частное). Также, если остаток $R\left(x\right)=0,$ то $x_{0} — $ корень многочлена $P\left(x\right).$

Далее, с помощью примеров, рассмотрим, как алгоритм работает на практике.

Примеры решения задач

  1. Разделить многочлен $P_{5}\left(x\right) = x^5-8x^4+7x^3-4x^2+16x+24$ на $\left(x-2\right).$
    Решение

    Вместо деления уголком, воспользуемся алгоритмом Горнера:

    $1$ $-8$ $7$ $-4$ $16$ $24$
    $2$ $1$

    В ячейки, выделенные розовым, записываем коэффициенты многочлена $P_5\left(x\right),$ а в желтую ячейку — $x_0.$ Оставшееся место в таблице будем заполнять вычислениями. Первое число всегда сносим без изменений.

    $1$ $-8$ $7$ $-4$ $16$ $24$
    $2$ $1$ $-6$

    $x_0$ умножаем на число в ячейке напротив, складываем со следующим коэффициентом $P_5\left(x\right),$ и под ним записываем результат (в зеленой ячейке). Дальше продолжаем выполнять действия, которые указаны выше. Получаем таблицу:

    $1$ $-8$ $7$ $-4$ $16$ $24$
    $2$ $1$ $-6$ $-5$ $-14$ $-12$ $0$

    Область, выделенная голубым — это получившиеся коэффициенты нового многочлена $Q\left(x\right),$ а фиолетовым — остаток $R\left(x\right).$

    Ответ: $P_5\left(x\right) = x^5-8x^4+7x^3-4x^2+16x+24= \\ =\left(x-2\right)\left(x^4-6x^3-5x^2-14x^2-12x\right) + 0.$

    Заметим, что степень $Q\left(x\right)$ всегда на $1$ меньше степени $P\left(x\right).$ Также, выше было сказано, что если $R\left(x\right)=0,$ то $x_{0} — $ корень многочлена. В данном случае $x_{0}$ является корнем $P_{5}\left(x\right).$

    [свернуть]
  2. Определить кратность корня $x_{0}=1$ многочлена $P_{5}\left(x\right)=x^5-8x^3+14x^2-9x+2.$
    Решение

    Кратность корня определяется количеством нулевых остатков от деления $P\left(x\right)$ на $\left(x-x_{0}\right).$ Воспользуемся схемой Горнера:

    $1$ $0$ $-8$ $14$ $-9$ $2$
    $1$ $1$ $1$ $-7$ $7$ $-2$ $0$

    Так как $R\left(x\right)=0,$ мы можем проверить, является ли $x_0=1$ корнем для уже нового многочлена $Q\left(x\right).$ Продолжаем заполнять таблицу по тому же принципу.

    $1$ $0$ $-8$ $14$ $-9$ $2$
    $1$ $1$ $1$ $-7$ $7$ $-2$ $0$
    $1$ $1$ $2$ $-5$ $2$ $0$
    $1$ $1$ $3$ $-2$ $0$
    $1$ $1$ $4$ $2$

    В последней строке мы получили ненулевой остаток. Значит, вычисления можно закончить. Определяем кратность по количеству нулей на «лесенке». Записываем получившееся разложение: $$P_5\left(x\right) = x^5-8x^3+14x^2-9x+2 = \left(x-1\right)^3\left(x^2+3x-2\right).$$

    Ответ: $x_0$ для многочлена $P_5\left(x\right)$ является корнем третьей кратности.

    [свернуть]
  3. При каких значениях $A$ и $B$ многочлен $P_4\left(x\right) = Ax^4 + Bx^2 + 1$ делится на $\left(x-1\right)^2?$
    Решение

    Перефразируем условие задачи для лучшего понимания: при каких $A$ и $B$ число $x_0$ будет корнем $P_4\left(x\right)$, кратности не ниже $2?$ Воспользуемся алгоритмом Горнера.

    $A$ $0$ $B$ $0$ $1$
    $1$ $A$ $A$ $A+B$ $A+B$ $A+B+1$
    $1$ $A$ $2A$ $3A+B$ $4A+2B$
    $1$ $A$ $3A$ $6A+B$

    Можем сделать вывод, что кратность корня будет не ниже двух тогда и только тогда, когда $\begin{cases}A + B + 1 = 0 \\ 4A + 2B = 0\end{cases}.$ Отсюда $A = 1, B= -2.$ Однако, есть вероятность, что при этих же значениях $A$ и $B$ кратность корня будет больше. Для этого мы и записали последнюю строку в таблице. Не составляет труда проверить, что $6A + B = 6 \cdot 1 + \left(-2\right) = 4 \neq 0 \Rightarrow$ кратность корня равна двум, ни больше, ни меньше.

    Ответ: $\left(x-1\right)^2$ делит $P_4\left(x\right) \Leftrightarrow A=1,\ B=-2.$ $\left(x-1\right)^3$ не делит $P_4\left(x\right)$ ни при полученных значениях $A$ и $B,$ ни при каких других.

    [свернуть]
  4. Дан многочлен $P_4\left(x\right) = x^4-\left(2+i\right)x^3-\left(3+2i\right)x + 5$ над полем $\usepackage{amsfonts}\mathbb{C}$. Разделить его с остатком на $\left(x-x_0\right),$ где $x_0 = 1-i,$ попутно вычислив $P_4\left(x_0\right).$
    Решение

    Используем схему Горнера таким же образом, как в примерах выше.

    $1$ $-2-i$ $0$ $-3-2i$ $5$
    $1-i$ $1$ $-1-2i$ $-3-i$ $-7$ $2-7i$
    1. $1-i-2+i = \mathbf{-1-2i};$
    2. $\left(-1-2i\right)\left(1-i\right) = -1+i-2i+2i^2 = -1-i-2 = \mathbf{-3-i};$
    3. $\left(-3-i\right)\left(1-i\right) = -3+3i-i+i^2 = -3+2i-1 = -4+2i; \\ -4+2i-3-2i = \mathbf{-7};$
    4. $\left(-7\right)\left(1-i\right) = -7-7i; \\ -7-7i+5 = \mathbf{2-7i}.$

    Ответ: $P_4\left(x\right) = \left(x-\left(1-i\right)\right)\left(x^3+\left(-1-2i\right)x^2+\left(-3-i\right)x-7\right)+\left(2-7i\right);$ $P_4\left(x_0\right) = 2-7i.$

    [свернуть]

Почему алгоритм Горнера работает?

После ознакомления с примерами решения задач, можно приступить к изучению данного вопроса. Представим многочлен уже привычным нам образом $P\left(x\right) = a_{n}x^n + a_{n-1}x^{n-1} + \ldots + a_{1}x + a_{0}.$ Сделаем самое очевидное действие — вынесем $x$ за скобки: $x\left(a_{n}x^{n-1} + a_{n-1}x^{n-2} + \ldots + a_{1}\right) + a_{0}.$ Если мы повторим это действие $n-1$ раз, то получим $$\underbrace{x(x(x\ldots}_{n-1}\left(a_{n}x+a_{n-1}\right)+\ldots \left)+a_1\right)+a_0.$$ Алгоритм Горнера работает вне зависимости от того, какая степень у многочлена — схема универсальна. Посмотрим на примере. \begin{multline}P_7\left(x\right) = x^7+5x^6-2x^5-x^4+3x^2-8x+11 = \\ = x\left(x^6+5x^5-2x^4-x^3+3x-8\right)+11 = \\ = x\left(x\left(x^5+5x^4-2x^3-x^2+3\right)-8\right)+11 = \\ = x\left(x\left(x\left(x^4+5x^3-2x^2-x+0\right)+3\right)-8\right)+11 = \\ = x\left(x\left(x\left(x\left(x^3+5x^2-2x-1\right)+0\right)+3\right)-8\right)+11 = \\ = x\left(x\left(x\left(x\left(x\left(x^2+5x-2\right)-1\right)+0\right)+3\right)-8\right)+11 = \\ = \underbrace{x(x(x(x(x(x}_{(n-1)=(7-1)=6} (x+5)-2)-1)+0)+3)-8)+11 = \\ = x\left(x\left(x\left(x\left(x\left(x\left(\left(1\cdot x\right)+5\right)-2\right)-1\right)+0\right)+3\right)-8\right)+11. \end{multline} Отсюда видим, для того чтобы посчитать выражение $\left(2\right),$ мы должны $1$ (коэффициент перед $x^7$) умножить на $x,$ результат прибавить к $5$ (коэффициент перед $x^6$), опять умножить на $x$ и т.д. То есть мы делаем все то, что и в схеме Горнера.

Почему разложение $P\left(x\right) = \left(x-x_0\right)Q\left(x\right)+R\left(x\right)$ — верно? Начнем с арифметики. Возьмем какое-то натуральное число $a.$ Как гласит нам основная теорема арифметики, его всегда можно представить в виде произведения двух других чисел с остатком, то есть $a = s \cdot q + r.$ Например, $7 = 2 \cdot 3 +1,$ $8 = 4 \cdot 2 + 0.$ Разложение такого типа единственно, причем $0 \leqslant r < s.$

Тоже самое происходит и с многочленами. Допустим, мы хотим разделить многочлен $P\left(x\right)$ на $Q\left(x\right)$ с остатком. Значит $P\left(x\right)$ можно записать как $P\left(x\right) = S\left(x\right) \cdot Q\left(x\right) + R\left(x\right),$ где $0 \leqslant \deg{R}\left(x\right) < \deg{Q}\left(x\right).$

Если $Q\left(x\right) = \left(x-x_0\right)$ (линейный многочлен), то его степень — единица. Тогда результатом деления любого многочлена на линейный, будет какой-то новый многочлен степени на единицу меньше, и остаток — многочлен нулевой степени (любое число в степени $0\ -$ это $1$). Следовательно, остатком всегда будет просто число. Именно его мы ищем в схеме Горнера в конце каждой строки.

Дополнительные примеры решения задач

  1. Разложить многочлен $P_6(x) = x^6+6x^5+3x^4-28x^3-9x^2+54x-27$ по степеням $\left(x-1\right).$
    Решение

    Ответ будет выглядеть как формула Тейлора: $P\left(x\right) = h_n\left(x-x_0\right)^n+ h_{n-1}\left(x-x_0\right)^{n-1} + h_{n-2}\left(x-x_0\right)^{n-2} + \ldots + \\ + h_{2}\left(x-x_0\right)^2 + h_{1}\left(x-x_0\right) + h_0.$

    Общий вид схемы Горнера для решения задачи:

    $a_n$ $a_{n-1}$ $a_{n-2}$ $\ldots$ $a_2$ $a_1$ $a_0$
    $x_0$ $b_{n-1}$ $b_{n-2}$ $b_{n-3}$ $\ldots$ $b_1$ $b_0$ $h_0$
    $x_0$ $с_{n-1}$ $с_{n-2}$ $с_{n-3}$ $\ldots$ $с_1$ $h_1$
    $x_0$ $d_{n-1}$ $d_{n-2}$ $d_{n-3}$ $\ldots$ $h_2$
    $\ldots$ $\ldots$ $\ldots$ $\ldots$ $\mathinner{\mkern2mu\raise1pt\hbox{.}\mkern2mu \raise4pt\hbox{.}\mkern2mu\raise7pt\hbox{.}\mkern1mu}$
    $x_0$ $f_{n-1}$ $f_{n-2}$ $h_{n-2}$
    $x_0$ $g_{n-1}$ $h_{n-1}$
    $x_0$ $h_n$

    $a_n = b_{n-1} = c_{n-1} = d_{n-1} = \ldots = f_{n-1} = g_{n-1} = h_n.$

    $1$ $6$ $3$ $-28$ $-9$ $54$ $-27$
    $1$ $1$ $7$ $10$ $-18$ $-27$ $27$ $0$
    $1$ $1$ $8$ $18$ $0$ $-27$ $0$
    $1$ $1$ $9$ $27$ $27$ $0$
    $1$ $1$ $10$ $37$ $64$
    $1$ $1$ $11$ $48$
    $1$ $1$ $12$
    $1$ $1$

    Ответ: $P_6\left(x\right)=64\left(x-1\right)^3+48\left(x-1\right)^4+12\left(x-1\right)^5+\left(x-1\right)^6.$

    [свернуть]
  2. Найти все рациональные корни многочлена $P_7\left(x\right) = 9x^7+3x^6-23x^5+4x^4-5x^3+23x^2-13x+2.$
    Решение

    В таких заданиях всегда в первую очередь проверяются корни $\pm 1$ и их кратность. Получается разложение $P\left(x\right) = \left(x-1\right)^{k}\left(x+1\right)^{l}g\left(x\right),$ где $k\ — $ кратность корня $1,$ $l\ $ кратность корня $-1,$ $g\left(x\right) = b_{m}x^m + b_{m-1}x^{m-1} + \ldots + b_{1}x + b_0$ $\left(m = n-k-l\right).$ Числа $\pm 1$ не являются корнями $g\left(x\right)$.

    Введём $x_0=\displaystyle\frac{s}{t},$ где $s \in \mathcal{S},\ t \in \mathcal{T},\ x_0 \in \mathcal{X},\ \mathcal{S}\ — $ множество всех делителей $a_0,$ $\mathcal{T}\ — $ множество всех положительных делителей $a_n,$ $\mathcal{X}\ — $ множество всех дробей, которые потенциально являются корнями.

    Отбор потенциальных корней (кроме $\pm 1$) приводит к множествам: $$\mathcal{S} = \big\{s \in \mathbb{Z} : s|b_0\big\},\ \mathcal{T} = \big\{t \in \mathbb{Z} : \left(t|b_m \right)\wedge\left(t>0 \right)\big\},$$ $$\mathcal{X} = \bigg\{\displaystyle\frac{s}{t} \in \mathbb{Q} : s \in \mathcal{S},\ t \in \mathcal{T}\bigg\}.$$ Их формирование будет происходить уже для $g\left(x\right).$

    Сначала проверим по Горнеру, являются ли $\pm 1$ корнями $P_7\left(x\right).$

    $9$ $3$ $-23$ $4$ $-5$ $23$ $-13$ $2$
    $1$ $9$ $12$ $-11$ $-7$ $-12$ $11$ $-2$ $0$
    $1$ $9$ $21$ $10$ $3$ $-9$ $2$ $0$
    $1$ $9$ $30$ $40$ $43$ $34$ $36$
    $-1$ $9$ $12$ $-2$ $5$ $-14$ $16$

    По таблице видно, что $x_0=1\ — $ корень второй кратности, а $x_0=-1$ корнем не является. Получаем разложение: $$P_7\left(x\right) = \left(x-1\right)^{2}g\left(x\right),$$ $$g\left(x\right) = 9x^5+21x^4+10x^3+3x^2-9x+2.$$Также мы определили значения $g\left(1\right) = 36$ и $g\left(-1\right) = 16.$

    Для свободного члена $b_0 = 2$ формируем $\mathcal{S}\ — $ множество всех его целых делителей, а для $b_m = 9$ формируем $\mathcal{T}\ — $ множество всех его натуральных делителей. \begin{eqnarray*}\mathcal{S} = \{2;\ -2;\ 1;\ -1\},\ \mathcal{T} = \{9;\ 3;\ 1\}. \end{eqnarray*}

    Формируем множество $\mathcal{X},$ которое состоит из всех вариаций $x_0 = \displaystyle\frac{s}{t},$ где $s \in \mathcal{S},$ а $t \in \mathcal{T}.$ Все полученные числа записываем дробями: $$\mathcal{X} = \bigg\{\displaystyle\frac29;\ \displaystyle\frac23;\ \displaystyle\frac21;\ \displaystyle\frac{-2}9;\ \displaystyle\frac{-2}3;\ \displaystyle\frac{-2}1;\ \displaystyle\frac19;\ \displaystyle\frac13;\ \displaystyle\frac11;\ \displaystyle\frac{-1}9;\ \displaystyle\frac{-1}3;\ \displaystyle\frac{-1}1\bigg\}.$$

    Сразу вычеркиваем дроби со значениями $\pm 1.$ То что остается, проверяем на двух тестах:

    1. $t-s|g \left(1 \right);$
    2. $t+s|g \left(-1 \right).$

    Все тесты проходят дроби: $$\mathcal{X}^\prime = \bigg\{-2;\ \displaystyle\frac13;\ \displaystyle-\frac{1}3\bigg\}.$$

    Теперь, каждое из этих чисел проверим с помощью алгоритма Горнера.

    $9$ $21$ $10$ $3$ $-9$ $2$
    $-2$ $9$ $3$ $4$ $-5$ $1$ $0$
    $-2$ $9$ $-15$ $34$ $-73$ $-145$
    $\displaystyle\frac13$ $9$ $6$ $6$ $-3$ $0$
    $\displaystyle\frac13$ $9$ $9$ $9$ $0$
    $\displaystyle\frac13$ $9$ $12$ $13$
    $\displaystyle-\frac13$ $9$ $6$ $7$

    Нам подходят строки с нулевым остатком. Запишем получившееся разложение: $g\left(x\right) = \left(x-\displaystyle\frac13\right)^2\left(x+2\right)\left(9x^2+9x+9\right) = \\ = 9\left(x-\displaystyle\frac13\right)^2\left(x+2\right)\left(x^2+x+1\right).$

    У нас появился квадратный трехчлен, который может дать нам новые корни. Однако у него отрицательный дискриминант, следовательно, корней больше нет.

    Ответ: корни $P_7\left(x\right):\ 1;\ -2;\ \displaystyle\frac13.$

    [свернуть]

Алгоритм Горнера

Тест на проверку знаний по теме «Алгоритм Горнера»

Смотрите также

  1. Алгебра: Теоремы и алгоритмы: учеб. пособие / Н. И. Яцкин. — Иваново: Иван. гос. ун-т, 2006. — 506с. (c.383-394, 501-503)
  2. Основы численных методов: Учебник для вузов/В.М.Вержбицкий. — М.: Высш. шк., 2002. — 840c. (с.272-275)
  3. Личный конспект, составленный на основе лекций Белозерова Г.С.

Лемма о степени произведения двух многочленов

Лемма. Степень произведения двух многочленов равна сумме степеней множителей.

Рассмотрим многочлены $$u\left(x\right)=a_{n}x^{n}+a_{n-1}x^{n-1}+\ldots+a_{2}x^{2}+a_{1}x+a_{0},$$ $$v\left(x\right)=b_{m}x^{m}+b_{m-1}x^{m-1}+\ldots+b_{2}x^{2}+b_{1}x+b_{0},$$ $$p\left(x\right)=u\left(x\right)\cdot v\left(x\right)=c_{n+m}x^{n+m}+c_{n+m-1}x^{n+m-1}+\ldots+c_{2}x^{2}+c_{1}x+c_{0}.$$ По определению произведения многочленов, коэффициенты $p\left(x\right)$ равны $$\displaystyle c_{i}=\sum_{\alpha+\beta=i}^{}a_{\alpha}b_{\beta},\;\left(i = 0, 1, \ldots, n+m-1, n+m\right).$$ Рассмотрим коэффициент многочлена $p\left(x\right)$ при $x^{n+m}:$ $$c_{n+m}=\sum_{\alpha+\beta=n+m}a_{\alpha}b_{\beta}=a_{n}b_{m}.$$ Очевидно, $a_{n}b_{m}\neq 0,$ иначе хоть один из множителей был бы равен нулю и степени $u\left(x\right)$ и/или $v\left(x\right)$ были бы нарушены. Тогда $c_{n+m}\neq 0$ и $\deg\left(p\left(x\right)\right)=\deg\left(u\left(x\right)\right)+\deg\left(v\left(x\right)\right)=n+m.$

Примеры решения задач

Читателю предлагается решить эти примеры и сравнить своё решение с приведённым.

  1. Вычислить $\deg\left(p\left(x\right)\right)=u\left(x\right)\cdot v\left(x\right),$ если: $$u\left(x\right)=6x^8-19x^7+40x^6-52x^5+74x^4-60x^3+34x^2+5x+50,$$ $$v\left(x\right)=42.$$
    Решение

    Очевидно, умножение на число не изменит степени многочлена. Однако, убедимся в этом с помощью леммы, считая $v\left(x\right)$ многочленом нулевой степени. $$\deg\left(p\left(x\right)\right)=\deg\left(u\left(x\right)\right)+\deg\left(v\left(x\right)\right)=8+0=8.$$

  2. Определить степень произведения $u\left(x\right)\cdot v\left(x\right),$ если: $$u\left(x\right)=10x^7+26x^6+46x^5+56x^4+114x^3+80x^2+48x+70,$$ $$v\left(x\right)=39x^5+185x^4+193x^3+81x^2+56x+20.$$
    Решение

    Воспользуемся леммой. Пусть $p\left(x\right)=u\left(x\right)\cdot v\left(x\right).$ Тогда: $$\deg\left(p\left(x\right)\right)=\deg\left(u\left(x\right)\right)+\deg\left(v\left(x\right)\right)=7+5=12.$$

Смотрите также

  1. А.Г. Курош Курс высшей алгебры. — Издание девятое. — Москва:Наука, 1968. — 431с. (c. 132)
  2. Р.Галлагер Теория информации и надежная связь. -М.:»Советское радио», 1974. — 720с. (c. 232-233)
  3. Белозёров Г.С. Конспект лекций.

Лемма о степени произведения двух многочленов

Этот тест призван проверить Ваши знания по теме «Лемма о степени произведения двух многочленов».

Лемма о степени суммы двух многочленов

Лемма. Степень суммы двух многочленов меньше либо равна наибольшей из степеней слагаемых.

Рассмотрим многочлены $$u\left(x\right)=a_{n}x^{n}+a_{n-1}x^{n-1}+\ldots+a_{2}x^{2}+a_{1}x+a_{0},$$ $$v\left(x\right)=b_{m}x^{m}+b_{m-1}x^{m-1}+\ldots+b_{2}x^{2}+b_{1}x+b_{0},$$ $$s\left(x\right)=u\left(x\right)+v\left(x\right)=c_{p}x^{p}+c_{p-1}x^{p-1}+\ldots+c_{2}x^{2}+c_{1}x+c_{0},$$ где $p=\max\left(m,n\right).$ По определению суммы двух многочленов, коэффициенты $s\left(x\right)$ равны $$c_{i}=a_{i}+b_{i},\; \left(i = 0, 1, \ldots, p-1, p\right).$$ Рассмотрим коэффициент многочлена $s\left(x\right)$ при $x^{p}:$ $$c_{p}=a_{n}+b_{m},$$ если они существуют, т.е. если $n=m.$ Если же $n>m,$ то $c_{p}=a_{n}.$ Иначе, $n<m$ и $c_{p}=b_{m}.$ Таким образом, степень $s\left(x\right)$ не будет больше $\max\left(m,n\right).$ В случае же $m=n$ и $a_{n}=-b_{m},$ $c_{p}=0$ и степень $s\left(x\right)<p.$

Примеры решения задач

Читателю предлагается решить эти примеры и сравнить своё решение с приведённым.

  1. Какой степени будет сумма $u\left(x\right)+v\left(x\right),$ если: $$u\left(x\right)=10x^7+26x^6+46x^5+56x^4+114x^3+80x^2+48x+70,$$ $$v\left(x\right)=7x^7+19x^6+39x^5+185x^4+193x^3+81x^2+56x+20?$$
    Решение

    Воспользуемся леммой. Пусть $s\left(x\right)=u\left(x\right)+v\left(x\right).$ Поскольку $\deg\left(v\left(x\right)\right)=\deg\left(u\left(x\right)\right)=7,$ коэффициент многочлена $s\left(x\right)$ при $x^{7}$ равен $c_{7}=10+7=17\neq 0.$ Следовательно, $\deg\left(s\left(x\right)\right)=7.$

  2. Определить степень суммы многочленов $u\left(x\right)+v\left(x\right),$ если: $$u\left(x\right)=45x^7-47x^6-x^5-140x^4+10x^3+13x^2+24x+12,$$ $$v\left(x\right)=-45x^7+47x^6+x^5+27x^4+12x^3+6x^2+2x+21.$$
    Решение

    Воспользуемся леммой. Пусть $s\left(x\right)=u\left(x\right)+v\left(x\right),$ коэффициенты $u\left(x\right),$ $v\left(x\right),$ $s\left(x\right)$ равны $a_{i},$ $b_{i},$ $c_{i}$ соответственно. Аналогично предыдущему случаю, $\deg\left(v\left(x\right)\right)=\deg\left(u\left(x\right)\right)=7.$ Рассмотрим коэффициенты $s\left(x\right):$ $$c_{7}=a_{7}+b_{7}=45+\left(-45\right)=0.$$ Значит, $\deg\left(s\left(x\right)\right)<7.$ $$c_{6}=a_{6}+b_{6}=-47+47=0,$$ $$c_{5}=a_{5}+b_{5}=-1+1=0,$$ $$c_{4}=a_{4}+b_{4}=-140+27=-113\neq 0.$$ Значит, $\deg\left(s\left(x\right)\right)=4.$

Смотрите также

  1. А.Г. Курош Курс высшей алгебры. — Издание девятое. — Москва:Наука, 1968. — 431с. (c. 132)
  2. Р.Галлагер Теория информации и надежная связь. -М.:»Советское радио», 1974. — 720с. (c. 232-233)
  3. Белозёров Г.С. Конспект лекций.

Лемма о степени суммы двух многочленов

Этот тест призван проверить Ваши знания по теме «Лемма о степени суммы двух многочленов».

Теорема об аддитивной группе многочленов

Теорема. Пусть $P\left[x\right]$ — множество многочленов над полем от переменной $x,$ $+$ — операция сложения многочленов. Тогда $\left( P\left[x\right],+ \right)$ — абелева группа.

Очевидно, $P\left[x\right]\neq \varnothing,$ $+$ — БАО. Проверим выполнение аксиом абелевой группы:

  1. Ассоциативность операции: $$\forall u\left(x\right),v\left(x\right),w\left(x\right) \in P\left[x\right]: \left(u\left(x\right)+v\left(x\right)\right)+w\left(x\right)=u\left(x\right)+\left(v\left(x\right)+w\left(x\right)\right).$$ Как известно, операция сложения многочленов обладает ассоциативностью.
  2. Коммутативность операции: $$\forall u\left(x\right),v\left(x\right) \in P\left[x\right]:u\left(x\right)+v\left(x\right)=v\left(x\right)+u\left(x\right).$$ Сложение многочленов также обладает и коммутативностью.
  3. Покажем что существует нейтральный элемент по сложению, а именно: $$\exists e \in P\left[x\right]\; \forall u\left(x\right) \in P\left[x\right]: u\left(x\right)+e=e+u\left(x\right)=u\left(x\right).$$ Таким элементом выступает число $0,$ которое можно рассматривать как одночлен, или как многочлен с коэффициентами равными нулю. Из определения сложения многочленов, сложение с ним не изменит коэффициенты исходного многочлена, т.к. $0$ является нейтральным элементом для сложения чисел.
  4. Наконец, покажем существование противоположного элемента: $$\forall u\left(x\right) \in P\left[x\right]\; \exists -u\left(x\right)\in P\left[x\right]: u\left(x\right)+\left(-u\left(x\right)\right)=-u\left(x\right)+u\left(x\right)=e=0.$$ Получить такой элемент для любого многочлена можно просто заменив все его коэффициенты на противоположные (простыми словами — поменяв их знаки). Суммой таких многочленов, в силу противоположности их коэффициентов как чисел, будет многочлен, все коэффициенты которого равны нулю, или просто $0.$

Итак, все аксиомы выполняются, следовательно $\left( P\left[x\right],+ \right)$ — абелева группа.

Примеры решения задач

Читателю предлагается решить эти примеры и сравнить своё решение с приведённым.

  1. Является ли $\left( P^3\left[x\right],+ \right),$ где $P^3\left[x\right]$ — множество многочленов третьей степени, абелевой группой?
    Решение

    Очевидно, операция сложения многочленов сохраняет все свои свойства на этом множестве, а нейтральный и противоположный элементы ему принадлежат $\Rightarrow$ все аксиомы выполняются. Также, $+$ остается БАО, а $P^3\left[x\right]\neq \varnothing.$ Значит, ответ положительный.

  2. Является ли $\left( P^3\left[x\right],\cdot \right),$ где $P^3\left[x\right]$ — множество многочленов третьей степени, а $\cdot$ — операция умножения многочленов, абелевой группой?
    Решение

    Аналогично первому примеру, $P^3\left[x\right]\neq \varnothing.$ Однако, в случае умножения, произведением двух многочленов $3$-й степени будет многочлен $6$-й степени (по лемме о степени произведения), что выходит за границы рассматриваемого множества. Значит, $\left( P^3\left[x\right],\cdot \right)$ — не абелева группа.

Смотрите также

  1. А.Г. Курош Курс высшей алгебры. — Издание девятое. — Москва: Наука, 1968. — 431с. (c. 132-134)
  2. К.Д. Фадеев Лекции по алгебре. — Москва: Наука, 1984. — 416с. (c. 54-55)
  3. А.И. Кострикин Введение в алгебру. Основы алгебры. — Москва: Физматлит, 1994. -320с. (с. 211-212)
  4. Белозёров Г.С. Конспект лекций.

Аддитивная группа многочленов

Этот тест призван проверить Ваши знания по теме «Аддитивная группа многочленов».

Операции над многочленами

Сложение многочленов

Определение. Пусть даны многочлены $$u\left(x\right)=a_{n}x^{n}+a_{n-1}x^{n-1}+\ldots+a_{2}x^{2}+a_{1}x+a_{0},$$ $$v\left(x\right)=b_{m}x^{m}+b_{m-1}x^{m-1}+\ldots+b_{2}x^{2}+b_{1}x+b_{0}.$$ Будем считать, что $n\geqslant m.$ Тогда их суммой является многочлен $$s\left(x\right)=u\left(x\right)+v\left(x\right)=c_{n}x^{n}+c_{n-1}x^{n-1}+\ldots+c_{2}x^{2}+c_{1}x+c_{0},$$ каждый коэффициент $c_{i}$ которого получается сложением соответствующих коэффициентов $a_{i}$ и $b_{i},$ $\left(i = 0, 1, \ldots, n-1, n\right).$ Причём, если $n\geqslant i>m,$ то считаем, что $b_{i}=0.$

Замечание. Можно определить и вычитание многочленов, как сложение с противоположным. «Нулём» будет выступать нулевой многочлен $\left(0\right),$ а противоположный данному многочлен получается заменой всех коэффициентов на противоположные: $$u\left(x\right)=a_{n}x^{n}+a_{n-1}x^{n-1}+\ldots+a_{2}x^{2}+a_{1}x+a_{0},$$ $$-u\left(x\right)=-a_{n}x^{n}-a_{n-1}x^{n-1}-\ldots-a_{2}x^{2}-a_{1}x-a_{0}.$$

Основные свойства сложения

1. Степень суммы. Степень суммы двух многочленов меньше либо равна наибольшей из степеней слагаемых. (Лемма)

2. Коммутативность: $u\left(x\right)+v\left(x\right)=v\left(x\right)+u\left(x\right).$

Пусть $$u\left(x\right)+v\left(x\right)=s_{1}\left(x\right),\; v\left(x\right)+u\left(x\right)=s_{2}\left(x\right).$$ Рассмотрим коэффициенты $s_{1}\left(x\right)$ и $s_{2}\left(x\right).$ Они равны в силу коммутативности сложения чисел $\left(a_{i}+b_{i}=b_{i}+a_{i}\right),$ а значит, $s_{1}\left(x\right)=s_{2}\left(x\right),$ что доказывает коммутативность сложения многочленов.

3. Ассоциативность: $\left(u\left(x\right)+v\left(x\right)\right)+w\left(x\right)=u\left(x\right)+\left(v\left(x\right)+w\left(x\right)\right).$

Пусть коэффициенты $u\left(x\right),$ $v\left(x\right)$ и $w\left(x\right)$ равны $a_{i},$ $b_{i},$ и $c_{i}$ соответственно. Зададим их суммы: $$\left(u\left(x\right)+v\left(x\right)\right)+w\left(x\right)=f\left(x\right),$$ $$u\left(x\right)+\left(v\left(x\right)+w\left(x\right)\right)=g\left(x\right).$$ Для доказательства ассоциативности, докажем равенство $f\left(x\right)$ и $g\left(x\right).$ Рассмотрим общие формулы их коэффициентов: $$f_{i}=\left(a_{i}+b_{i}\right)+c_{i},$$ $$g_{i}=a_{i}+\left(b_{i}+c_{i}\right).$$ Аналогично коммутативности, равенство этих двух многочленов следует из ассоциативности операции сложения для чисел, из чего и следует ассоциативность сложения многочленов.

Умножение многочленов

Определение. Пусть даны многочлены $$u\left(x\right)=a_{n}x^{n}+a_{n-1}x^{n-1}+\ldots+a_{2}x^{2}+a_{1}x+a_{0},$$ $$v\left(x\right)=b_{m}x^{m}+b_{m-1}x^{m-1}+\ldots+b_{2}x^{2}+b_{1}x+b_{0}.$$ Тогда их произведением является многочлен $$p\left(x\right)=u\left(x\right)\cdot v\left(x\right)=c_{n+m}x^{n+m}+c_{n+m-1}x^{n+m-1}+\ldots+c_{2}x^{2}+c_{1}x+c_{0},$$ образующийся в результате простого умножения $u\left(x\right)\cdot v\left(x\right)$ и приведения подобных членов. Таким образом, каждый коэффициент произведения $$\displaystyle c_{i}=\sum_{\alpha+\beta=i}^{}a_{\alpha}b_{\beta},\; \left(i = 0, 1, \ldots, n+m-1, n+m\right).$$

Замечание. Для многочленов операция обратная умножению (деление) не определена. Однако, существует алгоритм деления с остатком.

Основные свойства умножения

1. Степень произведения. Степень произведения двух многочленов равна сумме степеней множителей. (Лемма)

2. Коммутативность: $u\left(x\right)\cdot v\left(x\right)=v\left(x\right)\cdot u\left(x\right).$

Рассмотрим многочлены $u\left(x\right)$ и $v\left(x\right)$ из определения произведения. Пусть $$f\left(x\right)=u\left(x\right)\cdot v\left(x\right)=c_{n+m}x^{n+m}+c_{n+m-1}x^{n+m-1}+\ldots+c_{2}x^{2}+c_{1}x+c_{0},$$ $$g\left(x\right)=v\left(x\right)\cdot u\left(x\right)=d_{n+m}x^{n+m}+d_{n+m-1}x^{n+m-1}+\ldots+d_{2}x^{2}+d_{1}x+d_{0}.$$ Тогда, коэффициенты многочлена $f\left(x\right)$ равны $\displaystyle c_{i}=\sum_{\alpha+\beta=i}^{}a_{\alpha}b_{\beta},$ а многочлена $g\left(x\right)$ — $\displaystyle d_{i}=\sum_{\alpha+\beta=i}^{}b_{\beta}a_{\alpha}.$ Из очевидного равенства этих сумм вытекает равенство $f\left(x\right)$ и $g\left(x\right),$ а значит, $u\left(x\right)\cdot v\left(x\right)=v\left(x\right)\cdot u\left(x\right)$ и коммутативность доказана.

3. Ассоциативность: $\left(u\left(x\right)\cdot v\left(x\right)\right)\cdot w\left(x\right)=u\left(x\right)\cdot \left(v\left(x\right)\cdot w\left(x\right)\right).$

Пусть коэффициенты $u\left(x\right),$ $v\left(x\right)$ и $w\left(x\right)$ равны $a_{i},$ $b_{i},$ и $c_{i}$ соответственно, а именно: $$u\left(x\right)=a_{n}x^{n}+a_{n-1}x^{n-1}+\ldots+a_{2}x^{2}+a_{1}x+a_{0},$$ $$v\left(x\right)=b_{m}x^{m}+b_{m-1}x^{m-1}+\ldots+b_{2}x^{2}+b_{1}x+b_{0},$$ $$w\left(x\right)=c_{s}x^{s}+c_{s-1}x^{s-1}+\ldots+c_{2}x^{2}+c_{1}x+c_{0}.$$ Теперь, зададим их произведения в нужном порядке: $$f\left(x\right)=u\left(x\right)\cdot v\left(x\right)=d_{n+m}x^{n+m}+d_{n+m-1}x^{n+m-1}+\ldots+d_{2}x^{2}+d_{1}x+d_{0},$$ $$g\left(x\right)=v\left(x\right)\cdot w\left(x\right)=r_{m+s}x^{m+s}+r_{m+s-1}x^{m+s-1}+\ldots+r_{2}x^{2}+r_{1}x+r_{0},$$ $$h\left(x\right)=\left(u\left(x\right)\cdot v\left(x\right)\right)\cdot w\left(x\right)=k_{n+m+s}x^{n+m+s}+\ldots+k_{2}x^{2}+k_{1}x+k_{0},$$ $$l\left(x\right)=u\left(x\right)\cdot \left(v\left(x\right)\cdot w\left(x\right)\right)=p_{n+m+s}x^{n+m+s}+\ldots+p_{2}x^{2}+p_{1}x+p_{0}.$$ Для доказательства ассоциативности, докажем равенство многочленов $h\left(x\right)$ и $l\left(x\right).$ Рассмотрим общую формулу коэффициента $h\left(x\right):$ $$\displaystyle k_{i}=\sum_{q+\gamma =i}d_{q}c_{\gamma }=\sum_{q+\gamma =i}\left( \sum_{\alpha +\beta =q}^{}\left(a_{\alpha }b_{\beta }\right)\cdot c_{\gamma }\right) = \sum_{\alpha +\beta +\gamma=i}a_{\alpha }b_{\beta }c_{\gamma }.$$ Теперь покажем, что общую формулу коэффициента $l\left(x\right)$ можно привести к такому же виду: $$\displaystyle p_{i}=\sum_{\alpha+q=i}a_{\alpha}r_{q}=\sum_{\alpha+q=i}\left( a_{\alpha}\cdot \sum_{\beta+\gamma=q}b_{\beta}c_{\gamma} \right)= \sum_{\alpha +\beta +\gamma=i}a_{\alpha }b_{\beta }c_{\gamma }.$$ Из равенства коэффициентов следует равенство многочленов, что и доказывает ассоциативность.

Примеры решения задач

Читателю предлагается решить эти примеры и сравнить своё решение с приведённым.

  1. Сложить многочлены $3x^4+2x^3-4x^2-8x+10$ и $8x^3-4x^2-9x-10.$

    Решение

    Воспользуемся определением суммы многочленов: $$\left(3x^4+2x^3-4x^2-8x+10\right)+\left(8x^3-4x^2-9x-10\right)=$$ $$=\left(3+0\right)x^4+\left(2+8\right)x^3+\left(-4+\left(-4\right)\right)x^2+\left(-8+\left(-9\right)\right)x+\left(10-10\right)=$$ $$=3x^4+10x^3-8x^2-17x.$$

  2. Найти разность $7x^7+10x^6-20x^5+10x^4-13x^3+8x^2+11x+19$ и $5x^7-10x^5+7x^4+x^3+11x^2+20x+11.$

    Решение

    Сложим первый многочлен с противоположным второму: $$7x^7+10x^6-20x^5+10x^4-13x^3+8x^2+11x+19 +$$ $$+\left(-5x^7+10x^5-7x^4-x^3-11x^2-20x-11\right)=$$ $$=\left(7-5\right)x^7+\left(10+0\right)x^6+\left(-20+10\right)x^5+\left(10-7\right)x^4+$$ $$+\left(-13-1\right)x^3+\left(8-11\right)x^2+\left(11-20\right)x+\left(19-11\right)=$$ $$=2x^7+10x^6-10x^5+3x^4-14x^3-3x^2-9x+8.$$

  3. Найти произведение $2x^2+5x-1$ и $4x^2-x+3.$

    Решение

    Умножим два многочлена и приведём подобные: $$\left(2x^2+5x-1\right)\cdot \left(4x^2-x+3\right)=$$ $$=8x^4-2x^3+6x^2+20x^3-5x^2+15x-4x^2+x-3=$$ $$=8x^4+\left(20-2\right)x^3+\left(6-5-4\right)x^2+\left(15+1\right)x-3=$$ $$=8x^4+18x^3-3x^2+16x-3.$$

  4. Найти произведение $-3x^2+7x+9$ и $6x^2+2x+8.$

    Решение

    На этот раз, воспользуемся общей формулой коэффициента из определения произведения многочленов. Тогда: $$u\left(x\right)=-3x^2+7x+9,\;a_{2}=-3,a_{1}=7,a_{0}=9,$$ $$v\left(x\right)=6x^2+2x+8,\;b_{2}=6,b_{1}=2,b_{0}=8,$$ $$p\left(x\right)=u\left(x\right)\cdot v\left(x\right)=c_{4}x^4+c_{3}x^3+c_{2}x^2+c_{1}x+c_{0}.$$ По определению, $\displaystyle c_{i}=\sum_{\alpha+\beta=i}^{}a_{\alpha}b_{\beta},$ $\left(i=0,1,2,3,4\right).$ Вычислим их. $$c_{0}=\sum_{\alpha+\beta=0}^{}a_{\alpha}b_{\beta}=a_{0}b_{0}=9\cdot 8=72,$$ $$c_{1}=\sum_{\alpha+\beta=1}^{}a_{\alpha}b_{\beta}=a_{0}b_{1}+a_{1}b_{0}=9\cdot 2 + 7\cdot 8=74,$$ $$c_{2}=\sum_{\alpha+\beta=2}^{}a_{\alpha}b_{\beta}=a_{0}b_{2}+a_{1}b_{1}+a_{2}b_{0}=9\cdot 6+7\cdot 2+\left(-3\right)\cdot 8=44,$$ $$c_{3}=\sum_{\alpha+\beta=3}^{}a_{\alpha}b_{\beta}=a_{1}b_{2}+a_{2}b_{1}=7\cdot 6+\left(-3\right)\cdot 2=36,$$ $$c_{4}=\sum_{\alpha+\beta=4}^{}a_{\alpha}b_{\beta}=a_{2}b_{2}=-3\cdot 6=-18.$$ Имеем: $$p\left(x\right)=u\left(x\right)\cdot v\left(x\right)=-18x^4+36x^3+44x^2+74x+72.$$

Смотрите также

  1. А.Г. Курош Курс высшей алгебры. — Издание девятое. — Москва: Наука, 1968. — 431с. (c. 130-134)
  2. К.Д. Фадеев Лекции по алгебре. — Москва: Наука, 1984. — 416с. (c. 54-55)
  3. А.И. Кострикин Введение в алгебру. Основы алгебры. — Москва: Физматлит, 1994. -320с. (с. 211-212)
  4. Белозёров Г.С. Конспект лекций.

Операции над многочленами

Этот тест призван проверить Ваши знания по теме «Операции над многочленами».