Why do people say that the fast Fourier transform (FFT) “views”, or “interprets”, or “assumes” its input sequence is periodic? I ask this question because the activities of viewing, interpreting, and assuming can only be performed by a living creature with a brain.
I hope I won't repeat what you already know...
It's not the DFT/FFT algorithm "who" views (or "assumes", or "interprets") it being periodic, rather it's the "mathematician's mindset" which assumed periodic signals at the input of the algorithm, and designed the algorithm that way.
It's exactly on par with saying that "Newton's laws assume that space & time are absolute..."; laws of mechanics do not have a "brain" to assume such a thing, rather Newton himself made that assumption that the time & space were absolute, and then formulated his laws accordingly, which compute dynamical quantities based on that assumption.
Today we know (believe) that those assumptions are not valid (Special Relativity), yet if you use Newton's laws to compute high-speed phenomena, you may end up objects having speeds larger than speed of light; this inconsistency is due to fact that the "assumptions of the law" are not validated. Here the assumptions are reflected into the mathematical structure of the formulation of the law.
Moving to DSP; in essence, Discrete Fourier Transform (DFT) is by definition one period of the Discrete Fourier Series (DFS); and very naturally DFS works with periodic sequences. I don't know who defined it that way, but it's the case.
So, you cannot compute the DFS of a single rectangular pulse, for example. If you try to find the DFS/DFT coefficients of such a nonperiodic pulse, internally, the mathematical algorithm treats it as if it were periodically extended, and computes the coefficients that way; by fitting periodic sine waves to the periodically extending waveform. Then, when you want to synthesize back the input waveform with the given DFT/DFS coefficients, and evaluating the formula for all n, then you will get not a single pulse but a periodic extension of that pulse. So the zeros outside of the pulse duration are not naturally generated by the inverse DFS/DFT (synthesis) formula.
You must externally force your output to be zero for those out of duration samples. And that's typically what's done with the DFT block length definition.
Most objectively, it depends on how we view it. There's those who insist on viewing the Discrete Fourier Transform as a "special case" of the continuous Fourier Transform - and interpret all input/output behavior in terms of continuous FT "with a brickwall". Then there's those who view it as a standalone transform that operates on finite observations - a tool to directly "communicate" with reality. I go deeper here and here.
I'm in the latter camp; I've learned much since writing these Q&A's, and haven't budged a bit. Continuous FT is useful for predicting certain DFT behaviors, but also enables flaws in not only mathematical but physical reasoning if one's not careful.
The one and only thing that DFT "assumes", without dispute, is that the input is finite (in length and values). Nothing else is required for it to produce valid results.
I thank everyone for their comments and Answers. And the links given herein are very interesting. I confess that I did not word my question as well as I should have. I wasn’t asking why people believe that DFT input sequences were periodic. I was asking why people insist on personifying the DFT algorithm. (Personification: the act of giving human characteristics to animals or objects.)
I believe that it is incorrect to write that the DFT views, or interprets, or assumes anything because the DFT cannot perform mental activities. (Square root algorithms don't pass judgement, trigonometric algorithms don't form opinions, and the DFT algorithm does not make assumptions.)
Guilty as charged, as I just recently used this sub=optimal phrasing in an answer (which probably triggered the question). :-)
I was asking why people insist on personifying the DFT algorithm.
In my case it was just sloppiness/laziness. Many beginners are not aware of the underlying periodicity and it's implications. It's a very common misconception but it's awkward to write "You are using an FFT. This a specific algorithm to implement the Discrete Fourier Transform which is applicable only to discrete signals. That means your signal is assumed to be discrete in both the time and frequency domain, which in turns means it's also periodic both domains".
I probably am guilty too of using this poor wording. I do think it provides great intuition to realize that the DFT like the Fourier Series Expansion will provide the same result for non-zero values if the waveform is finite or periodic, repeating over the original time interval of interest. A fundamental difference is when the axis extends to infinity in one domain, it will be continuous in the other. So for the case of a periodic discrete time sequence with time that extends to infinity, the frequency axis will be continuous, although having a value zero for all values except at harmonics of the repetition rate in time which can have non-zero values for magnitude and phase. When the discrete sequence only extends for a finite time, as input to the DFT, the results are discrete in frequency and only exist at the harmonics of the duration of the time domain waveform.
So agreed, the DFT doesn't assume anything! The result of the DFT is consistent with the result we would get for the Fourier Transform of a periodic waveform, yes. I concur that concise and accurate wording is important, so thanks Richard for calling us out on that!