1. Introduction
A polynomial matrix equation of degree m is an equation of the type
(1)
where denotes the null square matrix of order n, and are square matrices of order n, i.e., , where . The matrices are given matrices, and X is the unknown matrix to be solved. In a similar way to the theory of polynomial equations, polynomial matrix equations have a noncommutative analog of the Vieta theorem [1].The solution of (1) is fundamental in the analysis of queuing problems modeled by Markov chains [2], as well as in the interplay between Toeplitz matrices and polynomial computations (see [3] and the references therein).
A particular problem of (1) that has been examined by many researchers is the calculation of the m-th roots of a given matrix [4,5,6,7]:
Another particular problem arising from (1) is to consider X a scalar matrix, i.e., , thus (1) is reduced to so-called lambda matrices When , the quadratic matrix polynomial arises in a natural way in the study of damped vibrating systems [8]. Matrix polynomials of arbitrary degree m are studied in [9].Newton’s method [10] has been proposed to numerically solve (1). However, the solution obtained depends on the initial iteration. Also, the solution has to a be a simple root in order to obtain quadratic convergence. In addition, this method has a high computational cost per iteration. Therefore, this method will not be considered further here.
When X is a diagonalizable matrix, the solutions of (1) can be obtained for arbitrary m [11]. The maximum finite number of diagonalizable solutions are . Next, we describe this method. Let be an eigenvector of matrix X, and the corresponding eigenvalues, such that
(2)
According to (1) and (2), we have Therefore, the eigenvalues of X satisfy the polynomial equation:(3)
and the eigenvectors satisfy(4)
Let P be the following matrix: where the eigenvectors are set in columns in matrix P, and . If X is a diagonalizable matrix, then(5)
The above method has been coded in MATLAB, and it is available at
It only works when X is a diagonalizable matrix;
When X is diagonalizable, it is computationally expensive. Note that we have to solve in (3) a polynomial equation of at most degree . Also, for each eigenvalue , we have to solve in (4) the corresponding eigenvectors , but many of these eigenvectors are redundant. Finally, there are many possibilities to construct the factorization in (5) in order to obtain all the different solutions for X. Again, there are many redundant possibilities.
The aim of this paper is to propose a very simple heuristic method to obtain solutions of (1) when the matrices in (1) are scalar matrices. This heuristic method always works when the order of the matrices are , and it is not difficult to program. In the recent literature, we have found another approach to solve this kind of polynomial matrix equation with scalar coefficients [12], which is based on an interpolation method. Despite the fact that this interpolation method is much more complicated, we have coded it in MATLAB in order to compare it to our heuristic method. In fact, all the examples presented in this paper have been computed using a MATLAB code available at
This paper is organized as follows. Section 2 describes the heuristic method for square matrices of arbitrary order n when matrix B can be expressed as a linear combination of the identity matrix and a nilpotent, involutive or idempotent matrix. Whenever this decomposition is possible, an algorithm to find it is described. Section 3 deals with the particular case , since the aforementioned decomposition for matrix B is always possible in this case. When B is a scalar matrix, we sometimes have an infinite number of solutions by virtue of the Cayley–Hamilton theorem. We explicitly calculate this kind of solution for . As an application, some examples are given from graph theory. Finally, we present our conclusions in Section 4.
2. Polynomial Matrix Equations of Arbitrary Order
Consider the polynomial matrix equation in X of degree m:
(6)
where , and are square matrices of order n, i.e., . Assume that B admits the following decomposition:(7)
where ; , where N is an idempotent, involutive, or nilpotent matrix with index 2; and I is the identity matrix, i.e., Note that if N is a nilpotent matrix, is also a nilpotent matrix, thus in this case, we will consider the decomposition(8)
We look for solutions of the form:(9)
or(10)
2.1. The Heuristic Decomposition
We want to know when the heuristic decomposition given in (7) is possible. Notice that the idempotent decomposition is always possible when B is a scalar matrix, when and N is arbitrary (say ). When B is not a scalar matrix, from (7), we have
and(11)
thus, defining(12)
we have that(13)
where(14)
(15)
According to (11), if , the heuristic decomposition does not exist. In this case, we can look for a nilpotent decomposition . Therefore, if (13) is satisfied for some calculated parameters and , then In any case, we have to calculate and from (13). We will see in Section 3 that this is always possible when . When with , this is not always possible. However, when , we can look for heuristic solutions calculating and in (13) for some matrix elements of , and then checking if for these calculated parameters and . If this is so, the heuristic decomposition is possible. This method has been coded in MATLAB, and it is available at2.2. Idempotent Case
Consider the polynomial matrix Equation (6), i.e.,
If B admits an idempotent decomposition (7), i.e.,
where N is an idempotent matrix, then the solution is
where μ satisfies the polynomial equation:
and for each solution of μ, λ satisfies the polynomial equation:
Insert (7) and (9) into (6), and consider that N is idempotent, to obtain
Therefore,(16)
(17)
Taking into account the discrete Heaviside function, defined as rewrite (17) as follows:(18)
□Notice that from (16) we have a maximum of m different solutions for μ. According to (18), for each solution of μ, we have a maximum of m solutions for λ. Therefore, we have a maximum of different pairs , and, according to (9), a maximum of solutions for X.
Consider the matrix
If each matrix element of B denotes the number of paths in one or two steps in a graph, calculate the adjacency matrix R of the graph.
According to Chapter 2 in [13], the adjacency matrix R satisfies the quadratic matrix equation
The MATLAB 2023b code developed to find heuristic decompositions yields , , and so that , and N is an idempotent matrix. Applying the method described in Theorem 1, we obtain four different solutions: Since the adjacency matrix can only contain 0 or 1 as matrix elements, the solution is . It is worth noting that we obtain the same set of solutions by using both the diagonalization and interpolation methods. However, when performing 100 tests, the diagonalization method is ≈3500 times slower on average than the idempotent method, and the interpolation method is ≈1000 times slower on average than the idempotent method.Calculate the square root matrix of the following matrix:
The MATLAB code developed to find heuristic decompositions yields , , and
so that , and N is an idempotent matrix. Applying the method described in Theorem 1, we obtain two different solutions:(19)
It is worth noting that we also obtain the above solution (19) using the diagonalization method. However, if we apply the interpolation method to this problem, we will obtain a “division by zero” error. It is worth noting that none of the methods are able to obtain the following infinite sets of solutions:2.3. Involutive Case
Consider the polynomial matrix Equation (6), i.e.,
If B admits an involutive decomposition (7), i.e.,
where N is an involutive matrix, then the solution is
where
being , the m roots of the polynomial:
Insert (7) and (9) into (6), and consider that N is involutive, to obtain
Therefore,(20)
(21)
Sum up (20) and (21) to obtain(22)
Also, subtracting (21) from (20), we have(23)
Now, denote as , the m roots of the polynomial(24)
According to (22) and (23), we have Hence we have a maximum of different solutions. □Consider the matrix
If each matrix element of B denotes the number of paths in one or two steps in a graph, calculate the adjacency matrix R of the graph.
The adjacency matrix R satisfies the quadratic matrix equation
The MATLAB code developed to find heuristic decompositions yields , , and so that , and N is an involutive matrix. Applying the method described in Theorem 2, we obtain four different solutions: However, the adjacency matrix can only contain 0 or 1 as matrix elements, therefore the solution is . It is worth noting that we obtain the same set of solutions by using both the diagonalization and interpolation methods. However, performing 100 tests, the diagonalization method is ≈3900 times slower on average than the involutive method, and the interpolation method is ≈1100 times slower on average than the involutive method.2.4. Nilpotent Case
Consider the polynomial matrix Equation (6), i.e.,
If B admits a nilpotent decomposition (8), i.e.,where H is an nilpotent matrix with index 2, then the solution is where μ satisfies the polynomial equation: and for each solution of μ, λ is calculated as:Insert (8) and (10) into (6), and consider that H is nilpotent with index 2, to obtain
Therefore,(25)
(26)
□Notice that we have 1 solution for λ for each solution of μ, thus according to (9), we have a maximum of m different solutions for X. However, if
then, according to (26), λ does not exist. Therefore, we have to eliminate these cases as solutions of X.
Solve the quadratic matrix equation:
where
The MATLAB code developed to find heuristic decompositions yields , and
so that , and H is an nilpotent matrix with index 2. Applying the method described in Theorem 3, we obtain two different solutions: It is worth noting that the interpolation method provides the same set of solutions for X, but since X is not a diagonalizable matrix, the diagonalization method does not provide a solution. Despite this fact, performing 100 tests, the diagonalization method is ≈500 times slower on average than the nilpotent heuristic method. Also, the interpolation method is ≈1500 times slower on average than the nilpotent method.Compute a matrix A that satisfies the following equation:
(27)
Here, matrix is a scalar matrix. Since (i.e., the identity matrix is idempotent as well as involutive), B admits infinite ways of idempotent or involutive decompositions, i.e.,
Also, B admits the following nilpotent decomposition: All the heuristic methods, as well as the diagonalization and interpolation methods, yield the same set of solutions:(28)
The computational performance of all heuristic methods is very similar. Nevertheless, when performing 100 tests, the diagonalization method is ≈1200 times slower than the heuristic method on average, and the interpolation method is ≈9000 times slower than the heuristic method on average. Note that the solutions given in (28) are “trivial”, since they are based on the following factorization of (27):3. Polynomial Matrix Equation of Order 2
The main drawback of the examples presented above is that matrix B has to admit an idempotent, involutive, or nilpotent decomposition. In general, this is not always possible, but in the particular case of , i.e., , the decomposition given in (7) or (8) for B is always possible. Next, we consider how to calculate the corresponding decomposition.
3.1. Idempotent Decomposition
For , (13) reads as
(29)
From the first and last matrix elements of (29), we have(30)
If , we calculate(31)
However, if , we can solve for considering the second matrix element in (29). Therefore, if and ,(32)
Nevertheless, if and , we can solve for considering the third matrix element in (29). Therefore, if , , and ,(33)
Nonetheless, if , , and , matrix B is a scalar matrix, thus the decomposition in (7) is trivial, for instance,(34)
Finally, if , the B matrix is the null matrix, thus the decomposition is also trivial,(35)
Once is calculated, we have from (30)(36)
Now, according to (14), we have that can be solved as(37)
Therefore, from (7), the idempotent matrix is(38)
Note that from (37), we may obtain two different decompositions. It will be remembered that if , the decomposition is not possible, since N does not exist, according to (38). In summary, we have proved the following result. If B admits an idempotent decomposition, (i.e., , where N is an idempotent matrix), we calculate the parameters p and q of such a decomposition from the matrix elements of B. However, if the calculation of p yields , and B is not a scalar nor a null matrix, such a decomposition is not possible.3.2. Involutive Decomposition
For the involutive case, (13), taking into account (15), reads as
(39)
thus we can apply the same result as before for and (recalling that B is different from a scalar matrix or a null matrix). Thereby,(40)
and(41)
When B is a scalar matrix, the decomposition is trivial, thereby for ,(42)
Also, when B is the null matrix, the decomposition is trivial as well,(43)
According to (15), we have(44)
and the involutive matrix is given by(45)
Note that from (44) we may obtain two different decompositions. It will be remembered that if , the decomposition is not possible, since N does not exist, according to (45).If a matrix cannot be decomposed as , where ; , being N an idempotent or involutive matrix, and I the identity matrix, then B is of the form
(46)
where is a non-null nilpotent matrix with index 2.As previously mentioned, the idempotent or involutive decomposition is not possible when in (38) or (45), respectively. According to (37) and (44), the latter occurs when . Consequently, according to (29) or (39), B has to satisfy
(47)
Therefore, is a nilpotent matrix with index 2, so that we have the following cases:, thus is a scalar matrix. However, according to (34) and (42), this case is an exception in both decompositions, where , but the decomposition is possible.
, where H is a non-null nilpotent matrix with index 2. This is the case given by (46), as we wanted to prove.
□
3.3. Nilpotent Decomposition
According to Theorem 4, if B does not admit an idempotent nor involutive decomposition, then B admits a nilpotent decomposition. In this case, from (8) we have
(48)
Note that if H is the null matrix (thus nilpotent with index 2), then , i.e., a scalar matrix, so that the decomposition can be obtained by using the idempotent or the involutive decomposition. Consequently, we will consider that H is a non-null nilpotent matrix with index 2. Also, note that H cannot be a scalar matrix since scalar matrices are not nilpotent. In summary, since , we determine that B is not a scalar nor a null matrix. Therefore, and can be calculated with (40) and (41), and, according to (48), we have whereNote that this method generalizes the methods given in the existing literature to solve the square root of a matrix [14], i.e., the equation . Unlike the square root of a scalar, the square root of a matrix may not exist. For example, we may verify with the proposed heuristic algorithm that the nilpotent matrix with index 2:
has no square root, in agreement with [15]. It is worth noting that the diagonalization method does not yield any solutions either. However, the diagonalization method does not clarify if X exists or not. Also, the interpolation method yields a “division by zero” error.3.4. Singular Case: Infinite Number of Solutions
As was mentioned in Example 5, if B is a scalar matrix, then B admits infinite ways of idempotent or involutive decompositions. However, following the method described above, all these decompositions yield “trivial” solutions. Nevertheless, according to the Cayley–Hamilton theorem, if the order of the matrices equals the degree of the polynomial matrix equation, i.e., , there are infinite solutions. Next, we calculate all these solutions for the case . For this purpose, consider the quadratic polynomial equation (thus ):
(49)
The characteristic polynomial of matrix X is According to the Cayley–Hamilton theorem(50)
Consider
and compare (49) with (50), to obtain(51)
(52)
Multiply (51) by and add the result to (52) to arrive at(53)
According to (51) and (53), we obtain Finally, we obtain the following infinite set of solutions:(54)
where(55)
(56)
We can generalize the above result for singular polynomial equations of the form
(57)
where Notice that (57) can be reduced to (49) as follows where now we have k different solutions for .Calculate the square root of the identity matrix of order .
We have to solve the polynomial matrix equation
According to Theorem 1, we obtain two “trivial” solutions:(58)
However, according to the method described above, we obtain
(59)
Note that the regular solutions obtained in (58) are not contained in (59). When performing 100 tests, the diagonalization and interpolation methods compute the solution in similar times on average. However, it is worth noting that the diagonalization and interpolation methods do not calculate the singular solutions (59).Calculate the solutions of the polynomial matrix equation of order
(60)
Note that (60) can be rewritten as
(61)
thus(62)
Therefore, according to the method described above, the singular solutions of (62) are and the regular ones are(63)
Again, the diagonalization and the interpolation methods calculate the regular solutions, but not the singular ones. Moreover, the interpolation method provides a slight computational error in the two last regular solutions of (63). After 10 tests, the computational performance between the diagonalization and the heuristic methods is quite similar on average. Nonetheless, the interpolation method is ≈12 times slower on average than the heuristic method. This is quite significant since the interpolation method does not provide any of the singular solutions, as mentioned before.3.5. General Case
According to the above Sections, we propose the following procedure to solve a polynomial matrix equation
(64)
of order :Attempt the decomposition , where N is an idempotent or an involutive matrix, according to Section 3.1. If the decomposition is successful, apply Theorem 1 (if N is idempotent), or Theorem 2 (if N is involutive), in order to solve (64).
If the idempotent or the involutive decomposition is not successful, then perform the decomposition (being H a nilpotent matrix with index 2) according to Section 3.3. Apply Theorem 3 to solve (64).
Check if there are singular cases, i.e., a polynomial equation of the form
If this is so, we have an infinite number of extra-solutions. This algorithm has been coded in MATLAB, and it is available at
https://shorturl.at/oHN15 (accessed on 19 March 2024).
Despite the fact that this algorithm has been developed for polynomial matrix equations with scalar coefficients, i.e., (6), we can use it when this is not the case. To illustrate this, consider the following example.
Solve the following polynomial matrix equation
(65)
The diagonalization method yields only the following diagonal solutions:
However, we can obtain other solutions with the heuristic method. Indeed, define to rewrite (65) as(66)
Now, recast (66) as follows(67)
Now, apply the partial sum of a matrix geometrical series, which is given by thus (67) reduces to(68)
Applying the heuristic method, we obtain two new non-diagonalizable solutions:(69)
Solving (68) with the interpolation method, we obtain the same set of solutions given in (69).4. Conclusions
We have derived a heuristic method to solve polynomial matrix equations, i.e., , where the coefficients are scalars and are square matrices of order n, as long as B admits an idempotent, involutive, or nilpotent decomposition. Whenever this decomposition is possible, we have described an algorithm to find it. Moreover, we have proved that this decomposition is always possible when . Also, for square matrices of order , we have described an algorithm that calculates solutions. Further, the algorithm has the capacity to determine the nonexistence of the solution. In addition, when B is a scalar matrix, and , the algorithm computes singular solutions (i.e., infinite sets of solutions), if any exist.
We have compared the proposed heuristic method with other methods found in the existing literature, such as the diagonalization and interpolation methods. It turns out that the heuristic method is usually considerably faster than the diagonalization or the interpolation methods (see Examples 1, 3, and 4). Also, when the diagonalization method fails (see Example 4 and Remark 3), we do not know if the solution does not exist, or the solution is not diagonalizable. Further, the interpolation method sometimes fails with a “division by zero” error (see Example 2 and Remark 3), and we do not know whether the solution exists or not. Consequently, we have shown some examples for which the proposed heuristic method is able to compute solutions, even though the diagonalization or the interpolation methods fail. Moreover, the diagonalization and interpolation methods are not able to compute singular solutions, as the heuristic method does for (see Examples 6 and 7). The best strength of the diagonalization method is its ability to find solutions of (1) when are not scalar matrices, unlike the interpolation or the heuristic methods. However, Example 8 shows how to compute non-diagonalizable solutions with the proposed heuristic method when some of the coefficients in the polynomial matrix equation are not scalar matrices.
In a future study, the intention is to prove if the proposed algorithm provides all the possible solutions for . Finally, it is worth noting that all the examples have been computed by using a MATLAB code available at
Conceptualization, J.L.G.-S. and F.S.L.; Methodology, J.L.G.-S. and F.S.L.; Writing—original draft, J.L.G.-S. and F.S.L.; Writing—review and editing, J.L.G.-S. and F.S.L. All authors have read and agreed to the published version of the manuscript.
Data are contained within the article.
The authors declare no conflicts of interest.
Footnotes
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.
References
1. Connes, A.; Schwarz, A. Matrix Vieta theorem revisited. Lett. Math. Phys.; 1997; 39, pp. 349-353. [DOI: https://dx.doi.org/10.1023/A:1007373114601]
2. Bini, D.A.; Latouche, G.; Meini, B. Solving matrix polynomial equations arising in queueing problems. Linear Algebra Its Appl.; 2002; 340, pp. 225-244. [DOI: https://dx.doi.org/10.1016/S0024-3795(01)00426-8]
3. Bini, D.A.; Gemignani, L.; Meini, B. Computations with infinite Toeplitz matrices and polynomials. Linear Algebra Its Appl.; 2002; 343, pp. 21-61. [DOI: https://dx.doi.org/10.1016/S0024-3795(01)00341-X]
4. Iannazzo, B. On the Newton method for the matrix p-th root. SIAM J. Matrix Anal. Appl.; 2006; 28, pp. 503-523. [DOI: https://dx.doi.org/10.1137/050624790]
5. Choudhry, A. Extraction of nth roots of 2 × 2 matrices. Linear Algebra Its Appl.; 2004; 387, pp. 183-192. [DOI: https://dx.doi.org/10.1016/j.laa.2004.02.010]
6. Psarrakos, P. On the m-th roots of a complex matrix. Electron. J. Linear Algebra; 2002; 9, pp. 32-41. [DOI: https://dx.doi.org/10.13001/1081-3810.1071]
7. Lakić, S. On the computation of the matrix k-th root. ZAMM-J. Appl. Math. Mech.; 1998; 78, pp. 167-172. [DOI: https://dx.doi.org/10.1002/(SICI)1521-4001(199803)78:3<167::AID-ZAMM167>3.0.CO;2-R]
8. Gohberg, I.; Lancaster, P.; Rodman, L. Quadratic matrix polynomials with a parameter. Adv. Appl. Math.; 1986; 7, pp. 253-281. [DOI: https://dx.doi.org/10.1016/0196-8858(86)90036-9]
9. Gohberg, I.; Lancaster, P.; Rodman, L. Matrix Polynomials; Springer: Berlin/Heidelberg, Germany, 2005.
10. Kratz, W.; Stickel, E. Numerical solution of matrix polynomial equations by Newton’s method. IMA J. Numer. Anal.; 1987; 7, pp. 355-369. [DOI: https://dx.doi.org/10.1093/imanum/7.3.355]
11. Fuchs, D.; Schwarz, A. matrix Vieta theorem. arXiv; 1994; arXiv: math/9410207
12. Petraki, D.; Samaras, N. Solving the n-th degree polynomial matrix equation. J. Interdiscip. Math.; 2021; 24, pp. 1079-1092. [DOI: https://dx.doi.org/10.1080/09720502.2019.1706863]
13. Biggs, N. Algebraic Graph Theory; Cambridge University Press: Cambridge, UK, 1993; 67.
14. Deadman, E.; Higham, N.J.; Ralha, R. Blocked Schur algorithms for computing the matrix square root. Proceedings of the International Workshop on Applied Parallel Computing; New Orleans, LA, USA, 26 February 2012; Springer: Berlin/Heidelberg, Germany, 2012; pp. 171-182.
15. Björck, Å.; Hammarling, S. A Schur method for the square root of a matrix. Linear Algebra Its Appl.; 1983; 52, pp. 127-140. [DOI: https://dx.doi.org/10.1016/0024-3795(83)90010-1]
You have requested "on-the-fly" machine translation of selected content from our databases. This functionality is provided solely for your convenience and is in no way intended to replace human translation. Show full disclaimer
Neither ProQuest nor its licensors make any representations or warranties with respect to the translations. The translations are automatically generated "AS IS" and "AS AVAILABLE" and are not retained in our systems. PROQUEST AND ITS LICENSORS SPECIFICALLY DISCLAIM ANY AND ALL EXPRESS OR IMPLIED WARRANTIES, INCLUDING WITHOUT LIMITATION, ANY WARRANTIES FOR AVAILABILITY, ACCURACY, TIMELINESS, COMPLETENESS, NON-INFRINGMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Your use of the translations is subject to all use restrictions contained in your Electronic Products License Agreement and by using the translation functionality you agree to forgo any and all claims against ProQuest or its licensors for your use of the translation functionality and any output derived there from. Hide full disclaimer
© 2024 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/). Notwithstanding the ProQuest Terms and Conditions, you may use this content in accordance with the terms of the License.
Abstract
We propose a heuristic method to solve polynomial matrix equations of the type
You have requested "on-the-fly" machine translation of selected content from our databases. This functionality is provided solely for your convenience and is in no way intended to replace human translation. Show full disclaimer
Neither ProQuest nor its licensors make any representations or warranties with respect to the translations. The translations are automatically generated "AS IS" and "AS AVAILABLE" and are not retained in our systems. PROQUEST AND ITS LICENSORS SPECIFICALLY DISCLAIM ANY AND ALL EXPRESS OR IMPLIED WARRANTIES, INCLUDING WITHOUT LIMITATION, ANY WARRANTIES FOR AVAILABILITY, ACCURACY, TIMELINESS, COMPLETENESS, NON-INFRINGMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Your use of the translations is subject to all use restrictions contained in your Electronic Products License Agreement and by using the translation functionality you agree to forgo any and all claims against ProQuest or its licensors for your use of the translation functionality and any output derived there from. Hide full disclaimer