Bistritz stability criterion

From Wikipedia, the free encyclopedia
Jump to: navigation, search

In signal processing and control theory, the Bistritz criterion is a simple method to determine whether a discrete linear time invariant (LTI) system is stable proposed in [1] see also.[2] Stability of a discrete LTI system requires that its characteristic polynomials

 D_n(z)=d_0+d_1 z+d_2 z^2+ \cdots + d_{n-1}z^{n-1} + d_n z^n

(obtained from its difference equation, its dynamic matrix, or appearing as the denominator of its transfer function) is a stable polynomial, where  D_n(z) is said to be stable if all its zeros are inside the unit circle, viz.

 | z_k | < 1 , k=1,\ldots,n ,

where  D_n(z)=d_n \prod_{k=1}^n (z-z_k) . The test determines whether  D_n(z) is stable algebraically (i.e. without numerical determination of the zeros) . The method also solves the full zero location (ZL) problem. Namely, it can count the number of inside the unit-circle (IUC) zeros (~  | z_k| < 1 ~) , on the unit-circle zeros (UC) zeros (~  | z_k| = 1 ~) and outside the unit-circle (OUC) zeros  (~ | z_k| > 1 ~) for any real or complex polynomial.[1][2] The Bistritz test is the discrete equivalent of Routh criterion used to test stability of continuous LTI systems. This title was introduced for it in [3] soon after its presentation. It has been also recognized to be more efficient than previously available stability tests for discrete systems like the Schur-Cohn and the Jury test.[4] In the following, the focus is only on how to test stability of a real polynomial. However, as long as the basic recursion needed to test stability remains valid, ZL rules are also brought. For more general needs the references [1][2] should be consulted.


Consider  D_n(z) as above and assume  D_n(1) \neq 0 . (If  D_n(1)=0 the polynomial is not stable.) Define its reciprocal polynomial

D^\sharp_n(z)=z^n D_n(1/z)=d_n+d_{n-1}z+d_{n-2} z^2+\cdots+d_{n-1}z^{n-1} + d_0 z^n  .

The algorithm assigns to D_n(z) a sequence of symmetric polynomials

T_m(z)=T^\sharp_m(z),    m=n,n-1, \ldots , 0

created by a three-term polynomial recursion. Write out the polynomials by their coefficients,

T_m(z)=\sum_{k=1}^m t_{m,k} z^k ,

symmetry means that

T_m(z)=t_{m,0}+t_{m,1} z + \cdots + t_{m,1} z^{m-1}+t_{m,0} z^m ,

so that it is enough to calculate for each polynomial only about half of the coefficients. The recursion begins with two initial polynomials driven from the sum and difference of the tested polynomial and its reciprocal, then each subsequent polynomial of reduced degree is produced from the last two known polynomials.


 T_n(z)=D_n(z)+D^\sharp_{n}(z) \quad, \quad  T_{n-1}(z)=\frac{ D_n(z)-D^\sharp_{n}(z) }{z-1}

Recursion: For   m=n-1,\ldots,1 do:

 T_{m-1}(z)=\frac{\delta_{m+1}(1+z) T_m(z) - T_{m+1}(z) }{z}

Stability condition[edit]

The successful completion of the sequence with the above recursion requires  T_m(0) \neq 0 , \quad m=n-1, \ldots ,1 . The expansion of these conditions into  T_m(0) \neq 0 , \quad m=n, \ldots , 0 are called normal conditions.

Normal conditions are necessary for stability. This means that, the tested polynomial can be declared as not stable as soon as a  T_m(0) = t_{m,0}=t_{m,m}=0 is observed. It also follows that the above recursion is broad enough for testing stability because the polynomial can be declared as not stable before a division by zero is encountered.

Theorem. If the sequence is not normal then  D_n(z) is not stable. If normal conditions hold then the complete sequence of symmetric polynomials is well defined. Let

 \nu = Var \{ T_n (1), T_{n-1}(1) , \ldots , T_1(1)  , t_{0,0} \}

denote the count of the number of sign variations in the indicated sequence. Then  D_n(z) is stable if and only if  \nu =0   . More generally, if normal condition hold than  D_n(z) has no UC zeros,  \nu OUC zeros and  n- \nu IUC zeros.

Violation of various necessary conditions for stability may be used advantageously as early indications that the polynomial is not stable (has at least one UC or OUC zero). The polynomial can be declared not stable as soon as a  T_m (0)=0 , or a  \delta_{m} < 0 , or a change of sign in the sequence of  T_m (1) 's is observed.


Consider the polynomial  D_3(z)=2+Kz -22 z^2 +24 z^3, where  K is a real parameter.

Q1:For what values of  K the polynomial is stable?

Construct the sequence:

 T_3(z)=26+(K-22)z +(K-22)z^2 +26 z^3
 T_2(z)=22-Kz +22z^2
 T_1(z)=\frac{24(22-K)}{11} (1+z)

Use their values at z=1 to form

 \operatorname{Var}(8+2K, 44-K , 48(22-K)/11, 44+k) \,

All the entries in the sequence are positive for -4 < K < 22 (and for no K are they all negative). Therefore D(z) is stable for −4 < K < 22.

Q2: Find ZL for K = 33 Var { 71, 11, -48, 11 }=2 => 2 OUC, 1 IUC zeros.

Q3: Find ZL for K = -11 Var{ -14, 55, 144, 33 }=1 => 1 OUC, 2 IUC zeros.


(1) The test bears a remarkable similarity to the Routh test. This is best observed when the Routh test is arranged appropriately into a corresponding three-term polynomial recursion.

(2) The Bistritz test uses three-term polynomial recursion that propagates polynomials with symmetry as opposed to previously available classical tests for discrete systems that propagate polynomials with no particular structure using a two-term recursion. It stimulated the discovery of more algorithms in the area of digital signal processing (e.g. solving the linear prediction problem) and discrete systems (e.g. testing stability of higher-dimensional systems) collectively called "immittance" or "split" algorithms that adopted this technique to more efficient counterparts to also other classical so called "scattering" algorithms, see [5][6] and the chapter on linear prediction in the textbook.[7] The Bistritz test forms the "immittance" counterpart of the "scattering" type classical tests of Schur–Cohn and Jury.


  1. ^ a b c Y. Bistritz (1984) Zero location with respect to the unit circle of discrete-time linear system polynomials, Proc. of the IEEE, 72 (9): 1131–1142.
  2. ^ a b c Y. Bistritz (2002) Zero location of polynomials with respect to the unit circle unhampered by nonessential singularities, IEEE Trans. CAS I, 49(3): 305–314.
  3. ^ E. I. Jury and M. Mansour (1985), On the terminology relationship between continuous and discrete systems criteria, Proc. of the IEEE, 73(4):884.
  4. ^ K. Premaratne, and E. I. Jury (1993) On the Bistritz tabular form and its relationship with the Schur–Cohn minors and inner determinants, J. of the Franklin Institute, 30(1):165-182.
  5. ^ P. Delsarte and E. Genin (1986) The split Levinson algorithm IEEE Trans. ASSP 34(3):470-478.
  6. ^ Y. Bistritz, H. Lev-Ari and T. Kailath (1989) Immittance-domain Levinson algorithms IEEE Trans. IT, 35(3):675-682.
  7. ^ S. J. Orfanidis, Optimum signal processing: An introduction, 2nd Edition, Macmillan, 1988.