Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Алгебра в Mathematice( учебник Кристалинского).doc
Скачиваний:
26
Добавлен:
25.08.2019
Размер:
1.67 Mб
Скачать
  1. Неприводимые многочлены.

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

Если же не может быть разложено на такое произведение, то многочлен называется неприводимым над полем

Произвольный многочлен с коэффициентами из поля может быть записан в следующем виде

, (3.3.1)

где различные многочлены, неприводимые над полем

, -натуральные числа.

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

Говорят, что многочлен входит в с кратностью , если делится на , но не делится на .

Можно доказать, что если неприводимый многочлен входит в с кратностью , то в производную он войдёт с кратностью .

Пусть . Обозначим через произведение всех однократных неприводимых множителей; через -произведение всех двукратных неприводимых множителей , взятых по одному разу, через -произведение всех трёхкратных неприводимых множителей, взятых по одному разу и т.д. Может случиться, что не имеет однократных множителей. Тогда будем считать, что . Вообще, будем считать, что , если не имеет кратных множителей. Если наивысшая кратность множителей многочлена то имеет место соотношение

. (3.3.2)

Процесс построения разложения (3.3.2) называется отделением кратных множителей. Он реализуется по следующему алгоритму.

Находим наибольший общий делитель многочлена и его производной . Можно доказать, что

Наибольший общий делитель многочленов и будет равен

.

Наибольший общий делитель многочленов и будет равен

.

Наконец получим

Далее составляем

Отсюда находим

.

Описанный алгоритм реализуется в системе Mathematica следующим образом.

Пример 3.3.1. Выделить кратные неприводимые множители для многочлена

Решение.

Вводим заданный многочлен

f[x_]=x^8+2*x^7+5*x^6+6*x^5+

8*x^4+6*x^3+5*x^2+2*x+1;

Полагаем g[x] равным заданному многочлену

g[x_]=f[x];

g[x_]=PolynomialGCD[g[x],D[g[x],x]];

d=Append[d,g[x]];

While[Length[CoefficientList[g[x],x]]>1,g[x_]=

PolynomialGCD[g[x],D[g[x],x]];

d=Append[d,g[x]]];

Здесь тело цикла выполняется до тех пор, пока не получится многочлен нулевой степени

Определяем число элементов массива d

s=Length[d];

E1=Table[0,{n,1,s-1}];

Do[E1[[n]]=PolynomialQuotient[d[[n]],d[[n+1]],x],

{n,1,s-1}]

Строим массив из кратных множителей данного многочлена

X=Table[0,{n,1,s-1}];

Do[X[[n]]=PolynomialQuotient[E1[[n]],E1[[n+1]],x],

{n,1,s-2}]

X[[s-1]]=E1[[s-1]];

X

Выписываем кратные множители данного многочлена

В системе Mathematica реализованы алгоритмы разложения многочлена на множители над различными числовыми полями.

Пусть поле рациональных чисел, многочлен с коэффициентами из этого поля. Разложение осуществляется при выполнении команды Factor[f[x]]

Пример 3.3.2. Разложить на неприводимые множители над полем рациональных чисел следующий многочлен

Решение.

Factor[f[x]]

Рассмотрим множество комплексных чисел следующего вида

,

где и рациональные числа, . Можно проверить, что это множество образует числовое поле. Это поле называется полем гауссовых чисел. Разложение многочлена на множители, неприводимые над этим полем реализуется следующим образом.

Пример 3.3.3. Разложить на неприводимые множители над полем гауссовых чисел многочлен .

Решение.

Рассмотрим множество чисел вида , где и - гауссовы числа. Легко проверить, что это множество чисел так же образует числовое поле. Разложение многочлена на множители с коэффициентами из указанного поля производится следующим образом

Пример 3.3.4.Разложить на множители над рассматриваемым полем многочлен .

Решение.

В системе Mathematica можно производить разложение многочлена на неприводимые множители над полем, которое не является числовым.

Пример 3.3.5. Разложить на неприводимые множители над полем классов вычетов по модулю 2 многочлен .

Решение.

    1. 2.4 Корни многочлена.

