Быстрое умножение многочленов

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

Быстрое умножение двух комплексных многочленов степеней, меньших иначе говоря, свёртку двух последовательностей комплексных чисел длины можно выполнить путём сведения свёртки к выполнению двух дискретных преобразований Фурье (ДПФ) размера и одного преобразования, обратного к ДПФ размера . Выполнение каждого из этих трёх преобразований с помощью быстрого преобразования Фурье позволит затратить на выполнение свёртки не более арифметических операций.

Сведение свёртки последовательностей коэффициентов двух многочленов степени, меньшей к вычислению произведений значений этих многочленов в точках выполняется следующим образом. Пусть и – два многочлена степени и – их произведение. Дополним каждый из этих трёх многочленов нулевыми членами до степени . Полученные многочлены степени назовём и . Ясно, что многочлен является произведением многочленов и . Обозначим через корень из единицы степени с аргументом . Вычислим с помощью двух БПФ размера значения многочленов и в точках . Значения многочлена в этих точках можно вычислить, выполнив умножений: . Многочлен степени, не превосходящей принимающий заданные значения в различных точках, единственен. Поэтому коэффициенты многочлена могут быть найдены с помощью обратного ДПФ размера применённого к найденному выше набору его значений в точках . Затраты на выполнение двух прямых БПФ размера последующее вычисление произведений и обратное ДПФ размера составят арифметических операций над комплексными числами, что эквивалентно . Тем самым свёртка двух последовательностей длины может быть выполнена за арифметических операций.

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

Литература

  • Cooley J. W. An algorithm for the machine calculation of complex Fourier series / J. W. Cooley, J. W. Tukey // Mathematics of Computation. – 1965. – Vol. 19. – P. 297–301.
  • Гашков С. Б. Умножение / С. Б. Гашков, И. С. Сергеев // Чебышевский сборник. – 2020. – Т. 21, № 1. – С. 101–134.
Материалы портала bigenc.ru переданы в ведение АНО «Интернет-энциклопедия «РУВИКИ» на основе лицензионного соглашения. Возможны неточности в отображении материалов. Если у вас возникли вопросы или вы увидели ошибку, пожалуйста, сообщите нам на info@ruwiki.ru