# Why is interpolation a time varying system

I was reading about interpolation (Interpolation and Decimation of Digital Signals - A tutorial Review, Ronald E. Crochiere) and found that Interpolation filter is a time varying system. Can someone give an simple example why is it a time varying system. Because, as far as I understand, interpolation just stuffs zeroes between the samples to increase the sample rate by appropriate amount, even if we apply the input at a later time it should give the same output.
Also, even though the process is time varying we can represent it by using transfer functions. For instance, Zero order hold is represented by sinc filter. Why is this possible?

Considering a discrete time framework, the interpolation operation has two stages; first expand the signal by zero stuffing between the existing samples, and then lowpass filter the expanded signal to get the interpolated samples. The second operation is LTI, hence it's the first stage which is not LTI.

The expansion block is shown like $$x[n]\longrightarrow \boxed{ \uparrow L } \longrightarrow y[n]$$ and mathematically defined as

$$y[n] = \begin{cases}{ x[\frac{n}{L}] = x[m] ~~~ , ~~~ \text{ for } n = m L~~ ,~~ m=0,\pm 1, \pm 2,... \\ ~~~~~ ~~~~ ~~~ 0 ~~~~~ ~~~~ ~ , ~~~ \text{ otherwise } }\end{cases}$$

Now apply the test for time-invariance on $$y[n]$$ :

First shift the ipnut. Let $$x_d[n] = x[n-d]$$, then call $$y[n]$$ as $$y_2[n]$$ as:

$$y_2[n] = \begin{cases}{ x_d[\frac{n}{L}] = x_d[m] ~~~ , ~~~ \text{ for } n = m L~~ ,~~ m=0,\pm 1, \pm 2,... \\ ~~~~~ ~~~~ ~~~ 0 ~~~ ~~~~~~~~~~~~ ~, ~~~ \text{ otherwise }}\end{cases}$$

which becomes: $$y_2[n] = \begin{cases}{ x[\frac{n}{L} - d] = x[m-d] ~~~ , ~~~ \text{ for } n = m L~~ ,~~ m=0,\pm 1, \pm 2,... \\ ~~~~~ ~~~~ ~~~ 0 ~~~ ~~~~~~~~~~~~~~~~~ ~ , ~~~ \text{ otherwise } }\end{cases}$$

Second, similarly shift the output $$y[n]$$ by $$d$$ which is denoted as $$y_d[n] = y[n-d]$$:

$$y_d[n] = y[n-d] = \begin{cases}{ x[\frac{n-d}{L}]=x[m] ~~~ , ~~~ \text{ for } n-d = m L~~ ,~~ m=0,\pm 1, \pm 2,... \\ ~~~~~ ~ ~~~~ ~~~~ 0 ~~~ ~~~~~~~~~~ ~, ~~~ \text{ otherwise } }\end{cases}$$

which becomes: $$y_d[n] = \begin{cases}{ x[\frac{n-d}{L}] = x[m] ~~~ , ~~~ \text{ for } n = m L + d~~ ,~~ m=0,\pm 1, \pm 2,... \\ ~~~~~ ~~~~ ~~~ 0 ~~~ ~~~~~~~~~~ ~, ~~~ \text{ otherwise } }\end{cases}$$

As you can see, $$y_2[n]$$ and $$y_d[n]$$ are not the same signals. You can explicitly see this by evaluating them for specific values of $$n$$ and $$d$$, such as $$d=1$$ and $$n = L$$, then $$y_d[L] = 0$$ while $$y_2[L] = x[0]$$ and hence $$y_d[L] \neq y_2[L]$$. And therefore the conclusion that the expansion system (or as a consequence the interpolation system) is a Time-Varying and not LTI system.

• Thank you for clear explanation...Could you also explain why can we represent interpolation filters with transfer functions even though the process itself is time varying. – sarthak Nov 18 '18 at 12:04
• you cannot represent an interpolator with a transfer function (Z-transform of an associated (inexistant) impulse response) in the sense of $Y(z) = H(z) X(z)$ where x[n] is the input and y[n] is the output. Note that the Z-domain relation for the interpolator $Y(z) = H_{LPF}(z) X(z^L)$ does not mean the same thing as a transfer function as its not $X(z)$ but $X(z^L)$ involved. – Fat32 Nov 18 '18 at 13:26