Abstract
A stable numerical method is proposed for matrix inversion. The new method is accompanied by theoretical proof to illustrate twelfth-order convergence. A discussion of how to achieve the convergence using an appropriate initial value is presented. The application of the new scheme for finding Moore-Penrose inverse will also be pointed out analytically. The efficiency of the contributed iterative method is clarified on solving some numerical examples.
1. Introduction and Preliminary Notes
It is well known that the inverse of a square matrix A m×m, which is also known as a reciprocal matrix, is a matrix A −1 such that AA −1 = I, where I is the identity matrix. A regular nonsingular matrix A m×m can be inverted using methods such as the Gauss-Jordan elimination or Gaussian elimination method. Such schemes fall in the category of direct methods for this purpose.
The direct methods cannot properly handle sparse matrices possessing sparse inverses arising in the numerical solution of integral equations [1]. On the other hand, methods such as conjugate gradient for symmetric positive definite matrices and GMRES are effective for large sparse linear systems. However, there is a problem when the coefficient matrix (when solving a linear system of equations) is ill-conditioned. To remedy this, one may apply a preconditioner to the system in which its construction is not an easy task [2].
An iterative method for preconditioning is the SPAI (sparse approximate inverse preconditioner) algorithm [3]. Given a sparse matrix A the SPAI algorithm computes a sparse approximate inverse M by minimizing ||AM − I|| in the Frobenius norm. Then, the approximate inverse is computed explicitly and can be applied as a preconditioner to an iterative method.
There are other types of schemes, which can be considered as iteration methods while they have different structures; see, for example, [4, 5]. In such iterative methods, at each iteration an approximate inverse of a matrix (if it is rectangular, one can find Moore-Penrose inverse) may easily be attained. And consequently, the users have the ability to solve the linear systems (with multiple right-hand side vectors) iteratively or use the approximate inverses in sensitivity analysis and the preconditioning of a linear system. This type of methods is in focus here.
Several known methods were proposed for approximating matrix inverse, such as those based on the so-called minimum residual iterations and Hotelling-Bodewig algorithm [6]. The Hotelling-Bodewig algorithm is defined by
| (1) |
where I is the identity matrix. Schulz in [7] found that the eigenvalues of I − AV 0 must have magnitudes less than 1 to ensure the convergence, which is a key element in designing higher efficient Schulz-type iterative methods.
In 2011, Li et al. in [8] theoretically investigated
| (2) |
and also proposed another third-order iterative method for finding A −1 as follows:
| (3) |
The iterative method (2) can also be found in Chapter 5 of the textbook [9]. As an another example from this primary source, the authors provided the following twelfth-order method:
| (4) |
in which Y n = I − AV n. For further reading, one may refer to [10–12].
In this paper, we will propose an efficient iterative method for finding A −1 numerically. The theoretical convergence of the method will also be studied. We also discuss the application of the new scheme in finding Moore-Penrose inverse (also known as pseudoinverse) for rectangular or singular matrices. It is also proven analytically that the new method has asymptotical stability in general. Some large-scale sparse matrices will be taken into account as some examples to put on show a clear reduction of the execution time when the new algorithm is applied.
The rest of the paper is organized as follows. The main contribution of this paper is given in Sections 2-3. Section 2 is devoted to the analysis of convergence which shows that the method can be considered for the pseudoinverse as well. Section 3 thoroughly and for the first time studies the stability of this high-order Schulz-type iterative method for finding generalized inverses. Section 4 covers the matter of initial guess/value in order to preserve the convergence order. Subsequently, the method is examined in Section 5 numerically. And finally, concluding remarks are presented in Section 6.
2. A New Method and Its Convergence Study
By applying the following nonlinear equation solver (to see the new developments on root-finding methods, refer to [13])
| (5) |
on the nonlinear matrix equation AV = I, we obtain a fixed-point iteration for matrix inversion using ψ n = AV n as follows:
| (6) |
Simplifying (6) by proper factorizing yields
| (7) |
wherein the sequence of iterates {V n}n=0 n=∞ converges to A −1 for a good initial value. Such a guess, V 0, will be discussed in Section 4.
Theorem 1 —
Let A = [a ij]m×m be a nonsingular real or complex matrix. If the initial approximation V 0 satisfies
(8) then the iterative method (7) converges with at least twelfth order to A −1.
Proof —
Let ||I − AV 0|| < 1, and for the sake of simplicity assume that E 0 = I − AV 0 and E n = I − AV n = I − ψ n stand for the symmetric residual matrix. It is straightforward to have
(9) Hence, we attain
(10) In addition, since ||E 0|| < 1, by relation (10) and using mathematical induction, we obtain that ||E 1|| ≤ (1/64)(27||E 0||12 + 27||E 0||13 + 9||E 0||14 + ||E 0||15) ≤ ||E 0||12 < 1. If we consider ||E n|| < 1, therefore
(11) Furthermore, we get that
(12) That is, I − AV n → 0, when n → ∞, and thus V n → A −1, as n → ∞.
Now, we must show the twelfth order using the sequence {V n}n=0 n=∞. To do this, we denote ε n = V n − A −1 as the error matrix in the iterative procedure (7). We have
(13) Hence, we could get that
(14) By multiplying A −1 by the left side, we have
(15) which now by taking an arbitrary matrix norm results in
(16) And thus
(17) That is, the iteration (7) converges with at least twelfth order to A −1. This concludes the proof.
At this time, we discuss an application of (7) for finding the generalized inverses. The Moore-Penrose inverse of a complex matrix A ∈ ℂ m×k (also called pseudoinverse), denoted by A † ∈ ℂ k×m, is a unique matrix V ∈ ℂ k×m satisfying the following four Penrose equations:
| (18) |
wherein A* is the conjugate transpose of A. Ben-Israel and his colleagues in [14, 15] used the method (1) with the starting value
| (19) |
where 0 < α < 2/ρ (A*A) and ρ (·) denotes the spectral radius. The authors in [15] further investigated that the sequence generated by
| (20) |
converges to the pseudoinverse.
In the following theorem, we show analytically that in case of having singular or rectangular matrices, scheme (7) by considering the initial approximation (19) converges to the Moore-Penrose generalized inverse.
Theorem 2 —
For the sequence {V n}n=0 n=∞ generated by the iterative Schulz-type method (7), and any n ≥ 0, it holds that
(21)
Proof —
We will prove the conclusion by induction on n. For n = 0, and considering (19), the first two equations of (21) can be demonstrated simply. And thus, we only give a verification to the last two equations as follows:
(22) Assume now that the conclusion holds for some n > 0. We now show that it continues to hold for n + 1. Using the iterative method (7), one has
(23) where the following fact (AV n)* = AV n has been used. Thus, the first equality in (21) holds for n + 1, and the second equality can be proved in a similar way. For the third equality in (21), using the assumption that V n AA † = V n and the iterative method (7), we could write down
(24) Hence, the third equality in (21) holds for n + 1. The fourth equality can similarly be proved, and the desired result follows.
The iterative method (7) is a matrix multiplication rich scheme. So, in order to reduce the computational load of matrix multiplications, it is enough to use SparseArray[mat] to avoid unnecessary multiplications to the nonzero elements when dealing with large sparse matrices.
Remark 3 —
The (inverse finder) informational efficiency index is defined as p/η where p and η stand for the local order and the number of matrix-matrix products per cycle. The proposed method of this paper requires 8 matrix-matrix multiplications to achieve the convergence order 12. This implies that 12/8 = 1.5 as its informational index, which is much better than 2/2 = 1, 3/3 = 1, 3/4 = 0.75, and 12/12 = 1 of schemes (1), (2), (3), and (4), respectively.
Before stating the main theorem for finding Moore-Penrose inverse, it is required to recall that for A ∈ ℂ m×k with the singular values σ 1 > σ 2 > ⋯σ r > 0 and the initial approximation V 0 = αA* with 0 < α < 2/σ 1 2, it holds that
| (25) |
We are about to use this fact in the following theorem so as to find the theoretical order of the proposed method (7) for finding the Moore-Penrose inverse (see [16] for more details).
Theorem 4 —
For A ∈ ℂ m×k, with the singular values σ 1 > σ 2 > ⋯σ r > 0, the sequence {V n}n=0 n=∞ generated by (7) and using the initial approximation V 0 = αA* converges to the Moore-Penrose inverse A † in twelfth order provided that 0 < α < 2/σ 1 2.
Proof —
Set 𝔼 n = V n − A † and E n = I − AV n; we have
(26) On the other hand, from the definitions of the Moore-Penrose inverse A †, we have
(27) The use of these relations implies that
(28) So, for any matrix norm ||·||, we obtain
(29) Applying (25), which implies that ||A𝔼 0|| < 1, and a similar reasoning as in (10)–(12), one can obtain
(30) Finally, using the properties of the Moore-Penrose inverse A † and Theorem 2, it would be now easy to find the error inequality of the new scheme (7) as follows:
(31) Thus, ||V n − A †|| → 0; that is, the sequence of (7) converges to the Moore-Penrose inverse in twelfth order as n → +∞. This ends the proof.
3. Stability
We investigate the stability of (7) for finding A † (or the simplified case A −1) in a neighborhood of the solution of equation AV = I. Note that if the iteration is not self-correcting, that is, if errors made at one stage are not subsequently damped, then the inevitable rounding errors introduced into the iteration may accumulate to the point where they overwhelm the answer. Thus, we should either show that the proposed method is self-correcting or must furnish an analysis showing that rounding errors remain under control. This will be done in what follows. In fact, we analyze how a small perturbation at the nth iterate is amplified or damped along the iterates. Note that this procedure has recently been applied on a general family of methods for matrix inversion in [17].
Theorem 5 —
The sequence {V n}n=0 n=∞ generated by (7) with the initial approximation (19) is asymptotically stable for finding the Moore-Penrose generalized inverse.
Proof —
Let ΔV n be the numerical perturbation introduced at the nth iterate of (7). Next, one has
(32) Here, we perform a first-order error analysis; that is, we formally neglect quadratic or higher terms such as (ΔV n)2. This formal manipulation is meaningful if ΔV n is sufficiently small and further yields to V n · ΔV n ≈ ΔV n · V n. We have
(33) where (ΔV n)i ≈ 0, i ≥ 2 has been used, since they are very close to the zero (matrix). After some algebraic manipulation and using , we have
(34) by using the fact that for enough large n, we have V n ≈ A †. We attain
(35) From (35), we can conclude that the perturbation at the iterate n + 1, is bounded. Therefore, the sequence {V n}n=0 n=∞ generated by (7) is asymptotically stable. This ends the proof.
Corollary 6 —
By using the matrix identity in (27), it would be possible to further simplify bound (35) as follows:
(36) Using (36) recursively, one may attain the following very simple bound:
(37)
Remark 7 —
In case of finding the regular inverse of nonsingular matrices, that is, when A † = A −1, according to (37), we have ΔV n+1 ≈ 0, and so the matrix method is strongly numerically stable. Consequently, in case of finding the A †, the matrix method (7), is asymptotically stable. Of course, since the iteration is not self-correcting in the general case, proceeding beyond convergence may cause a serious increase in error.
4. Initial Value
The iterative methods that have been discussed up to now are sensitive upon choosing the initial guess/value to start the process. As a matter of fact, the high accuracy and efficiency of such types of iterative algorithms are guaranteed only if the initial value satisfies the appropriate condition given in Theorem 1. Thus, in order to preserve the convergence order, we present some ways from the literature to remedy this flaw, although an efficient way for square or rectangular matrices is the way (19).
For a symmetric positive definite (SPD) matrix A, one can easily use the Householder-John Theorem to attain
| (38) |
as the initial value, wherein the matrix P is any of the matrices such that P + P T − A is SPD [8].
If the square matrix A is diagonally dominant, one may apply the approach given in [18] and use
| (39) |
wherein a ii is the diagonal entry of A. Note that this choice is so much fruitful in solving PDEs resulting from discretizations. Some further generalizations of such an initial matrix are given in [19].
Although the two abovementioned ways are efficient, they cannot be applied for finding an initial guess/value to the inverse of general input matrices. For instance, for large-scale matrices which do not satisfy the above structures, they may fail to provide the convergence. Hence, we here take into account the suboptimal way of producing V 0 as given by Pan and Schreiber in [20] as follows:
| (40) |
We should note that choosing the initial value as given above can satisfy the necessary condition of arriving to the convergence phase. Some ways for updating the initial matrix for sparse matrices are brought forward by [21].
In what follows, we provide an algorithm for improving an initial matrix for square matrices rapidly. In fact, the derivation of LU factorization for almost all kinds of square nonsingular matrices could be done rapidly in the linear algebra programming packages. In the Mathematica, the one argument command LinearSolve[ ] provides an LU factorization of A too much fast. Then, by applying the LU decomposition on the columns of a identity matrix recursively, one could update the columns of a derived initial matrix produced by other strategies such as (40). Such a procedure is illustrated in Algorithm 1. We summarized this idea as in Algorithm 2.
Algorithm 1.

