Яка складність (на стандартній цілочисленній ОЗУ) обчислення стандартного дискретного перетворення Фур'є вектора з цілих чисел?
Класичний алгоритм швидких перетворень Фур'є , невідповідно [1] приписуваний Кулі та Тукі, зазвичай описується як запущений в час. Але більшість арифметичних операцій, виконаних у цьому алгоритмі, починаються зі складних х коренів єдності, які є (для більшості ) ірраціональними, тому точне оцінювання в постійному часі не є розумним. Це ж питання виникає з алгоритмом наївного часу (множення на матрицю Вандермонде на складні корені єдності).
Навіть не зрозуміло, як точно представити вихід DFT (у будь-якій корисній формі). Іншими словами, незрозуміло, що обчислення DFT насправді можливо!
Тому припустимо , нам потрібно тільки біт точності в кожній вихідної величини. У чому полягає складність обчислення дискретного перетворення Фур'є як функції і ? (Для конкретності не соромтеся вважати, що - сила 2. )
Або кожен приклад "FFT" в літературі насправді означає "швидке число-теоретичне перетворення "? [2]
Дивіться мої пов'язані питання щодо складності ліквідації Гаусса та найкоротших евклідових шляхів .
[1] Справді слід назвати алгоритм Гаусса-Рунге-Кеніга-Йейта-Штумпфа-Даніельсона-Ланчоса-Кулі-Тукі.
[2] І якщо так, то чому більшість підручників описують лише алгоритм складних чисел?