Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


Наибольший общий делитель многочленов. Алгоритм Евклида.



Теорема. Для любых f эF[x] и g эF[x], одновременно не равных нулю, их наибольший общий делитель d существует и определен однозначно с точностью до множителя c, где c — произвольная ненулевая константа.

Доказательство. Вначале докажем, что если НОД существует, то он определен с точностью до множителя c. Действительно, если d, d1 — наибольшие общие делители многочленов f и g, то d:d1 и d1:d, поэтому по пункту имеем d = cd1 для некоторой константы c.
Приведем конструктивное доказательство существования наибольшего общего делителя. Опишем хорошо известный алгоритм Евклида нахождения НОД. Если f <> 0, а g = 0, то, очевидно, в качестве наибольшего общего делителя можно взять f, поэтому, не нарушая общности, можно считать, что  g <> 0 (напомним, что f и g не равны нулю одновременно). На нулевой итерации разделим f на g, в частном получим q1, в остатке — r1. Если r1 <>0, то перейдем к первой итерации, на которой разделим g на r1, в частном получим q2, в остатке — r2. На i-й итерации разделим ri−1 на ri , в в частном получим  qi+1, в остатке— ri+1. Вычисления продолжаются до тех пор, пока на некоторой, скажем, s-й, итерации вычисленный в результате очередного деления остаток rs+1 не будет нулевым. Докажем, что rs является наибольшим общим делителем многочленов f и g. Имеем

f = q1g + r1, (β0)

g = q2r1 + r2, (β1)

r1 = q3r2 + r3, (β2)

rs−3 = qs−1rs−2 + rs−1, (βs−2)

rs−2 = qsrs−1 + rs, (βs−1)

rs−1 = qs+1rs. (βs)

Из равенства (βs) следует, что (rs−1):r(s). Поэтому в правой части равенства (βs−1) первое слагаемое делится на rs. Так как второе слагаемое, очевидно, также делится на rs, то вся правая часть равенства (βs−1) делится на rs, поэтому на rs делится и левая часть этогоьравенства, т. е. rs−2. В правой части равенства (βs−2) на rs также делятся оба слагаемых

и, следовательно, (rs−2): rs. Рассматривая эти равенства далее снизу вверх (легко провести

индукцию), приходим к выводу, что на rs делятся правые части в (β0) и (β1), т. е. f:rs и

g:rs, т. е. rs — общий делитель многочленов f и g.

Теперь покажем, что любой общий делитель d многочленов f и g является также делителем многочлена rs. Так как f:d и g:d, то из (β0) получаем, что r1:d. Далее, так как g: d

и r1:d, то из (β1) получаем, что r2: d. Рассматривая далее эти равенства сверху вниз (легко

провести индукцию), приходим к выводу, что rs:d.

Итак, НОД двух ненулевых многочленов существует и определен с точностью до постоянного множителя. Чтобы избежать многозначности, среди всех возможных НОД двух многочленов f, g можно выбрать многочлен со старшим коэффициентом 1 (если это не так, то разделим многочлен на старший коэффициент). Именно его мы будем обозначать НОД(f, g).

 


Расширенный алгоритм Евклида для многочленов. Коэффициенты Безу (линейное разложение НОД).

Пусть f, g, d — ненулевые многочлены из F[x] и d — НОД многочленов f и g. Тогда найдутся такие u, v из F[x], что       uf + vg = d, причем deg u < deg g, а deg v < deg f. Многочлены u и v называются коэффициентами Безу.

Доказательство. Очевидно, что достаточно научиться находить коэффициенты Безу по крайней мере для одного из возможных НОД, например, для НОД, выдаваемого алгоритмом Евклида. Применим к f и g алгоритм Евклида. В ходе его работы получим последовательности частных q1, q2, . . . , qs+1 и остатков r1, r2, . . . , rs. На первой итерации запишем два тривиальных равенства:

f = 1 · f + 0 · g, (γ−1)

g = 0 · f + 1 · g, (γ0)

и вычтем из первого второе, умноженное на q1. Тогда согласно (β0) в левой части получим r1. В правой части соберем множители у f и у g:

r1 = 1 · f + (−q1) · g. (γ1)

На второй итерации вычтем из равенства (γ0) равенство (γ1), умноженное на q2. Согласно (β1) в левой части получим r2. В правой части снова соберем множители у f и у g:

r2 = (−q2) · f + (1 + q1q2) · g. (γ2)

На третьей итерации из (γ1) вычтем (γ2), умноженное на q3. Согласно (β2) в левой част получим r3. В правой части снова соберем множители у f и у g:

r3 = (1 + q2q3) · f + (−q1 − q3 − q1q2q3) · g. (γ3)

Будем выполнять такие преобразования далее. На k-й итерации (k = 1, 2, . . . , s), вычитая из равенства (γk−2) равенство (γk−1), умноженное на qk, получим

rk = ukf + vkg, (γk)

где uk, vk — некоторые многочлены. На s-й итерации получим

d = rs = usf + vsg. (γs)

Можно считать, что многочлены us и vs ненулевые . Если    deg us < deg g и deg vs < deg f, то us и vs — искомые коэффициенты Безу. В противном случае выполним следующую процедуру.

Пусть, для определенности, deg us ≥ deg g. Разделим us на g: us = qg + r. Теперь из (γs)

получаем

d = rf + (vs + qf)g.

Обозначим u = r, v = vs + qf. Имеем uf + vg = d и deg u < deg g. Покажем, что deg v < deg f,

тем самым завершив доказательство теоремы. Предположим противное: deg v ≥ deg f, тогда

deg(uf) < deg g + deg f, но deg(vg) ≥ deg g + deg f, поэтому

deg d = deg(uf + vg) ≥ deg g + deg f,

что противоречит тому, что d — НОД многочленов f и g.

Алгоритм нахождения коэффициентов Безу, описанный при доказательстве теоремы, называется расширенным алгоритмом Евклида


Поделиться:



Последнее изменение этой страницы: 2019-06-19; Просмотров: 652; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.018 с.)
Главная | Случайная страница | Обратная связь