For example, let's assume a system given as


I convert the difference equation to


and say that "the system is causal" and "not-memoryless" since it depends on past values of its output. But could it be possible to define a system to be "not-causal" and depend on any future value of its own output at the same time (no input term other than any present value of x[n] will be possible for this system and)?


2 Answers 2


By definition, the output of a causal system cannot depend on any future input or output values. However, I think there is a misunderstanding in your question. Suppose you are given the following difference equation:


The important point is that it is not possible to say if the system described by Eq. $(1)$ is causal or not, simply because Eq. $(1)$ does not uniquely describe one system, but in general there are three systems described by $(1)$. One of them is causal and its output can be computed from


Note that for any $n$ the output in $(2)$ only depends on past output (and input) values.

The second system described by Eq. $(1)$ is non-causal. The current output sample depends on past and on future output values:


And, finally, Eq. $(1)$ can also describe an anti-causal system, the output of which only depends on future output and input values:


The ambiguity of Eq. $(1)$ is also reflected in the $\mathcal{Z}$-transform domain, where $(1)$ corresponds to the following transfer function:


This transfer function, just like the difference equation $(1)$, does not uniquely define a system. Only if you specify the region of convergence (ROC) of $(5)$ will the system be uniquely characterized. Each of the three possible interpretations of Eq. $(1)$ discussed above correspond to a different ROC of $H(z)$.


Every time you have something like $y(n) = y(n+1) + x(n)$, you can convert it to something like $y(n) = y(n-1) - x(n-1)$, by substituting $n \rightarrow n-1$. So, depending on future values of the output is equivalent to depending on past values.


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.