# understanding discrete-time convolution in LTI systems

I'm trying to understand the discrete-time convolution for LTIs and its graphical representation. standard explanations (like: this one) start with the idea of decomposing an input signal $$x[t]$$ into a sum of unit impulses. We have unit impulse function $$\delta$$: $$\delta[n]= \begin{cases} 1,& \text{if}\ n = 0\\ 0,& \text{if}\ n\neq0 \end{cases}$$

then $$x[t]$$ can be represented as:

$$x[t] = \sum_{k = -\infty}^{+\infty}x[k]\cdot\delta[t-k]$$

so the input signal at $$t$$, $$x[t]$$, can be represented this way because $$\delta[t-k]$$ is going to be 1 only if $$t = k$$, and 0 elsewhere. this makes great sense.

the confusion for me begins in Transparency 4.2 of above link. the left hand side makes perfect sense, but what does the right represent? how does one unit impulse generate a sequence of responses? what does $$x[0]h[n]$$ represent here? How do you go from this to Transparency 4.9 where $$h$$ is used instead of $$\delta$$?

put differently: can someone explain the intuition behind $$h$$ (the response of a an LTI system) being reflected and time shifted? in the above trick for representing simply the input signal $$x[t]$$, there's no time shifting really; $$\delta[t-k]$$ seems like just a mathematical trick for getting a $$1$$ in the right place and zero elsewhere; it's not intuitive for me to think of it as time shifted.

if we use the fact that in LTI, the response of a system to input $$n$$, $$y[n]$$, is just the superposition of the responses to unit impulses of input signal $$x[n]$$, why can't we write convolution this way instead?

$$y[n] = \sum_{k=-\infty}^{+\infty}x[k]h[n]$$

• Read the second half of this answer and the whole of this other answer. Also, please form a study group with user9576 whose question on math.SE is word-for-word the same as yours. He/she is confused by exactly the same things as you are! Sep 8, 2014 at 2:38
• @DilipSarwate: i followed your advice, could not understand how to get moderators to repost so simply reposted Sep 8, 2014 at 3:32
• @DilipSarwate: I read your answer several times. I follow the table, can see the calculation works (that you really get $y(n)$ this way) but it still doesn't answer the flipping. that you can flip the input instead of the response to signal impulse and get mathematically equivalent statement is clear. I still don't understand why the shifting/flipping of either $x$ or $h$ is needed. Sep 8, 2014 at 3:45
• I will answer only the last question in your post: "Why can't we write $y[n]=\sum_{k=-\infty}^\infty x[k]h[n]$ ?? Notice that $h[n]$ is a constant and not dependent on the index of summation $k$. Thus, your favorite way of finding the value of $y[n]$ gives $$y[n] = \sum_{k=-\infty}^\infty x[k]h[n] = h[n]\sum_{k=-\infty}^\infty x[k] = c\cdot h[n]$$ where $c$ is the value (hopefully finite) of the sum of the $x[k]$ values. If this is what you understand by convolution: that for all $n$, $y[n]$ is simply a multiple of $h[n]$, then that is a problem that I cannot help you with. Sep 8, 2014 at 18:11

You know that $h(n)$ is the system's response to the input $x(n)=\delta(n)$. Because of time-invariance, the response to $x(n)=\delta(n-k)$ is given by $h(n-k)$. If you write the input signal as
$$x(n)=\sum_kx(k)\delta(n-k)\tag{1}$$
then, due to linearity, you can write the output signal as the sum of the responses to each individual term $x(k)\delta(n-k)$ in (1), which is $x(k)h(n-k)$. So you get the convolution sum
$$y(n)=\sum_k x(k)h(n-k)\tag{2}$$
To compute (2) for a given value of $n$ you need to multiply $x(k)$ with $h(n-k)$ for all relevant values of $k$. Since you have $h(n\color{red}{-k})$ in (2) (i.e. with a minus sign before $k$) you need to flip the impulse response (shifted by the current value of $n$), multiply it with $x(k)$ and compute the sum.