
Why is the Fourier transform so important? - memexy
https://dsp.stackexchange.com/questions/69/why-is-the-fourier-transform-so-important
======
credit_guy
A transform has to have 3 properties to be useful:

\- it should make some hard operations simple (otherwise, why use it)

\- it should be easier to compute the direct and inverse transform

\- both the direct and inverse transforms should be stable

The Fourier transform has the first property: it changes derivatives and
antiderivatives in multiplications and divisions. It also changes convolutions
into multiplications. Obviously, there are some flip sides, but if you are
lucky, it can transform some hard problems into solvable problems.

Now, the second and third point. The third is just a part of the second: if a
transform is not stable, it is not easy to compute. But it bears spelling it
out. What does stable mean? The mathematical term is "well-posed", vs "ill-
posed". If the difference between two inputs is small, you don't want the
difference between the outputs to be very large. In particular, if the
difference between two inputs is below machine level precision, they are
identical from the computational point of view. If the difference between the
outputs is very, very large, then the output of the transform is
computationally indeterminate. So the transform is useless.

Bear with me one more paragraph. For two inputs, the transform can either
increase their relative distance, or decrease it. The separating case is when
the transform preserves the distance, but that doesn't happen too often (well,
hold that thought though). If a transform always decreases the distance, it's
called a contraction, and it is a very stable transform; in particular, it's
easy to implement it on a computer, you don't need to be too smart in order to
deal with round-off errors, etc.

The problem with contractions is that the more stable they are the more
unstable their inverses are.

A lot of transforms are contractions on a part of their domain and "anti-
contractions" on a different part. And the "constant of contraction" can be
very-very small on some parts, and "constant of expansion" very-very large on
some other parts. So, you end up with a locally very unstable both direct
transform and inverse transform.

For this reason, if you pick a random transform it's going to be quite
useless. Most often, both the direct, or the inverse transform are unstable.

In some cases, the direct is very stable, but the inverse is not. That's the
case for the Laplace transform. A few days ago we had a discussion on HN about
a breakthrough claiming to solve the problem with the inverse Laplace
transform. Time will tell, but if the claim is true, those guys will be hailed
as heroes. A Nevanlinna prize is not unthinkable.

Now, the Fourier transform is that middle case between a contraction and an
anti-contraction. It is an isometry. The theorem that states that is the
Plancherel theorem [1]. People don't care that much about this theorem, it's
not really that useful. But the fact that it holds, is what makes the Fourier
transform so useful.

On top of that, there is a fast algorithm for the Fourier tranform, the
appropriately named Fast Fourier Transform. This is the cherry on the top. It
certainly doesn't hurt, but even if this algorithm didn't exist, the Fourier
transform would still be really useful.

[1]
[https://en.wikipedia.org/wiki/Plancherel_theorem](https://en.wikipedia.org/wiki/Plancherel_theorem)

~~~
memexy
So which property is missing? What you listed and explained applies to the
Fourier transform. Isometries preserve distances which sounds pretty stable.

~~~
credit_guy
None. The Fourier transform certainly has all 3 properties.

The Laplace transform is not very stable, it's difficult to invert. So it's
going to always be second tier compared to Fourier.

