I have read when studying this subject that a system is LTI and causal if and only if it can be expressed as a difference equation (if it is in continuos time, as a differential one). I don't know if this is true, mayne I'm remembering it wrong.

The problem is that today I thought of the case of an IIR filter. It is not causal and it can be written as a difference equation.

So I have two questions about this:

1) Why does an LTI system have to accomplish the initial rest condition (causality?) in order to be expressed as a difference equation?

2) What about the IIR filters? They are not causal and they can be expressed as a difference equation. Why is that? What am I thinking wrong?


1 Answer 1


A difference equation does not imply causality.

For example, consider this system, with input $x$ and output $y$:

$y[n] + 0.2 y[n-1] = x[n] + 0.5 x[n-1]$

You can solve it (recursively) forwards in time as $y[n] = x[n] + 0.5 x[n-1] - 0.2 y[n-1]$.

Or you can solve it backwards in time as $y[n-1] = 5 x[n] + 2.5 x[n-1] - 5 y[n]$.

These are 2 valid and different results for the same difference equation. These 2 results correspond to the 2 possible regions of convergence of the system response (Z transform). Inner ROC corresponds to the causal solution; outer ROC to the non-causal solution.

Systems of greater order will have more ROCs and more different solutions.

If you impose causality, then you are implicitly selecting the inner ROC.

For the second question, IIR filters can be causal. The example above is an IIR system. The causal impulse response will be $h_{causal}[n] = (-0.2)^n u[n] + 0.5 (-0.2)^{n-1} u[n-1]$. This is causal and IIR.

  • $\begingroup$ See this PDF of a lecture from the MIT. In the 4th page, it is stated that casualty is a necessary condition in order to express a LTI system as a difference equation. Is that wrong? Also, I wonder if you could expand your answer and explain why the initial rest condition (not casualty) is necessary for the difference equation. $\endgroup$
    – Tendero
    Commented May 20, 2016 at 2:30
  • $\begingroup$ The lecture slides refer to the necessary conditions on the initial conditions, for the system to be LTI. I no place is causality a condition for liearity. Did you attend the lecture? If so, how exactly was this presented? $\endgroup$
    – Juancho
    Commented May 20, 2016 at 17:28
  • $\begingroup$ I just found that on the Internet, I'm not even from the USA :P I get what you said now. But I have one more question left: why do the initial conditions have to be 0 in order for the system to be LTI? $\endgroup$
    – Tendero
    Commented May 20, 2016 at 17:30
  • 1
    $\begingroup$ If, say, the initial condition is $y[0]=8$, this will hold no matter how you time-shift or scale the input, so it's not linear nor time-invariant. For linearity, initial conditions must be 0. For time invariance, you should also shift (together with the input) the moment at which you define the initial conditions. $\endgroup$
    – Juancho
    Commented May 20, 2016 at 17:33

Your Answer

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

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