The approximate inverse (AINV) and the factored approximate inverse (FAPINV)
are two known algorithms in the field of preconditioning of linear systems of equations. Both of these algorithms compute a sparse approximate inverse of matrix A in the factored form and are based on computing two sets of vectors which are A-biconjugate. The AINV algorithm computes the inverse factors W and Z of a matrix independently of each other, as opposed to the AINV algorithm, where the computations of the inverse factors are done independently. In this paper, we show that, without any dropping, removing the
dependence of the computations of the inverse factors in the FAPINV algorithm results in the AINV algorithm.

1. Introduction

Consider the linear system of equations
Ax=b,
where the coefficient matrix A∈ℝn×n is nonsingular, large, sparse, and x,b∈ℝn. Such linear systems are often solved by Krylov subspace methods such as the GMRES (see Saad and Schultz [1], Saad [2]) and the BiCGSTAB (see van der Vorst [3], Saad [2]) methods in conjunction with a suitable preconditioner. A preconditioner is a matrix M such that Mu can be easily computed for a given vector u and system MAx=Mb is easier to solve than (1.1). Usually, to this end one intends to find M such that matrix M≈A-1(MA≈In), where In is the identity matrix. There are various methods to compute such an appropriate matrix (see Benzi [4], Benzi and Tuma [5], Saad [2]). The factored approximate inverse (FAPINV) (Lee and Zhang [6, 7], Luo [8–10], Zhang [11, 12]) and the approximate inverse (AINV) (see Benzi and Tuma [13, 14]) are among the algorithms for computing an approximate inverse of A in the factored form. In fact both of these methods compute lower unitriangular matrices W and ZT and a diagonal matrix D=diag(d1,d2,…,dn) such that WAZ≈D. In this case, the matrix M=ZD-1W≈A may be used as a preconditioner for (1.1). It is well-known that the AINV algorithm is free from breakdown for the class of H-matrices [13].

The main idea of the FAPINV algorithm was first introduced by Luo (see Luo [8–10]). Then the algorithm was more investigated by Zhang in [12]. Since in this procedure the factorization is performed in backward direction, we call it BFAPINV (for backward FAPINV) algorithm. In [11], Zhang proposed an alternative procedure to compute the factorization in the forward direction, which we call it FFAPINV (for forward FAPINV) algorithm. In [7], Lee and Zhang showed that the BFAPINV algorithm is free from breakdown for M-matrices. It can be easily seen that the FFAPINV algorithm is free from breakdown for M-matrices, as well. In the left-looking AINV algorithm (see Benzi and Tuma [13, 14]), the inverse factors are computed quite independently. In contrast, in the FFAPINV algorithm, the inverse factors W and Z are not computed completely independently of each other. In this paper, from the FFAPINV algorithm without any dropping, we obtain a procedure which bypasses this dependence. Then we show that this procedure is equivalent to the left-looking AINV algorithm. In the same way one can see that the right-looking AINV algorithm (see Benzi and Tuma [13]) can be obtained from BFAPINV algorithm.

In Section 2, we give a brief description of the FFAPINV algorithm. The main results are given in Section 3. Section 4 is devoted to some concluding remarks.

2. A Review of the FFAPINV Algorithm

