TOPICS
Search

Stable Polynomial


A real polynomial P is said to be stable if all its roots lie in the left half-plane. The term "stable" is used to describe such a polynomial because, in the theory of linear servomechanisms, a system exhibits unforced time-dependent motion of the form e^(st), where s is the root of a certain real polynomial P(s)=0. A system is therefore mechanically stable iff P is a stable polynomial.

The polynomial x+a is stable iff a>0, and the irreducible polynomial x^2+ax+b is stable iff both a and b are greater than zero. The Routh-Hurwitz theorem can be used to determine if a polynomial is stable.

Given two real polynomials P and Q, if P and Q are stable, then so is their product PQ, and vice versa (Séroul 2000, p. 280). It therefore follows that the coefficients of stable real polynomials are either all positive or all negative (although this is not a sufficient condition, as shown with the counterexample x^3+x^2+x+1). Furthermore, the values of a stable polynomial are never zero for x>=0 and have the same sign as the coefficients of the polynomial.

It is possible to decide if a polynomial is stable without first knowing its roots using the following theorem due to Strelitz (1977). Let A=x^n+a_(n-1)x^(n-1)+...+a_0 be a real polynomial with roots alpha_1, ..., alpha_n, and construct B=x^m+b_(m-1)x^(m-1)+...+b_0 as the monic real polynomial of degree m=n(n-1)/2 having roots alpha_i+alpha_j for 1<=i<j<=n. Then A is stable iff all coefficients of A and B are positive (Séroul 2000, p. 281).

For example, given the third-order polynomial A=x^3+ax^2+bx+c, the sum-of-roots polynomial B is given by

 B=x^3+2ax^2+(a^2+b)x+(ab-c).
(1)

Resolving the inequalities given by requiring that each coefficient of A and B be greater than zero then gives the conditions for A to be stable as a>0, b>0, 0<c<ab.

Similarly, for the fourth-order polynomial A=x^4+ax^3+bx^2+cx+d, the sum-of-roots-polynomial is

 x^6+3ax^5+(3a^2+2b)x^4+(a^3+4ab)x^3+(2a^2b+b^2+ac-4d)x^2+(ab^2+a^2c-4ad)x+(abc-c^2-a^2d),
(2)

so the condition for A to be stable can be resolved to a>0, b>0, 0<c<ab, 0<d<(abc-c^2)/a^2.

The fifth-order polynomial is

 x^(10)+4ax^9+(6a^2+3b)x^8+(4a^3+9ab+c)x^7+(a^4+9a^2b+3b^2+4ac-3d)x^6+(3a^3b+6ab^2+5a^2c+2bc-5ad-11e)x^5+(3a^2b^2+b^3+2a^3c+6abc-c^2-2a^2d-2bd-22ae)x^4+(ab^3+4a^2bc+b^2c-4cd-16a^2e-4be)x^3+(2ab^2c+a^2c^2-bc^2+a^2bd+b^2d-3acd-4d^2-4a^3e-9abe+7ce)x^2+(abc^2-c^3+ab^2d-4ad^2-4a^2be-b^2e+4ace+4de)x+(abcd-c^2d-a^2d^2-ab^2e+bce+2ade-e^2).
(3)

The following Wolfram Language code computes the sum-of-roots polynomial B and inequalities obtained from the coefficients:

  RootSumPolynomial[r_List, x_]:=Module[
      {n = Length[r], i, j},
      RootReduce@Collect[Expand[
        Times@@((x - #)&/@Flatten[
          Table[r[[i]] + r[[j]], {i, n},
            {j, i+1, n}]])
      ], x]
  ]
  RootSumPolynomial[p_?PolynomialQ, x_]:=
    RootSumPolynomial[RootList[p, x], x]
  RootList[p_?PolynomialQ, x_]:=
    x /. {ToRules[Roots[p==0, x,
      Cubics -> False, Quartics -> False
    ]]}
  RootSumInequalities[p_?PolynomialQ, x_]:=
    And @@ (# > 0& /@
      Flatten[CoefficientList[#, x]& /@
        {RootSumPolynomial[p, x], p}])

while the following reduces the inequalities to a minimal set in the cubic case:

  Resolve[Exists[x, Element[(a | b | c | x), Reals],
    RootSumInequalities[x^3 + a x^2 + b x + c, x]
  ], {a, b, c}]

See also

Left Half-Plane, Routh-Hurwitz Theorem

Explore with Wolfram|Alpha

References

Séroul, R. "Stable Polynomials." §10.13 in Programming for Mathematicians. Berlin: Springer-Verlag, pp. 280-286, 2000.Strelitz, S. "On the Routh-Hurwitz Problem." Amer. Math. Monthly 84, 542-544, 1977.Tóth, J.; Szili, L.; and Zachár, A. "Stability of Polynomials." Mathematica Educ. Res. 7, 5-12, 1998.

Referenced on Wolfram|Alpha

Stable Polynomial

Cite this as:

Weisstein, Eric W. "Stable Polynomial." From MathWorld--A Wolfram Web Resource. https://mathworld.wolfram.com/StablePolynomial.html

Subject classifications