An algorithm for constructing a rapid and robust initial approximation for A −1.
Algorithm 2.

Two-argument function written in the Mathematica environment.
The initial1[A_,num_] takes the nonsingular matrix A and the number of columns that users wish to update from the real inverse into the approximate inverse from the left, while the function initial2[A_,num_] works doubly. That is, if, for example, num=10, it updates the first and last 10 columns of the approximate inverse as rapidly as possible.
Next, we conduct some numerical tests to support the theoretical results given in Section 2 using the initial value discussed herein.
5. Computational Aspects
In this section, some experiments are presented to demonstrate the capability of the proposed method. The programming package mathematica 8 [22] has been used in the demonstrations. We work on the numerical aspects of the methods in machine precision.
It is clear that large sparse matrices cannot be handled easily and their storage needs to be done in sparse form as in the input form to be accessible and economic in real applications. Methods like (7) are powerful in finding an approximate inverse or a robust approximate inverse preconditioner in low number of steps and computational time, in which the output form of the approximate inverse is also sparse.
In this paper, as the programs were running, we found the running time using the command AbsoluteTiming[ ] to report the elapsed CPU time (in seconds) for this experiment. In this paper, the computer specifications are Microsoft Windows XP Intel(R), Pentium(R) 4, and CPU 3.20 GHz, with 4 GB of RAM.
Experiment 1 —
This test is devoted to the application of the Schulz-type iterative methods in finding the pseudoinverse of 30 large random complex matrices defined as shown in Algorithm 3 ().
Algorithm 3.

