-1
$\begingroup$

I don't understand this remark and it's the first I hear it. Isn't this directly at odds with "DFT assumes input is periodic"? The full statement,

the signals are nonzero for $t < 0$, while the FFT can deal only with causal signals

$\endgroup$
5
  • 3
    $\begingroup$ If you want to have this discussion, please write a complete self-contained question with all relevant context included so people don't need to read through a longish (and somewhat tortured) comment thread. $\endgroup$
    – Hilmar
    Jun 10, 2022 at 12:41
  • $\begingroup$ I didn't downvote, but if the fallacy is obvious, what is the question? BTW, I agree that mathematically the DFT does not require a signal to be zero for $t<0$. $\endgroup$
    – MBaz
    Jun 11, 2022 at 15:05
  • 2
    $\begingroup$ //"... the FFT can deal only with causal signals"// $$ $$ Who says this?? (it's crap.) $\endgroup$ Jun 11, 2022 at 16:39
  • 2
    $\begingroup$ I didn't downvote but suggest posting the question to the originator as a comment under that thread directly. There may likely be a better explanation in context that can be resolved first. The DFT has no requirement or assumption about causality (the FFT is an algorithm that computes the DFT). Causality is specified in the unilateral Laplace Transform for example but there is not such condition in the DFT. $\endgroup$ Jun 11, 2022 at 17:42
  • $\begingroup$ @robertbristow-johnson Last upvoted comment. My guess is something about phase and alignment which happens to equate to causal for boxcars, but so is "DFT assumes input is non-negative". $\endgroup$ Jun 17, 2022 at 14:05

3 Answers 3

0
$\begingroup$

I did not find the reference in your text, but I would assume that the author simply means that the processing needs to be delayed as the dft can not look into the future.

$\endgroup$
5
  • $\begingroup$ It's the last non-me comment $\endgroup$ Jun 10, 2022 at 12:18
  • $\begingroup$ This thread has the potential to lead us into very thought-provoking territory. I hope more people post their thoughts regarding this thread. $\endgroup$ Jun 11, 2022 at 9:19
  • $\begingroup$ Yah, Richard Lyons knows very well that I don't have a neutral opinion about it. $\endgroup$ Jun 11, 2022 at 16:44
  • 3
    $\begingroup$ @robert-bristow-johnson I'd like to be in a room with chairs, a whiteboard, a couple of pots of hot coffee (or a couple of pitchers of irish whisky) and several of the guys from this group to discuss the "DFT input periodicity" topic. $\endgroup$ Jun 13, 2022 at 12:16
  • 1
    $\begingroup$ I would too. I'm a little bit adamant about it. I'm also that way about the ranked-choice voting issue. $\endgroup$ Jun 14, 2022 at 5:01
0
$\begingroup$

The original statement needs to be considered in context as we cannot of course create a device that will at its output provide the result of a DFT before we get the input; but from a post-processing perspective (where we later compute what the result would be if we had a certain input condition with assumptions on where time = 0 is referenced) the result of the DFT operation is indeed consistent with a time domain input that is non-causal.

The time domain samples for the DFT are inherently non-causal, due to the later half of the time domain array equally representing negative time samples, and ultimately the equivalent periodicity in time inherent in the DFT computation. To say that the time samples for the DFT can only be causal (meaning non-zero negative time samples cannot exist) because we start the time array at index $n=0$ consistent with time being 0 and index forward in the positive time directly would be similar to concluding that the DFT result in the frequency domain can only represent positive frequency samples. Most familiar with the DFT are very comfortable with associating the later half of the frequency array as equally representing the negative frequency samples (and using fftshift in MATLAB, Octave and Python to put the array in such ordering). The same consideration is given in the time domain in that the later half of the time array can equally represents negative time samples.

The time domain waveform for a DFT is mathematically consistent with non-causal waveforms, and not otherwise. Here is a very simple example that demonstrates a non-causal case which gives a real result in frequency which only a non-causal time domain waveform can provide:

Consider the real time domain sequence x[n] = [0 1 2 3 4 4 3 2 1]

The Discrete Fourier Transform of this time domain sequence will be completely real with no non-zero imaginary components as demonstrated below.

It is well understood and easily proven that any causal real signal in the time domain MUST be complex in the frequency domain. Therefore the sequence given must be non-causal.

The first sample of the sequence represents the sample at time index $n=0$, the next four samples are positive time sequences, but the samples beyond that equally represent positive time or negative time samples. When we scale by the total number of samples, the non-zero DFT result is mathematically consistent with what we would get in the limit for the DFT if the sequence repeated periodically in time extending to both positive and negative infinity (non-causal).

The reason causal signals MUST be complex is proven through even and odd function decomposition (where even functions are symmetric about the time =0 axis and odd functions are antisymmetric). I will demonstrate this with the test sequence given above:

An even real function in time MUST be real in frequency. The sequence [0 1 2 3 4 4 3 2 1] which starts at time index $n=0$ is also the sequence [4 3 2 1 0 1 2 3 4] with time index $n=0$ in the center, and represents an even real function. The DFT of the sequence [0 1 2 3 4 4 3 2 1] is plotted below:

DFT of even real function

