Ремонт принтеров, сканнеров, факсов и остальной офисной техники


назад Оглавление вперед




[231]

ния многочленов А(х) и В(х) в точках, являющихся корнями степени 2га из единицы.

3.Поточечное умножение. Поточечно умножить полученные значения многочленов А(х) и В(х) друг на друга. В результате получаются значения многочлена С(х) = А(х)В(х) в корнях степени 2га из единицы.

4.Интерполяция. Получить коэффициенты многочлена С(ж) при помощи обратного быстрого преобразования Фурье, примененного его значениям в корнях из единицы.

Шаги 1 и 3 требуют времени О(га), а шаги 2 и 4 - времени в (га lgra), как мы увидим в следующем разделе. Тем самым будет доказана следующая теорема:

Теорема 32.2

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

Упражнения

32.1-1

Найдите произведение многочленов А(х) = 7х3 - х2 + х - 10 и В(х) = 8х3 - 6х + 3, используя формулу (32.2). 32.1-2

Значение многочлена А(х) степени меньше га в данной точке жо можно найти, разделив А(х) на многочлен (ж - жо) и получив частное q(x) (которое является многочленом степени меньше га - 1) и остаток г, для которых

А(х) = q(x)(x - жо) + г.

Ясно, что А(хо) = г. Покажите, как вычислить остаток г и коэффициенты многочлена q(x) за время О(га), если даны жо и коэффициенты многочлена А. 32.1-3

Многочлен А(х) = 5j=o азх3 задан набором своих значений в га отличных от 0 точках. Укажите га пар аргумент-значение, задающих многочлен Arev(x) = 2~j=o an-i-jX3 (Другими словами, надо указать га различных точек и найти значения многочлена Arev в этих точках.)

32.1-4

Покажите, как использовать формулу (32.5) для интерполяции за время 0(га2). (Указание: Сначала вычислите Па:(ж - хк), для вь1 числения j-oro слагаемого надо разделить полученный многочлен на (ж - Xj). См. упражнение 32.1-2.)

32.1-5

Почему не удаётся делить многочлены тем же методом, деля их значения поточечно? Рассмотрите отдельно случаи, когда многочлены делятся друг на друга нацело и и когда имеется остаток.

32.1-6


Рис. 31.3 32.2 Значения ш$,и>1,... ,и>1 на комплексной плоскости, где uig = е2тгг/8 - главное значение корня степени 8 из единицы.

Рассмотрим два множества, А и В, каждое из которых содержит га целых чисел в диапазоне от 0 до Юга. Мы хотим найти их декартову сумму (Cartesian sum) А и В, определяемую как

С = {х + у : х £ А п у е В}.

Заметьте, что С может содержать целые числа от 0 до 20га. Нас интересуют элементы множества С, а также их «кратности» (сколькими способами данный элемент можно получить, сложив элемент А с элементом В). Покажите, что эта задача может быть решена за время в (га lgra). (Указание: представьте А и В многочленами степени не больше Юга.)

32.2 Дискретное преобразование Фурье. Быстрый алгоритм В разделе 32.1 мы собирались использовать комплексные корни из единицы как точки, в которых вычисляются значения многочлена, и говорили, что вычисление значений в них и интерполяция проводятся за время О (га lgra). Мы сейчас объясним, как это делается с использованием дискретного преобразования Фурье и быстрого алгоритма его выполнения. Комплексные корни единицы

Комплексным корнем степени га из единицы (complex rath root of unity) называют такое комплексное число ш, что

Имеется ровно га комплексных корней степени га из единицы. Они имеют вид е2жгк1п для к = 0,1,... , га - 1. Вспоминая формулу для экспоненты комплексного числа, можно написать

еги = cos и + г sin и.

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

ип = е2™1п(32.6)

называется главным значением корня степени га из единицы (the principal rath root of unity). Остальные корни из единицы являются его степенями.

Комплексные корни степени га из единицы образуют группу по умножению (см. раздел 33.3). Эта группа имеет ту же структуру, что и аддитивная группа (Zra, +), поскольку равенство oj™ = oj® = 1

j иj + k(j + k) mod n . i

показывает, что 0Jnn = un = Аналогично, ujn =

cj™-1. Докажем некоторые свойства корней из единицы.


Лемма 32.3 (Лемма о сокращении) Для любых целых га О, fc 0 и rf > О

32.7

Доказательство Согласно (32.6),

dk / 2iri/dn\dk

dn Vе)

2Tri/n\k

= LO,

n

к

Следствие 32.4

Для любого чётного га > О

,гг/2

= CJ2 = -1.

п

Доказательство

оставляется читателю в качестве упр. 32.2-1. Лемма 32.5 (Лемма о делении пополам)

Если га > 0 четно, то, возведя в квадрат все га комплексных корней степени га из единицы, мы получим все га/2 комплексных корней степени га/2 из единицы (каждый - по два раза).

Доказательство

тт-hк-\-п/2

Легко проверить, что корни Lon и ujn отличаются знаком и при возведении в квадрат дают одно и то же число иа = ип/2

