Consider ordinary 3 dimensional space: Go to a corner of the room, where the floor and two walls meet, and see three lines, each line the intersection of the two walls or a wall and the floor. In usual building architecture, these three lines are mutually perpendicular, i.e., orthogonal.

Regard each of these three lines as an axis of a coordinate system. In particular, pick a point on each of the three axes to give us points with coordinates:

(1,0,0) -- the X axis

(0,1,0) -- the Y axis

(0,0,1) -- the Z axis

Soooo, now we have a standard coordinate system for ordinary 3 dimensional space.

Now consider a point P in the room (in my case, the end of the pony tail of that sweet, gorgeous blond I keep looking at!) with coordinates

(x,y,z)

for some numbers x, y, z.

For the X coordinate of point P we make use of the X axis and our point P: We take the dot (inner) product of

(1,0,0) and (x,y,z)

and get, presto, bingo, wonder of wonders, no doubt,
x.

Similarly for y and z.

Or, for each axis, our inner product projects point P on that axis. And from those projections we can reconstruct the coordinates of point P. Beginning to sound like Fourier theory????

This stuff of projections onto orthogonal and then reconstructions from that generalizes.

In Fourier theory, those sine waves are mutually perpendicular -- project one on another and get 0. That summation is the inner product for that projection.

And if not a summation, then an integration -- same stuff, use an inner product to do projections onto mutually perpendicular axes.

For the finite stuff, and just summation signs, it's fairly elementary.

For the integral stuff, with the Riemann integral of calculus, can see Baby Rudin, Principles of Mathematical Analysis and Fourier series, over finite lengths of time. For the Fourier integral, over the whole real axis, see the Lebesgue integral (partition on the Y axis instead of the X axis and get nicer properties) in Rudin's Real and Complex Analysis. For a version that uses Schwartz distributions, there Rudin's Functional Analysis.

Net, it's all about inner products and projections as we saw in the corner of a room.

Soooo, for some of the generalization, are working in an inner product space. A nice introduction is, of course, Halmos, Finite Dimensional Vector Spaces: Soooo, that's ordinary linear algebra, finite dimensional, but done with techniques that mostly generalize to infinite dimensions, e.g., as in Fourier series, integrals, distributions.

Rudin's Real and Complex Analysis also does Fubini's
theorem that helps with doing Fourier theory on surfaces, e.g., the ocean.

History: Halmos had gotten his Ph.D. under Doob, of Stochastic Processes (e.g., the stock market, weather, medical EGK, ...), and got a position under John von Neumann at the Institute for Advanced Study in Princeton; so, apparently Halmos wrote his finite dimensional book borrowing from von Neumann's work on the infinite dimensional case, e.g., as in von Neumann's Quantum Mechanics.

Right, a complete inner product space is a Hilbert space -- the complete is essentially as also in the real numbers, sequences that appear to converge in the distance (from the inner product) used always do have something to converge to.

Sooo, Hilbert space has a lot, asks a lot, making the examples restricted -- Rudin has a nice theorem that shows that really there's only one Hilbert space!

Halmos is my favorite author. Rudin is a close second.

Education Technique: While starting my career in computing, I studied both Halmos and Rudin carefully, independently. In linear algebra, also E. Nering. At the time, did a lot with the FFT (fast Fourier transform, mostly of J. Tukey), and, thus, at one point got "sole source" on some work for the US Navy. Then in grad school, the backgrounds in Halmos, Nering, Rudin, and the computing got me the best in the class on the three Ph.D. qualifying exams -- linear algebra, analysis, computing.

As I recall, Nering was
a student of E. Artin, at Princeton. Nering's book also considers the case of finite fields, that is, not only the rational, real, complex numbers. That helped
in a course in error correcting codes.

Why is the FFT "fast"? Well, if all you want is some one Fourier coefficient, it's not "fast". If you want all the coefficients, then just write a Do-loop and find them all one at a time -- easy enough to do. Get the discrete Fourier transform.
But if go for all the coefficients this way very often on fairly long streams of data, then can slow down even a fast computer. BUT: If the number of points in time is a power of 2, commonly 1024 = 2^10, and look carefully at elementary trigonometry, can see how to do a little on all the computing, then a little more on all of it, ..., for ~10 such passes, and, presto, bingo, be really a LOT faster, essentially n log(n) instead of n^2.

There's more at

https://www.youtube.com/watch?v=nmgFG7PUHfo

with the role of Richard Garwin working to do Fourier analysis on seismic data as part of detection of underground nuclear tests.

Much of the faculty was really, REALLY torqued that (1) I didn't fail the exams and (2) led the class. REALLY torqued!

Halmos, Rudin -- can be good stuff.