Какова сложность (в стандартном целочисленном ОЗУ) вычисления стандартного дискретного преобразования Фурье вектора из целых чисел?
Классический алгоритм для быстрых преобразований Фурье , неуместно [1] приписываемый Кули и Тьюки, обычно описывается как выполняющийся за времени. Но большинство арифметических операций, выполняемых в этом алгоритме, начинаются с сложных х корней единицы, которые (для большинства ) иррациональны, поэтому точная оценка в постоянном времени нецелесообразна. Та же проблема возникает с наивным алгоритмом времени (умножением на матрицу Вандермонда комплексных корней единицы).
Даже не ясно, как точно представить вывод ДПФ (в любой полезной форме). Другими словами, не ясно, что вычислительные ДПФ действительно возможны!
Итак, предположим, что нам нужно только битов точности в каждом выходном значении. Какова сложность вычисления дискретного преобразования Фурье в зависимости от n и b ? (Для конкретности, не стесняйтесь предполагать, что n является степенью 2. )
Или каждый случай «БПФ» в литературе на самом деле означает «быстрое теоретико-числовое преобразование »? [2]
Смотрите мои связанные вопросы о сложности гауссовского исключения и евклидовых кратчайших путей .
[1] Он действительно должен называться (некоторый префикс) алгоритмом Гаусса-Рунге-Кенига-Йейтса-Штумпфа-Даниэльсона-Ланчоса-Кули-Тьюки.
[2] И если да, то почему в большинстве учебников описывается только алгоритм комплексных чисел?