Дискретное преобразование Фурье
Дискре́тное преобразова́ние Фурье́ (ДПФ, классическое дискретное преобразование Фурье размера англ. Discrete Fourier Transform – DFT), преобразование вектора из комплексных чисел в другой вектор комплексных чисел, определяемое формулой которая зависит от выбора параметра – первообразного корня из единицы степени в поле комплексных чиселВ алгебре элемент некоторого поля характеристики называется первообразным корнем из если и степеней этого корня попарно различны.
Как и в большинстве публикаций, в качестве параметра ДПФ размера в данной статье берётся первообразный корень ДПФ может рассматриваться как аппроксимация более сложных конструкций: интегрального преобразования и ряда Фурье.
Число операций, выполняемых при «наивном» вычислении по определению
Считая заданным, числа можно вычислить, выполнив умножения на Поскольку каждый множитель в равен т. е. равен одному из чисел и каждое может быть вычислено по формуле путём выполнения умножений и сложений. В итоге вычисление исходя из определения, требует проведения арифметических операций над комплексными числами (учитываются операции сложения, вычитания, умножения комплексных чисел и операция деления комплексного числа на вещественное число). Используя обозначение «О большое», можно сказать, что наивное вычисление ДПФ размера по определению требует проведения арифметических операций. Наивный алгоритм вычисления ДПФ не оптимален. Существует целый класс алгоритмов, объединённых общим названием «быстрое преобразование Фурье», сокращённо БПФ (англ. Fast Fourier Transform – FFT), позволяющих вычислить ДПФ любого размера выполнив арифметических операций над комплексными числами.
Явная формула преобразования, обратного ДПФ
Введём многочлен одной переменной степени и обозначим как В таких обозначениях сопоставляет набору коэффициентов многочлена набор значений этого многочлена в заданных точках Обратное дискретное преобразование Фурье проводит интерполяцию – вычисляет по набору значений многочлена в заданных точках коэффициенты многочлена
В матричной форме переписывается как где где верхний индекс означает транспонирование и Матрица является частным случаем матрицы Вандермонда. Проверим, что обратной к матрице является матрица где – комплексное число, сопряжённое к и равное Для этого покажем, что где – единичная матрица
Нумеруя строки и столбцы рассматриваемых матриц, начиная с нуля, выпишем элемент произведения матриц лежащий на пересечении -й строки с -м столбцом. Этот элемент равен сумме попарных произведений элементов -й строки матрицы равных и элементов -го столбца матрицы равных Эта сумма является суммой геометрической прогрессии со знаменателем Умножив почленно на получимгде последнее слагаемое, очевидно, равно Сравнивая и видим, что правая часть получается из правой части перестановкой 1-го слагаемого в конец суммы и потому эти правые части равны. Значит, , или
В случае сумма превращается в сумму из единиц и равна В случае же имеем т. к. – первообразный корень из и поэтому число не равно Поскольку в поле комплексных чисел, как и во всяком поле, нет делителей нуля, из равенства вытекает
Таким образом, мы доказали, что каждый элемент главной диагонали матрицы равен а остальные элементы этой матрицы равны т. е. доказали Тем самым показано, что преобразование, обратное к дискретному преобразованию Фурье размера может быть выполнено с помощью ДПФ размера и последующих делений комплексного числа на вещественное число Значит, с использованием БПФ обратное ДПФ может быть выполнено столь же быстро, как и прямое ДПФ, а именно за арифметических операций. Этот факт лежит в основе алгоритмов т. н. быстрого умножения многочленов.
По определению, значение -значного -ичного числа есть не что иное, как значение в точке многочлена, коэффициентами которого являются цифры числа. Поэтому быстрое умножение многочленов над комплексными числами может быть положено в основу алгоритмов быстрого умножения многозначных чисел. С момента появления теории интегральных преобразований Фурье математики и физики знали, что свёртка функций может быть выполнена путём поточечного умножения их преобразований Фурье. Идея же применить этот факт к комбинаторной задаче умножения многозначных чисел появилась впервые в статье студента 4-го курса механико-математического факультета МГУ А. Тоома (Тоом. 1963). С тех пор эта идея используется во всех алгоритмах быстрого умножения многозначных чисел.
При использовании ДПФ и БПФ в задаче ускорения умножения многозначных чисел и задачах шифрования оказывается полезным перейти от комплексных чисел к конечным числовым системам, элементы которых могут быть представлены конечными двоичными кодами. В качестве таких числовых систем могут использоваться конечные поля при условии существования в них первообразного корня из степени А поскольку подбор полей, в которых существует первообразный корень нужной степени может оказаться затруднительным, вместо поля можно работать с кольцами вычетов по составному модулю и конечными ассоциативными коммутативными кольцами с единицей. При этом придётся использовать определение первообразного корня из степени служащего параметром ДПФ (см. Факторкольцо).
Так возникает теория т. н. теоретико-числовых ДПФ и БПФ.
Наряду с обычным (одномерным) ДПФ может быть определено и многомерное дискретное преобразование Фурье.