An odd real function in time MUST be complex in frequency. For this we will negative the negative time samples of the sequence above, resulting in the sequence [0 1 2 3 4 -4 -3 -2 -1], or with $n=0$ in the center this is [-4 -3 -2 -1 0 1 2 3 4], and the DFT of this sequence is plotted below:

DFT of odd real sequence

If we add the two sequences, all the negative time samples given would be zero, resulting in the sequence [0 1 2 3 4 0 0 0 0], or with $n=0$ in the center: [0 0 0 0 0 1 2 3 4]. The sum of the time domain waveforms is equal to the sum of their DFT's showing that the result must be complex. However still even with this case of all negative frequencies given being zero, the waveform still cannot be assumed to be causal given the equivalence to a periodic sequence repeating to positive and negative infinity. This is in contrast to the DTFT where no such periodic relationship exists; with the DTFT we can compute the accurate result for what can be represented as causal and non-causal time-domain waveforms.'

Another point of interest: The real component of the DFT of [0 1 2 3 4 4 3 2 1] is related to the imaginary component of the DFT of [0 1 2 3 4 -4 -3 -2 -1] as the negative of the Hilbert Transform!

-Hilbert

$\endgroup$
5
  • $\begingroup$ Your second paragraph was one of my initial guesses, but it doesn't absolve the issue: per symmetry, DFT can't tell x[N//2 + 1] apart from x[-(N//2 - 1)]. Even if we go out of our way to force an interpretation, I see nothing that can't instead be stated in terms of phase or alignment. It's just a bag of fallacies. $\endgroup$ Jun 17, 2022 at 21:09
  • $\begingroup$ @OverLordGoldDragon yes time offset or alignment (certainly not phase) are consistent with causality. I don’t see a fallacy- all I am saying is it is mathematically equal as I wrote. In the end the input to the DFT is just an array of numbers, the rest is our definition on what time represents. $\endgroup$ Jun 17, 2022 at 21:44
  • 1
    $\begingroup$ I'm saying that alignment doesn't require causality, unless we mean different things. What I call "fallacy" is requiring a signal to be zero over any interval (let alone infinite) for DFT to work. $\endgroup$ Jun 17, 2022 at 22:18
  • 1
    $\begingroup$ @OverLordGoldDragon ok yes no disagreement. I thought you were thinking I was saying that - and important that we first define clearly what we mean by causal (per my first paragraph). $\endgroup$ Jun 18, 2022 at 1:22
  • $\begingroup$ If my earlier comment was misleading: time offset or alignment are consistent with making causal sequences non-causal- since we can rotate or change the time offset in the DFT consistent with positive or negative delays, then we can compute a DFT result that is consistent with a non-causal sequence. So I have trouble with the statement “DFT can only deal with a causal sequence” but as I said there is probably other context or definition on “causality” that would go with that statement I am not considering. Hopefully my answer addresses where I am coming from. $\endgroup$ Jun 18, 2022 at 3:17
0
$\begingroup$

I cannot speak for the source, but with much due clarification, it's correct in an important sense: "DFT is a sampling of DTFT" assumes we're taking $\texttt{DFT}$ of $x[n]$, where $x[n] \triangleq x(ns)$ with $s$ being the sampling period, and most importantly, $n = [0, 1, ..., N - 1]$ - meaning, the time vector starts at $t=0$. The context was to have an exact analytic expression for DFT by manipulating the continuous Fourier transform.

Interestingly, it's not quite correct, in that in continuous time, the signal actually spans $[-s, T-s]$ as shown here.

If this "assumption" isn't satisfied, then the DTFT must be amended to account for $t[0]$, but it's doable.

Lastly, I strongly disagree with suggestions that "practicality of processing" justifies the phrase. The DFT is completely agnostic of the offset or units of the time axis, only that it be sampled uniformly. This answer isn't an approval of "FFT assumes input is causal" by any stretch, only that it has a fair interpretation in-context.

$\endgroup$
7
  • $\begingroup$ With kind respect, this new post is really hard to follow- the first paragraph of your answer doesn’t match the question, can you edit either to make this clearer? Readers should not have to go through the comment and other posts or answers to figure out what this is about, right? I am not even sure there is a clear answer to the question as posted. Your pointing out one (common) version of a discrete to continuous time mapping is however interesting. $\endgroup$ May 25 at 2:04
  • $\begingroup$ No, you're right, I've just not cared given the context surrounding this question. It's an easy edit though so I'll try to do it a bit later. $\endgroup$ May 25 at 2:06
  • $\begingroup$ I think you could fit that good observation in on its own (nothing to do with DTFT) $\endgroup$ May 25 at 2:08
  • $\begingroup$ This I don't follow. All the answer says is that the statement makes sense only in that it's required for the DFT to be a sampling of DTFT. Did you infer something else, or are you saying I'm missing something or am mistaken? $\endgroup$ May 25 at 2:10
  • 1
    $\begingroup$ You quote “DFT is a sampling of the DTFT” comes with no context when you read the question and then your answer (maybe it just needs an introduction as to why you are bringing that in). If you are asking about my later comment I was referring to your second paragraph “Interestingly…” which I think I see what you were getting at and agree it is interesting (and not the only way to map continuous to discrete) $\endgroup$ May 25 at 2:16

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

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