Если при значении многочлен принимает значение , то число называется корнем этого многочлена. Всякий многочлен ненулевой степени с любыми числовыми коэффициентами имеет хотя бы один корень, действительный или комплексный.

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

Пример 3.4.1. Найти корни многочлена .

Решение.

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

Пример 3.4.2. Найти корни многочлена .

Решение.

Если коэффициенты многочлена не содержат параметров, то система Marhematica позволяет найти приближённые значения корней этого многочлена.

Пример 2.4.3. Найти приближённые значения корней многочлена

.

Решение.

{{x-1.18858+0.532643 },{x-1.05423-0.786636 },

{x-0.23021-0.286179 },{x-0.0726108+1.28631 },

{x-0.06423+0.46295 },{x0.176451 -1.35633 },

{x1.15738 +0.73759 },{x1.27604 -0.590341 }}

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

Пример 4.4. 2. Изобразить графически зависимость корня многочлена

от параметра .

Решение.

y=x/.R[[1]];

Plot[y,{a,-2,2},PlotStyle->{Thickness[0.01]}]

Пусть - многочлен с действительными коэффициентами. Число называется верхней границей вещественных корней многочлена , если этот многочлен не имеет вещественных корней, больших или равных . Аналогично определяется верхняя и нижняя границы положительных или отрицательных корней многочлена.

Если верхняя граница положительных корней многочлена , а - верхняя граница положительных корней многочлена то вещественные корни многочлена расположены в промежутке .

Пусть - многочлен степени с вещественными коэффициентами. Можно доказать, что если при многочлен и его производные положительны, то является верхней границей положительных корней рассматриваемого многочлена. Система Mathematica позволяет найти промежуток, на котором многочлен и все его производные положительны и, тем самым найти верхнюю границу положительных корней многочлена. Аналогично находится и нижняя граница его корней.

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

Пример 3.4.4. Найти промежуток, на котором расположены вещественные корни многочлена и получить их значения с точностью до восьми десятичных знаков.

Решение.

Строим массив из производных данного многочлена.

F=Table[D[f[x],{x,n-1}],{n,1,5}];

Находим промежуток, на котором сам многочлен и все его производные положительны, и получаем наименьшее значение верхней границы вещественных корней многочлена.

G=F[[1]]>0;

Do[G=G&&F[[n]]>0,{n,2,5}]

N[Reduce[G,x]]

x>1.78913539

Находим верхнюю границу положительных корней многочлена f[-x].

f1[x_]=f[-x];

F1=Table[D[f1[x],{x,n-1}],{n,1,5}];

G1=F1[[1]]>0;

Do[G1=G1&&F1[[n]]>0,{n,2,5}]

N[Reduce[G1,x]];

x>0.4082481

Получаем, что все вещественные корни многочлена расположены на промежутке (-0.41,1.79.Строим график многочлена на этом промежутке.

Plot[f[x],{x,-0.41,1.79},PlotStyleThickness[0.01]]

Уточняем значения вещественных корней многочлена.

FindRoot[f[x],{x,0}]

{x0.02758765}

FindRoot[f[x],{x,1.7}]

{x1.78913539}

Пусть - многочлен с действительными или комплексными коэффициентами. Можно доказать, что все его корни изображаются точками комплексной плоскости, лежащими внутри круга с центром в начале координат и радиуса , где наибольшее из чисел .

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

  1. Выделить вещественную и мнимую части рассматриваемого многочлена и .

  2. В квадрате построить множества точек .

  3. Точи пресечения построенных множеств и будут изображать корни рассматриваемого многочлена.

Пример 3.4.5. Найти корни многочлена .

Решение.

Находим вещественную и мнимую части заданного многочлена

f1[x_,y_]=ComplexExpand[f[x+I*y]];

u[x_,y_]=Simplify[Re[f1[x,y]],xReals&&yReals]

v[x_,y_]=Simplify[Im[f1[x,y]],xReals&&yReals]

Строим массив из коэффициентов заданного многочлена

L=CoefficientList[f[z],z];

n=Length[L];

Находим радиус круга, в котором расположены корни многочлена.

L1=Abs[Take[L,n-1]];

A=Max[L1];

R=1+A/Abs[L[[n]]];

Строим изображения корней многочлена.

<<Graphics`ImplicitPlot`