titleworktilte
The results of comparisons for these random matrices of the size m × k = 1500 × 1800 are reported in Figures 1, 2, and 3 in terms of the number of iterations and the computational time. The compared methods are (1) denoted by “Schulz,” (2) denoted by “Chebyshev,” (4) denoted by “KMS,” and the new iterative scheme (7) denoted by “PM." A saving in the elapsed time by considering the stopping criteria as ||V n+1−V n||∞ ≤ 10−6 and ||V n+1−V n||F ≤ 10−6 can be observed for the studied method (7). In this test, the initial matrix has been computed for each random matrix by V0[j]=ConjugateTranspose[A[j]] ∗(1./((SingularValueList[A[j],1][[1]])2)), while the maximum number of iterations is set to 100.
Figure 1.

The results of comparisons for Experiment 1 in terms of the number of iterations.
Figure 2.

The results of comparisons for Experiment 1 in terms of the elapsed time using ||V n+1−V n||∞ ≤ 10−6.
Figure 3.

The results of comparisons for Experiment 1 in terms of the elapsed time using ||V n+1−V n||F ≤ 10−6.
6. Concluding Remarks
It is well known that matrix inverse and generalized inverse are important in applied fields of nature science, such as the solution to various systems of linear and nonlinear equations, eigenvalue problems, and the linear least square problems. Iterative methods are often effective especially for large-scale systems with sparsity and Schulz-type methods are great tools for preconditioning such systems or in finding pseudoinverses.
Hotelling-Bodewig algorithm is simple to describe and analyze and is numerically stable. This was the idea of developing an iterative method of this type in this paper.
In this paper, we have shown that the suggested method (7) reaches twelfth order of convergence. The stability of the new method was also studied in detail and established that the new scheme is asymptotically stable. The efficacy of the new scheme was illustrated numerically in Section 5. Finally, and based on the numerical results obtained, one can conclude that the presented method is useful. Further extensions of the new scheme for other generalized inverses (such as the ones in [23, 24]) can be done for future works.
Acknowledgment
The research of the first author (F. Khaksar Haghani) is financially supported by Shahrekord Branch, Islamic Azad University, Shahrekord, Iran.
Conflict of Interests
The authors declare that there is no conflict of interests regarding the publication of this paper.
References
- 1.Oseledets IV, Tyrtyshnikov EE. Approximate inversion of matrices in the process of solving a hypersingular integral equation. Computational Mathematics and Mathematical Physics. 2005;45(2):315–326. [Google Scholar]
- 2.Saad Y. Iterative Methods for Sparse Linear Systems. 2nd edition. SIAM; 2003. [Google Scholar]
- 3. http://www.computational.unibas.ch/software/spai/spaidoc.html.
- 4.Sen SK, Prabhu SS. Optimal iterative schemes for computing the Moore-Penrose matrix inverse. International Journal of Systems Science. 1976;7(8):847–852. [Google Scholar]
- 5.Soleymani F, Stanimirović PS. A higher order iterative method for computing the Drazin inverse. The Scientific World Journal. 2013;2013:11 pages. doi: 10.1155/2013/708647.708647 [DOI] [PMC free article] [PubMed] [Google Scholar]
- 6.Hotelling H. Analysis of a complex of statistical variables into principal components. Journal of Educational Psychology. 1933;24(7):498–520. [Google Scholar]
- 7.Schulz G. Iterative berechnung der reziproken matrix. Zeitschrift für Angewandte Mathematik und Mechanik. 1933;13(1):57–59. [Google Scholar]
- 8.Li H-B, Huang T-Z, Zhang Y, Liu X-P, Gu T-X. Chebyshev-type methods and preconditioning techniques. Applied Mathematics and Computation. 2011;218(2):260–270. [Google Scholar]
- 9.Krishnamurthy EV, Sen SK. Numerical Algorithms: Computations in Science and Engineering. New Delhi, India: Affiliated East-West Press; 1986. [Google Scholar]
- 10.Liu X, Huang S. Proper splitting for the generalized inverse A T,S (2) and its application on Banach spaces. Abstract and Applied Analysis. 2012;2012:9 pages.736929 [Google Scholar]
- 11.Pavaloiu I, Catina E. Remarks on some Newton and Chebyshev-type methods for approximation eigenvalues and eigenvectors of matrices. Computer Science Journal of Moldova. 1999;7:3–17. [Google Scholar]
- 12.Soheili AR, Soleymani F, Petkovic MD. On the computation of weighted Moore-Penrose inverse using a high-order matrix method. Computers and Mathematics with Applications. 2013;66(11):2344–2351. [Google Scholar]
- 13.Soleymani F, Babajee DKR. Computing multiple roots using a class of quartically convergent methods. Alexandria Engineering Journal. 2013;52(3):531–541. [Google Scholar]
- 14.Ben-Israel A, Cohen D. On iterative computation of generalized inverses and associated projections. SIAM Journal on Numerical Analysis. 1966;3:410–419. [Google Scholar]
- 15.Ben-Israel A, Greville TNE. Generalized Inverses. 2nd edition. Springer; 2003. [Google Scholar]
- 16.Toutounian F, Soleymani F. An iterative method for computing the approximate inverse of a square matrix and the Moore-Penrose inverse of a non-square matrix. Applied Mathematics and Computation. 2013;224:671–680. [Google Scholar]
- 17.Soleymani F, Stanimirović PS. A note on the stability of a pth order iteration for finding generalized inverses. Applied Mathematics Letters. 2014;28:77–81. [Google Scholar]
- 18.Grosz L. Preconditioning by incomplete block elimination. Numerical Linear Algebra with Applications. 2000;7(7-8):527–541. [Google Scholar]
- 19.Gonzalez L, Suarez A. Improving approximate inverses based on Frobenius norm minimization. Applied Mathematics and Computation. 2013;219(17):9363–9371. [Google Scholar]
- 20.Pan VY, Schreiber R. An improved Newton iteration for the generalized inverse of a matrix with applications. SIAM Journal on Scientific and Statistical Computing. 1991;12(5):1109–1131. [Google Scholar]
- 21.Cui X, Hayami K. Generalized approximate inverse preconditioners for least squares problems. Japan Journal of Industrial and Applied Mathematics. 2009;26(1):1–14. [Google Scholar]
- 22.Wolfram S. The Mathematica Book. 5th edition. Wolfram Media; 2003. [Google Scholar]
- 23.Soleymani F, Stanimirović PS, Ullah MZ. On an accelerated iterative method for weighted Moore-Penrose inverse. Applied Mathematics and Computation. 2013;222:365–371. [Google Scholar]
- 24.Ullah MZ, Soleymani F, Al-Fhaid AS. An efficient matrix iteration for computing weighted Moore-Penrose inverse. Applied Mathematics and Computation. 2014;226:441–454. [Google Scholar]
