I am given a notch digital filter with the $z$-transform being: $$W(z)=MF(z)F(z^{*})^{*}=M\frac{z-q}{z-p}\frac{z-q^{*}}{z-p^{*}}$$ where $M$ is the normalisation factor, $q=e^{-i2\pi\frac{f_0}{f_s}}$, $p=(1-\epsilon)q$ and $0< \epsilon \ll 1$. It is easy to see the zeros of this system are on the unit circle while the poles are inside the unit circle.

But how do we determine its stability? I think we must know whether this system is causal or anti-causal. I am very new to this subject so please be clear.

  • 1
    $\begingroup$ Welcome to SE.SP! It's more usual to have stable digital filters with poles inside the unit circle. Where did you have your formulation from? See this page for a python example that gives the magnitude of the poles as array([0.96905238, 0.96905238]) $\endgroup$
    – Peter K.
    Mar 18, 2023 at 18:35
  • $\begingroup$ Hopefully, that isn't your home work. $\endgroup$
    – typetetris
    Mar 19, 2023 at 11:02
  • $\begingroup$ With $\epsilon$ fixed in your question, we know that this IIR filter is stable and causal. $\endgroup$ Mar 19, 2023 at 22:50
  • $\begingroup$ A FIR filter is always stable whether it is causal, non-causal or even anti-cause. In the IIR case I don't know, whether there is a relationship between a filter being stable/unstable and its causality ... (but I doubt it). $\endgroup$
    – typetetris
    Mar 20, 2023 at 8:10

2 Answers 2


You probably know that a LTI filter is stable if and only if the poles of its transfer function are inside the unit circle.

So I guess you ask for a direct way of showing it in the case of your filter.

The transfer function of a filter is the $z$-transform of its impulse response. To show the filter is stable or unstable we have to show that its impulse response does or doesn't converge to zero over time.

Therefore we have to calculate the impulse response, given the transfer function of your filter.

To make things easier we first rewrite $W(z)$ as


and knowing that convolution in the time domain leads to multiplication in the $z$-domain, we will just look at the filter with the transfer function

$$H(z) = \frac{1}{(1-pz^{-1})(1-p^{*}z^{-1})}$$


$$F(z) = \frac{1}{1-pz^{-1}}\text{, }G(z) = \frac{1}{1-p^{*}z^{-1}}$$

we get


We use the geometric series and write

$$\sum_{l=0}^{\infty}p^lz^{-l} = F(z)\text{ and } \sum_{l=0}^{\infty}(p^*)^lz^{-l} = G(z)\quad (|z|<|p|)\text{.}$$

Therefore the impluse response for the filter with transfer function $F$ is $f_n = p^n\quad (n\in\mathbb{N})$ and for the filter with transfer function $G$ it is $g_n = (p^*)^n\quad (n\in\mathbb{N})$.

Now we calculate the impulse response of the filter with transfer function $H$ by $f\circledast g$:

$$(f\circledast g)_n = \sum_{l=0}^{n}f_lg_{n-l} = \sum_{l=0}^{n}p^l(p^*)^{n-l}$$

Using polar representation for $p = |p|e^{i\varphi}$ and a geometric series we can deduce

$$(f\circledast g)_n = \sum_{l=0}^{n}|p|^le^{il\varphi}|p|^{n-l}e^{-i(n-l)\varphi} =|p|^ne^{-in\varphi}\sum_{l=0}^{n}e^{2il\varphi} =\left\lbrace\begin{array}{lr} |p|^n(n+1)\text{,} & \text{for } \varphi = 0 \\ |p|^ne^{-in\varphi}\frac{1-e^{2i(n+1)\varphi}}{1-e^{2i\varphi}} & \text{for } 0<\varphi <\pi\\ (-1)^n|p|^n(n+1)\text{,} & \text{for } \varphi = \pi \end{array}\right\rbrace$$

which converges to $0$ for $t\to\infty$ if and only if $|p| < 1$. So for $|p| < 1$ the filter is stable and for $|p| \ge 1$ the filter is unstable.

Now you can find the impulse response $(l_n)_{n=0}^\infty$ for the FIR filter $\mathcal{L}$ with transfer function $L(z) = M(1-qz^{1})(1-q^*z^{-1})$ (which is not so hard) and convolve it with $f\circledast g$ and deduce some inequalities to show $(l\circledast (f\circledast g))$ converges to $0$ over time if and only if $|p| < 1$.

  • $\begingroup$ I am not a native speaker, so sorry for any english mistakes. $\endgroup$
    – typetetris
    Mar 19, 2023 at 11:03
  • $\begingroup$ For the Z-transform you can trade-off stability for causality. It depends on where you choose the ROC to be. Since the OP specifically mentioned causality, your answer should address this. $\endgroup$
    – David
    Mar 20, 2023 at 15:58
  • $\begingroup$ True. I alter my answer when I am off work. $\endgroup$
    – typetetris
    Mar 21, 2023 at 8:46
  • $\begingroup$ Posted a second answer for that, as it is totally different from my first answer attempt. Will delete this first answer attempt after a while. $\endgroup$
    – typetetris
    Apr 9, 2023 at 17:53