Лемма о делении пополам позволит свести вычисление значений многочлена в корнях из единицы степени га к вычислению значений других многочленов в корнях из единицы степени га/2.

Лемма 32.6 (Лемма о сложении)

Для любого целого га 1 и неотрицательного целого к, не кратного га, выполнено равенство

Доказательство

По формуле (3.3) (которая верна и для комплексных чисел) имеем

(знаменатель не обращается в нуль, так как к не кратно га). Дискретное преобразование Фурье

Вспомним, что мы хотим вычислить значение многочлена

п-1

= о.

3=0

п-1



[стр.Начало] [стр.1] [стр.2] [стр.3] [стр.4] [стр.5] [стр.6] [стр.7] [стр.8] [стр.9] [стр.10] [стр.11] [стр.12] [стр.13] [стр.14] [стр.15] [стр.16] [стр.17] [стр.18] [стр.19] [стр.20] [стр.21] [стр.22] [стр.23] [стр.24] [стр.25] [стр.26] [стр.27] [стр.28] [стр.29] [стр.30] [стр.31] [стр.32] [стр.33] [стр.34] [стр.35] [стр.36] [стр.37] [стр.38] [стр.39] [стр.40] [стр.41] [стр.42] [стр.43] [стр.44] [стр.45] [стр.46] [стр.47] [стр.48] [стр.49] [стр.50] [стр.51] [стр.52] [стр.53] [стр.54] [стр.55] [стр.56] [стр.57] [стр.58] [стр.59] [стр.60] [стр.61] [стр.62] [стр.63] [стр.64] [стр.65] [стр.66] [стр.67] [стр.68] [стр.69] [стр.70] [стр.71] [стр.72] [стр.73] [стр.74] [стр.75] [стр.76] [стр.77] [стр.78] [стр.79] [стр.80] [стр.81] [стр.82] [стр.83] [стр.84] [стр.85] [стр.86] [стр.87] [стр.88] [стр.89] [стр.90] [стр.91] [стр.92] [стр.93] [стр.94] [стр.95] [стр.96] [стр.97] [стр.98] [стр.99] [стр.100] [стр.101] [стр.102] [стр.103] [стр.104] [стр.105] [стр.106] [стр.107] [стр.108] [стр.109] [стр.110] [стр.111] [стр.112] [стр.113] [стр.114] [стр.115] [стр.116] [стр.117] [стр.118] [стр.119] [стр.120] [стр.121] [стр.122] [стр.123] [стр.124] [стр.125] [стр.126] [стр.127] [стр.128] [стр.129] [стр.130] [стр.131] [стр.132] [стр.133] [стр.134] [стр.135] [стр.136] [стр.137] [стр.138] [стр.139] [стр.140] [стр.141] [стр.142] [стр.143] [стр.144] [стр.145] [стр.146] [стр.147] [стр.148] [стр.149] [стр.150] [стр.151] [стр.152] [стр.153] [стр.154] [стр.155] [стр.156] [стр.157] [стр.158] [стр.159] [стр.160] [стр.161] [стр.162] [стр.163] [стр.164] [стр.165] [стр.166] [стр.167] [стр.168] [стр.169] [стр.170] [стр.171] [стр.172] [стр.173] [стр.174] [стр.175] [стр.176] [стр.177] [стр.178] [стр.179] [стр.180] [стр.181] [стр.182] [стр.183] [стр.184] [стр.185] [стр.186] [стр.187] [стр.188] [стр.189] [стр.190] [стр.191] [стр.192] [стр.193] [стр.194] [стр.195] [стр.196] [стр.197] [стр.198] [стр.199] [стр.200] [стр.201] [стр.202] [стр.203] [стр.204] [стр.205] [стр.206] [стр.207] [стр.208] [стр.209] [стр.210] [стр.211] [стр.212] [стр.213] [стр.214] [стр.215] [стр.216] [стр.217] [стр.218] [стр.219] [стр.220] [стр.221] [стр.222] [стр.223] [стр.224] [стр.225] [стр.226] [стр.227] [стр.228] [стр.229] [стр.230] [стр.231] [стр.232] [стр.233] [стр.234] [стр.235] [стр.236] [стр.237] [стр.238] [стр.239] [стр.240] [стр.241] [стр.242] [стр.243] [стр.244] [стр.245] [стр.246] [стр.247] [стр.248] [стр.249] [стр.250] [стр.251] [стр.252] [стр.253] [стр.254] [стр.255] [стр.256] [стр.257] [стр.258] [стр.259] [стр.260] [стр.261] [стр.262] [стр.263] [стр.264] [стр.265] [стр.266] [стр.267] [стр.268] [стр.269] [стр.270] [стр.271] [стр.272] [стр.273] [стр.274] [стр.275] [стр.276] [стр.277] [стр.278] [стр.279] [стр.280] [стр.281] [стр.282] [стр.283] [стр.284] [стр.285] [стр.286] [стр.287] [стр.288] [стр.289] [стр.290] [стр.291] [стр.292] [стр.293] [стр.294]