Let W and Z be the inverse factors of A=(aij), that is,
WAZ=D,
where W=(w1T,w2T,…,wnT)T, Z=(z1,z2,…,zn), and D=diag(d1,d2,…,dn), in which wi's and zi's are the rows and columns of W and Z, respectively. Using (2.1) we obtain
wiAzj={di,i=j,0,i≠j.
From the structure of the matrices W and Z, we have
z1=e1,zj=ej-∑i=1j-1αizi,j=2,…,n,w1=e1T,wj=ejT-∑i=1j-1βiwi,j=2,…,n,
for some αi's and βi's, where ej is the jth column of the identity matrix.

First of all, we see that
d1=z1TAz1=e1TAe1=a11.
Now let 2≤j≤n be fixed. Then from (2.2) and (2.3) and for k=1,…,j-1, we have
0=wkAzj=wkAej-∑i=1j-1αiwkAzi=wkA*j-αkwkAzk=wkA*j-αkdk,
where A*j is the jth column of A. Therefore
αi=1diwiA*j,i=1,…,j-1.
In the same manner
βi=1diAj*zi,i=1,…,j-1,
where Aj* is the jth row of A. Putting these results together gives the Algorithm 1 for computing the inverse factors of A.

<bold>Algorithm 1: </bold>The FFAPINV algorithm without dropping.

(1) z1:=e1, w1:=e1T and d1:=a11

(2) For j=2,…,n, Do

(3)zj:=ej;wj:=ejT

(4)For i=1,…,j-1, Do

(5)αi:=(1/di)wiA*j;βi:=(1/di)Aj*zi

(6)zj:=zj-αizi;wj:=wj-βiwi

(7)EndDo

(8)dj:=wjAzj

(9) EndDo

Some observation can be posed here. It can be easily seen that (see, e.g., Salkuyeh [15])
dj=wjAzj=zjTAzj=wjAzj=Aj*zj=wjA*j.
In this algorithm, the computations for the inverse factors Z and W are tightly coupled. This algorithm needs the columns of the strictly upper triangular part of A for computing Z and the strictly lower triangular part of A for computing W. A sparse approximate inverse of A in the factored form is computed by inserting some dropping strategies in Algorithm 1.

3. Main Results

At the beginning of this section we mention that all of the results presented in this section are valid only when we do not use any dropping. As we mentioned in the previous section the computations for the inverse factors Z and W are tightly coupled. In this section, we extract a procedure from Algorithm 1 such that the computations for the inverse factors are done independently. We also show that the resulting algorithm is equivalent to the left-looking AINV algorithm.

From WAZ=D we have ZTAZ=ZTW-1D. Obviously, the right-hand side of the latter equation is a lower triangular matrix and diag(ZTAZ)=diag(ZTW-1D). Therefore
ziTAzj={di,i=j,0,i<j.
Premultiplying both sides of (2.3) by zkTA, k=1,2,…,j-1, from the left, we obtain
zkTAzj=zkTAej-∑i=1j-1αizkTAzi.
Taking into account (3.1), we obtain
0=zkTAej-∑i=1k-1αizkTAzi-αkzkTAzk.
Therefore
αk=1dkzkTA(ej-∑i=1k-1αizi).
Hence we can state a procedure for computing the inverse factor Z without need to the inverse factor W as follows:

z1:=e1, d1:=a11

For j=2,…,n, Do

For i=1,…,j-1, Do

αi:=(1/di)ziTA(ej-∑k=1i-1αkzk)

EndDo

zj:=ej-∑i=1j-1αizi

dj:=zjTAzj

EndDo

By some modifications this algorithm can be converted in a simple form, avoiding extra computations. Letting qi=ziTA, steps (3)–(7) may be written as follows:

zj:=ej

For i=1,…,j-1, Do

αi:=(1/di)qi(ej-∑k=1i-1αkzk)

zj:=zj-αizi

EndDo

qj:=zjTA

dj:=qjzj.

Obviously the parameter αi at step (iii) of this procedure can be computed via
αi=1diqizj.
We have AZ=W-1D. This shows that the matrix AZ is a lower triangular matrix. Therefore, since Z is a unit upper triangular matrix, we deduce
αi=1diqizj=1diziTAzj=1dieiTAzj=1diAi*zj.
On the other hand from (2.9), in step (7) of this procedure, we can replace dj:=qjzj by dj:=Aj*zj. Now by using the above results we can summarized an algorithm for computing Z as in Algorithm 2.

<bold>Algorithm 2: </bold>Left-looking AINV algorithm without dropping.

(1) z1:=e1, d1:=a11

(2) For j=2,…,n, Do

(3) zj:=ej

(4) For i=1,…,j-1, Do

(5) αi:=(1/di)Ai*zj

(6) zj:=zj-αizi

(7) EndDo

(8) dj:=Aj*zj

(9) EndDo

This algorithm is known as the left-looking AINV algorithm . We observe that the left-looking AINV algorithm can be extracted from the FFAPINV algorithm. This algorithm computes Z with working on rows of A. Obviously the factor W can be computed via this algorithm, working on rows of AT. In the same way, one can obtain the right-looking AINV algorithm from the BFAPINV algorithm.

4. Conclusions

In this paper, we have shown that the AINV and FAPINV algorithms are strongly related. In fact, we have shown that the AINV algorithm can be extracted from the FAPINV algorithm by some modification. Although, without any dropping, the computation of inverse factors of a matrix by the two algorithms is done in different ways, but the results are the same. Hence many of the properties of each of these algorithms are valid for the other one. For example, in (Benzi and Tuma [13]), it has been shown that the right-looking AINV algorithm without any dropping role is well defined for H-matrices. Therefore we conclude that the BFAPINV algorithm is well defined for H-matrices as well.

Acknowledgment

The authors would like to thank one of the referees for helpful suggestions.

SaadY.SchultzM. H.GMRES: a generalized minimal residual algorithm for solving nonsymmetric linear systemsSaadY.van der VorstH. A.Bi-CGSTAB: a fast and smoothly converging variant of Bi-CG for the solution of nonsymmetric linear systemsBenziM.Preconditioning techniques for large linear systems: a surveyBenziM.TumaM.A comparative study of sparse approximate inverse preconditionersLeeE.-J.ZhangJ.A two-phase preconditioning strategy of sparse approximate inverse for indefinite matrices2007476-07Lexington, Ky, USADepartment of Computer Science, University of KentukyLeeE.-J.ZhangJ.Factored approximate inverse preonditioners with dynamic sparsity patterns2007488-07Lexington, Ky, USADepartment of Computer Science, University of KentukyLuoJ.-G.An incomplete inverse as a preconditioner for the conjugate gradient methodLuoJ.-G.A new class of decomposition for inverting asymmetric and indefinite matricesLuoJ.-G.A new class of decomposition for symmetric systemsZhangJ.ZhangJ.A sparse approximate inverse preconditioner for parallel preconditioning of general sparse matricesBenziM.TumaM.A sparse approximate inverse preconditioner for nonsymmetric linear systemsBenziM.TumaM.Numerical experiments with two approximate inverse preconditionersSalkuyehD. K.ILU preconditioning based on the FAPINV algorithmsubmitted