Take the 2-minute tour ×
Mathematics Stack Exchange is a question and answer site for people studying math at any level and professionals in related fields. It's 100% free, no registration required.

Is it possible to make an algorithm faster than the fast Fourier transform to calculate the discrete Fourier transform (is there proofs for or against it)?

OR, a one that only approximates the discrete Fourier transform, but is faster than $O(NlogN)$ and still gives about reasonable results?

Additional requirements:

1) Let's leave the quantum computing out

2) I don't mean faster in sense of how its implemented for some specific hardware, but in the "Big-O notation sense", that it would ran e.g. in linear time.

Sorry for my english

share|improve this question
    
Quantum Fourier Transform: $O(\log^2 N)$ –  draks ... Nov 20 '12 at 20:01
    
Fastest currently implemented algorithm is fftw: fastest Fourier transform in the west. It's $O(n\log n)$ though. –  icurays1 Nov 20 '12 at 20:07
    
Mmm, ok, additional requirement: one that could be ran on computers we have today. :) –  just Nov 20 '12 at 20:07
    
This seems in the right direction. –  WimC Nov 20 '12 at 20:16
    
You've seen the Wikipedia page? "All known FFT algorithms require $\Theta(N \log N)$ operations... although there is no known proof that a lower complexity score is impossible." It would be interesting if we find out that Wikipedia is out of date, of course. –  Rahul Nov 20 '12 at 20:24

1 Answer 1

up vote 1 down vote accepted

There is an algorithm called sparse fast Fourier transform (sFFT), which is faster than FFT algorithms when the Fourier coefficients are sparse.

share|improve this answer
    
This appears to be partly the same that was pointed out by WimC (the paper he mentions could be found from the page you provided). I will accept your answer. Thanks also for WimC! –  just Nov 20 '12 at 22:05

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.