I assume you ask about stability in the bounded input bounded output (BIBO) sense. (A filter is BIBO stable, if a bounded input signal yields a bounded output signal.)

In this case, we know a LTI filter is stable if and only if the unit circle is contained in the region of convergence (ROC) of the z transform of its impulse response.

Regions of convergence

Therefore FIR filters are always stable, since the z transform of their impulse response is a finite sum and therefore convergences everywhere except maybe at $0$ and/or at $\infty$.

For a causal filter the ROC is the complex plane except some disc (radius 0 in FIR case) centered at the origin (by the root test for convergence).

For an anticausal filter the ROC is a disc (radius $\infty$ in FIR case) centered at the origin (again by the root test for convergence).

Complex analysis tell us that the ROC will extend until the first singular point it "touches" (see for example Real and Complex Analysis, Walter Rudin, 3rd Edition, p.320, Theorem 16.2). So in case of recursive filters, which have rational functions as transfer functions, the ROC will extend until the pole with maximal/minimal absolute value in the causal/anticausal case.


So whether the system is causal or anticausal tells us something about its ROC, which tells us whether it is stable or not.

So your given notch filter is stable, if it is causal and unstable if it is anticausal.



An LTI filter is called BIBO stable, if for each bounded input signal, the output signal is bounded.

Absolute summability of impulse response

Let $h$ be the impulse response of a LTI filter $\mathcal{F}$. We claim $\mathcal{F}$ is BIBO stable if and only if $\sum_{k=-\infty}^{\infty}|h(k)|$ converges.

Assume $\sum_{k=-\infty}^{\infty}|h(k)|$ converges and let $x:\mathbb{Z}\to\mathbb{C}$ be a bounded signal, then $$|\mathcal{F}[x](n)|=\left|\sum_{k=-\infty}^\infty h(k)x(n-k)\right|\leq\|x\|_\infty\sum_{k=-\infty}^\infty|h(k)|\text{.}$$ So the output signal $\mathcal{F}[x]$ is bounded.

Assume $\mathcal{F}$ is BIBO bounded, then set $x(n):=\text{sgn}(h(-n))$. The signal $x$ is cleary bounded and therefore $\mathcal{F}[x]$ is bounded. So $$\mathcal{F}[x](0)=\sum_{k=-\infty}^\infty x(k)h(-k)=\sum_{k=-\infty}^\infty|h(-k)|=\sum_{k=-\infty}^\infty|h(k)|\text{.}$$

Stability if the unit circle is in the ROC

As $\sum_{k=-\infty}^\infty|h(k)|=\sum_{k=-\infty}^\infty|h(k)z^{-k}|$ for $|z|=1$ this is evident.


Causal filters

Set $R:=\limsup_{n\to\infty}\sqrt[n]{|h(n)|}$.

The root test shows the ROC for a causal system is $\lbrace{}z\in\mathbb{C}:R<|z|\rbrace$.

Anticausal filters

As $\sum_{k=-\infty}^{-1} h(k)z^{-k} = \sum_{k=1}^{\infty} h(-k)z^k$ and setting $r:=\limsup_{n\to\infty}\sqrt[n]{|h(-n)|}$ the root test shows the ROC for an anticausal system is $\lbrace z\in\mathbb{C}: |z|<r\rbrace$.

Example for a causal filter and an anticausal filter having the same transfer function

Let $p\in\mathbb{C}$.


$$h(n) = \left\lbrace\begin{array}{lr}p^n&n\ge 0\\ 0&n<0\end{array}\right\rbrace$$

We get

$$\sum_{k=0}^\infty h(k)z^{-k}=\sum_{k=0}^\infty \left(\frac{p}{z}\right)^{k}=\frac{1}{1-\frac{p}{z}}\text{ for }|p|<|z|$$

with ROC $\lbrace z\in\mathbb{C}: |p|<|z|\rbrace$.


$$g(n) = \left\lbrace\begin{array}{lr}0&n\ge 0\\ -p^n&n<0\end{array}\right\rbrace$$

We get

$$\sum_{k=-\infty}^{-1} g(k)z^{-k}=-\sum_{k=1}^\infty \left(\frac{z}{p}\right)^{k}=-\frac{z}{p}\sum_{k=0}^\infty \left(\frac{z}{p}\right)^{k}=-\frac{z}{p}\frac{1}{1-\frac{z}{p}}=\frac{1}{1-\frac{p}{z}}\text{ for} |z|<|p|$$

with ROC $\lbrace z\in\mathbb{C}: |z|<|p|\rbrace$.


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.