# Impulse response of forward difference cascaded with one sample delay

Below is the excerpt from Discrete Time Signal Processing by Alan Oppenheim.  I don't get how $$(\delta[n+1] - \delta[n]) * \delta[n-1])$$ becomes $$\delta[n] - \delta[n-1]$$. The convolution sum operator "*" here is defined as below. $$y[n] = \sum_{k=-\infty}^{\infty} x[k]h[n-k]$$ How do I substitute the definitions of forward difference and one sample delay in this and arrive at the impulse response the author has given?

For any sequence $$x[n]$$ you have

$$x[n]\star\delta[n-n_0]=x[n-n_0]\tag{1}$$

because

$$x[n]\star\delta[n-n_0]=\sum_{k=-\infty}^{\infty}x[k]\delta[n-n_0-k]\tag{2}$$

Note that $$\delta[n-n_0-k]$$ is only non-zero for $$k=n-n_0$$, hence the result $$(1)$$.

Now use $$x[n]=\delta[n+1]-\delta[n]$$ and $$n_0=1$$.

The effet of $$\delta[n-n_0]$$ (as a filter) is a shift: $$x[n]*\delta[n-n_0]=x[n-n_0]$$. For instance, $$\delta[n]$$ does nothing (a $$0$$ shift), $$\delta[n-1]$$ shifts by one to the right, $$\delta[n+1]$$ shifts by one to the left.

So $$\delta[n+1]*\delta[n-1]$$ shifts by one to the left, then by one to the right. Finally, it performs a zero shift: $$\delta[n+1]*\delta[n-1]=\delta[n]$$. And $$\delta[n]*\delta[n-1]$$ does a zero shift, followed by a shift to the right: $$\delta[n]*\delta[n-1]=\delta[n-1]$$.

Hence, by linearity,

$$(\delta[n+1]-\delta[n])*\delta[n-1]=\delta[n]-\delta[n-1]\,.$$