Abstract
A polynomial matrix is a matrix whose entries are polynomials. Equivalently, a polynomial matrix can be expressed as a polynomial with matrix coefficients. Formally speaking, in the univariable case, \((\mathbb {R}[x])^{m \times n}\) and \((\mathbb {R}^{m \times n}) [x]\) are isomorphic. In other words, extending the entries of matrices to polynomials is the same as extending the coefficients of polynomials to matrices.
A polynomial matrix is a matrix whose entries are polynomials. Equivalently, a polynomial matrix can be expressed as a polynomial with matrix coefficients. Formally speaking, in the univariable case, \((\mathbb {R}[x])^{m \times n}\) and \((\mathbb {R}^{m \times n}) [x]\) are isomorphic. In other words, extending the entries of matrices to polynomials is the same as extending the coefficients of polynomials to matrices. An example of a \(3 \times 2\) polynomial matrix of degree 2:
In this chapter, we study the Moore-Penrose and Drazin inverses of a polynomial matrix and algorithms for computing the generalized inverses.
10.1 Introduction
We start with the scalar nonsingular case. Let \(A \in \mathbb {R}^{n \times n}\) be nonsingular and
where \(c_0 = 1\), be the characteristic polynomial of A. The Cayley-Hamilton theorem says
Thus, we have
where
which can be efficiently computed using the iterative Horner’s Rule:
How can the coefficients \(c_i\), \(i=1,...,n\) be obtained efficiently? It turns out that
Putting all things together, the following algorithm, known as the Faddeev-LeVerrier algorithm [1, 2] and presented in Sect. 5.5, efficiently computes the coefficients \(c_i\), \(i=1,...,n\), of the characteristic polynomial of A.
Algorithm 10.1.1
Given a nonsingular matrix \(A \in \mathbb {C}^{n \times n}\), this algorithm computes the coefficients \(c_i\), \(i=1,...,n\), of its characteristic polynomial (10.1.1) and its inverse \(A^{-1}\).
-
1.
\(P_0 = \mathrm{O}\); \(c_0 = 1\);
-
2.
for \(i=1\) to n
-
\(P_i = AP_{i-1} + c_{i-1} I\);
-
\(c_i = -\mathrm{tr}(AP_i) / i\);
-
-
3.
\(A^{-1} = -c_n^{-1} P_n = (-1)^{n-1} P_n / \det (A)\);
As pointed out in Sect. 5.5, Decell generalized the above algorithm to general scalar matrices and the Moore-Penrose inverse [3]. Let \(B = AA^*\) and
be the characteristic polynomial of B. If \(k>0\) is the largest integer such that \(a_k \ne 0\), then the Moore-Penrose inverse of A is given by
If \(k=0\) is the largest integer such that \(a_k \ne 0\), that is, \(a_0\) is the only nonzero coefficient, then \(A^{\dagger } = \mathrm{O}\).
Analogous to Algorithm 10.1.1, the following Decell’s algorithm computes \(A^{\dagger }\).
Algorithm 10.1.2
[3] Given \(A \in \mathbb {C}^{m \times n}\) and k the largest integer such that \(a_k\) in (10.1.2) is nonzero, this algorithm computes the Moore-Penrose inverse of A.
-
1.
if \(k=0\) return \(A^{\dagger } = \mathrm{O}\);
-
2.
\(B = AA^*\);
-
3.
\(P_0 = \mathrm{O}\); \(A_0 = \mathrm{O}\); \(a_0 = 1\);
-
4.
for \(i=1\) to k
-
\(P_i = A_{i-1} + a_{i-1} I\);
-
\(A_i = BP_i\);
-
\(a_i = -\mathrm{tr}(A_i) / i\);
-
-
5.
\(A^{\dagger } = -a_k^{-1} A^* P_k\);
In the following sections, we generalize the above algorithm to polynomial matrices and their generalized inverses.
10.2 Moore-Penrose Inverse of a Polynomial Matrix
The definition of the Moore-Penrose inverse of a polynomial matrix is the same as the scalar case, that is, it is the polynomial matrix satisfying the four Penrose conditions.
The Decell’s Algorithm 10.1.2 for computing the Moore-Penrose inverse is generalized to polynomial matrices [4]. Consider the polynomial matrix
where \(A_i \in \mathbb {R}^{m \times n}\), \(i=0,1,...,n\). Let \(B(x) = A(x) A(x)^T\) and
where \(a_0(x) = 1\), be the characteristic polynomial of B(x). It is shown in [4] that if k is the largest integer such that \(a_k (x) \ne 0\) and \(\mathbb {Z}\) is the set containing the zeros of \(a_k (x)\), then the Moore-Penrose inverse \({A(x)}^{\dagger }\) of A(x) for \(x \in \mathbb {R}{\setminus }\mathbb {Z}\) is given by
If \(k=0\) is the largest integer such that \(a_k (x) \ne 0\), then \({A(x)}^{\dagger } = \mathrm{O}\). Moreover, for each \(x_i \in \mathbb {Z}\), if \(k_i < k\) is the largest integer such that \(a_{k_i} (x_i) \ne 0\), then the Moore-Penrose inverse \({A(x_i)}^{\dagger }\) of \(A(x_i)\) is given by
The algorithm for computing the polynomial matrix \({A(x)}^{\dagger }\) is completely analogous to Algorithm 10.1.2, replacing the scalar matrices A, \(A_i\), B, and \(P_i\) with the polynomial matrices A(x), \(A_i(x)\), B(x), and P(x) respectively and the scalars \(a_i\) with the polynomials \(a_i(x)\). Obviously, the algorithm involves symbolic computation. Also in [4], a two-dimensional algorithm that avoids symbolic computation is presented. From the definition \(B(x) = A(x) {A(x)}^T\), the degree of B(x) can be as high as 2n. Consequently, \(A_i(x)\), \(a_i(x)\), and \(P_{i+1} (x)\) are of degrees up to 2in. Let
where \(a_{i,j}\) are scalars, and
where \(P_{i,j}\) are scalar matrices, then \({A(x)}^{\dagger }\) can be written as
Now we derive \(a_{i,j}\) and \(P_{i,j}\). Following Algorithm 10.1.2, first we have
It then follows that
which gives
Moreover,
which gives
for \(j=0,...,2(i-1)n\).
Finally, we have the following two-dimensional algorithm for computing \({A(x)}^{\dagger }\).
Algorithm 10.2.1
[4] Given a polynomial matrix \(A(x) \in \mathbb {R}^{m \times n}[x]\) and k, the largest integer such that \(a_k (x)\) in (10.2.1) is nonzero, this algorithm computes the Moore-Penrose inverse of A(x).
-
1.
if \(k=0\) return \({A(x)}^{\dagger } = \mathrm{O}\);
-
2.
\(P_{0,0} = \mathrm{O}\); \(a_{0,0} = 1\);
-
3.
for \(i=1\) to k
-
4.
compute \({A(x)}^{\dagger }\) by (10.2.2).
Note that in the above algorithm it is assumed that \(P_{i,j} = \mathrm{O}\) when \(j > 2(i-1)n\). This algorithm is called two-dimensional, since it involves the computation of two-dimensional variables \(a_{i,j}\) and \(P_{i,j}\).
10.3 Drazin Inverse of a Polynomial Matrix
The definition of the Drazin inverse \({A(x)}_d\) of a polynomial matrix \(A(x) \in \mathbb {R}^{n \times n}[x]\) is defined as the same as the scalar case, that is, \({A(x)}_d\) is the matrix satisfying the three conditions:
where \(k = \mathrm{ind}(A(x))\), the index of A(x), defined as the smallest integer such that \(\mathrm{rank}({A(x)}^k) = \mathrm{rank}({A(x)}^{k+1})\).
Let
where \(a_0 (x) = 1\), be the characteristic polynomial of \({A(x)}^{k+1}\), then
where \(r = \mathrm{rank}({A(x)}^{k+1})\). Let \(\mathbb {Z}\) be the set containing the zeros of \(a_r(x)\), then the Drazin inverse \({A(x)}_d\) of A(x) for \(x \in \mathbb {R}{\setminus }\mathbb {Z}\) is given by
If \(r = 0\), then \({A(x)}_d = \mathrm{O}\).
Following the Decell’s Algorithm 10.1.2, we have the following finite algorithm for computing the Drazin inverse \({A(x)}_d\) of A(x) [5, 6].
Algorithm 10.3.1
[5] Given \(A(x) \in \mathbb {R}^{n \times n}[x]\), \(k = \mathrm{Ind} (A(x))\) and \(r = \mathrm{rank} ({A(x)}^{k+1})\), this algorithm computes the Drazin inverse \({A(x)}_d\) of A(x).
-
1.
if \(r=0\) return \({A(x)}_d = \mathrm{O}\);
-
2.
\(B(x) = {A(x)}^{k+1}\);
-
3.
\(P_0(x) = \mathrm{O}\); \(a_0(x) = 1\);
-
4.
for \(i=1\) to r
-
\(P_i(x) = B(x)P_{i-1}(x) + a_{i-1}(x) I\);
-
\(a_i = -\mathrm{tr}(B(x)P_i(x)) / i\);
-
-
5.
\({A(x)}_d = -a_r(x)^{-1} {A(x)}^k P_r (x)\).
Following derivation of the two-dimensional Algorithm 10.2.1, we can obtain a two-dimensional algorithm for computing the Drazin inverse of a polynomial matrix [5, 6].
Notice that the degrees of \(B(x) = {A(x)}^{k+1}\), \({A(x)}^k\), \(P_i(x)\), and \(a_i(x)\) are respectively \((k+1)n\), kn, \((i-1)(k+1)n\), and \(i(k+1)n\). Let
where \(B_j\), \(\widehat{A_j}\), and \(P_{i,j}\) are scalar matrices, and
where \(a_{i,j}\) are scalars, then
Now we derive \(a_{i,j}\) and \(P_{i,j}\). Firstly,
implying that
Secondly,
implying that
Finally, we have the following two-dimensional algorithm for computing the Drazin inverse \({A(x)}_d\) of A(x). Comparing with Algorithm 10.3.1, this algorithm avoids symbolic computation.
Algorithm 10.3.2
[5] Given \(A(x) \in \mathbb {R}^{n \times n}[x]\), \(k = \mathrm{Ind} (A(x))\) and \(r = \mathrm{rank} ({A(x)}^{k+1})\), this algorithm computes the Drazin inverse \({A(x)}_d\) of A(x).
-
1.
if \(k=0\) return \({A(x)}_d = \mathrm{O}\);
-
2.
\(P_{0,0} = \mathrm{O}\); \(a_{0,0} = 1\);
-
3.
for \(i=1\) to k
-
4.
compute \({A(x)}_d\) by (10.3.1).
In the algorithm, it is assumed that \(B_j = \mathrm{O}\), when \(j > (k+1)n\), and \(P_{i,j} = \mathrm{O}\), when \(j > (i-1)(k+1)n\).
Example 10.3.1
[5] Let
then \(n=1\).
It can be determined
Thus \(r = k = 2\). Initially, we have
When \(i=1\), \(P_{1,0} = I\) and
When \(i=2\),
and
Finally, we obtain
for \(x \ne 1\). The case when \(x=1\) can be dealt with as a special case. \(\square \)
Remarks
An algorithm for computing the Moore-Penrose inverse of a polynomial matrix with two variables is presented in [4]. In [7], Karampetakis and Tzekis improved Algorithm 10.2.1 for the case when there are big gaps between the powers of x, for example, \(A(x) = A_0 x^{80} + A_{79} x + A_{80}\). The above algorithms can be generalized to rational matrices by using the least common denominator of \(P_i (x)\) [6].
References
D.K. Fadeev, V.N. Fadeeva, Computational Methods of Linear Algebra (W.H. Freeman & Co., Ltd., San Francisco, 1963)
F.R. Gantmacher, The Theory of Matrices, vol. 1–2 (Chelsea Publishing Co., New York, 1960)
H.P. Decell Jr., An application of the Cayley-Hamilton theorem to generalized matrix inversion. SIAM Rev. 7(4), 526–528 (1965)
N.P. Karampetakis, Computation of the generalized inverse of a polynomial matrix and applications. Linear Algebra Appl. 252(1), 35–60 (1997)
J. Gao, G. Wang, Two algorithms for computing the Drazin inverse of a polynomial matrix. J. Shanghai Teach. Univ. (Nat. Sci.) 31(2), 31–38 (2002). In Chinese
J. Ji, A finite algorithm for the Drazin inverse of a polynomial matrix. Appl. Math. Comput. 130(2–3), 243–251 (2002)
N.P. Karampetakis, P. Tzekis, On the computation of the generalized inverse of a polynomial matrix. IMA J. Math. Control Inform. 18(1), 83–97 (2001)
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
Copyright information
© 2018 Springer Nature Singapore Pte Ltd. and Science Press
About this chapter
Cite this chapter
Wang, G., Wei, Y., Qiao, S. (2018). Generalized Inverses of Polynomial Matrices. In: Generalized Inverses: Theory and Computations. Developments in Mathematics, vol 53. Springer, Singapore. https://doi.org/10.1007/978-981-13-0146-9_10
Download citation
DOI: https://doi.org/10.1007/978-981-13-0146-9_10
Published:
Publisher Name: Springer, Singapore
Print ISBN: 978-981-13-0145-2
Online ISBN: 978-981-13-0146-9
eBook Packages: Mathematics and StatisticsMathematics and Statistics (R0)