
TL;DR
This paper introduces a fast, deterministic, pivot-free recursive algorithm for generalized Bruhat decomposition and matrix inversion, matching matrix multiplication complexity and suitable for parallel computing systems.
Contribution
It presents a novel recursive, pivot-free algorithm for generalized Bruhat decomposition with complexity comparable to matrix multiplication, optimized for parallel systems.
Findings
Algorithm has the same complexity as matrix multiplication.
Suitable for parallel computer systems.
Efficient computation of matrix inverse.
Abstract
The deterministic recursive pivot-free algorithms for the computation of generalized Bruhat decomposition of the matrix in the field and for the computation of the inverse matrix are presented. This method has the same complexity as algorithm of matrix multiplication and it is suitable for the parallel computer systems.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
11institutetext: Tambov State University,
Internatsionalnaya 33, 392622 Tambov, Russia
Fast generalized Bruhat decomposition
Gennadi Malaschonok Preprint of the paper: G. Malaschonok. Fast Generalized Bruhat Decomposition. Computer Algebra in Scientific Computing, LNCS 6244, Springer, Berlin, 2010. P. 194-202. (Supported by the Sci. Program Devel. Sci. Potent. High. School, RNP.2.1.1.1853.)
Abstract
The deterministic recursive pivot-free algorithms for the computation of generalized Bruhat decomposition of the matrix in the field and for the computation of the inverse matrix are presented. This method has the same complexity as algorithm of matrix multiplication and it is suitable for the parallel computer systems.
1 Introduction
An matrix decomposition without pivoting is a decomposition of the form , a decomposition with partial pivoting has the form , and decomposition with full pivoting (Trefethen and Bau) has the form , where and are lower and upper triangular matrices, and is a permutation matrix.
French mathematician Francois Georges René Bruhat was the first who worked with matrix decomposition in the form , where and are nonsingular upper triangular matrices and is a matrix of permutation. Bruhat decomposition plays an important role in algebraic group. The generalized Bruhat decomposition was introduced and developed by D.Grigoriev[1],[2]. He uses the Bruhat decomposition in the form , where and are upper triangular matrices but they may be singular when the matrix is singular. In the papers [3] and [4] there was analyzed the sparsity pattern of triangular factors of the Bruhat decomposition of a nonsingular matrix over a field.
Fast matrix multiplication and fast block matrix inversion were discovered by Strassen [5]. The complexity of Strassen’s recursive algorithm for block matrix inversion is the same as the complexity of an algorithm for matrix multiplication. But in this algorithm it is assumed that principal minors are invertible and leading elements are nonzero as in the most of direct algorithms for matrix inversion. There are known other recursive methods for adjoint and inverse matrix computation, which have the complexity of matrix multiplications([6]-[8]).
In a general case it is necessary to find suitable nonzero elements and to perform permutations of matrix columns or rows. Bunch and Hopkroft suggested such algorithm with full pivoting for matrix inversion [9].
The permutation operation is not a very difficult operation in the case of sequential computations by one processor, but it is a difficult operation in the case of parallel computations, when different blocks of a matrix are disposed in different processors. A matrix decomposition without permutations is needed for parallel computation for construction of efficient and fast computational schemes.
The problem of obtaining pivot-free algorithm was studied in [10],[11] by S.Watt. He presented the algorithm that is based on the following identity for a nonsingular matrix: . Here is the transposed matrix to and all principal minors of the matrix are nonzero. This method is useful for making an efficient parallel program with the help of Strassen’s fast decomposition of inverse matrix for dense nonsingular matrix over the field of zero characteristic when field elements are represented by the float numbers. Other parallel matrix algorithms are developed in [12] - [15].
This paper is devoted to the construction of the pivot-free matrix decomposition method in a common case of singular matrices over a field of arbitrary characteristic. The decomposition will be constructed in the form , where and are lower and upper triangular matrices, is a truncated permutation matrix, which has the same rank as the matrix . Then the generalized Bruhat decomposition may be easy obtained using the matrix , and . This algorithm has the same complexity as matrix multiplication and does not require pivoting. For singular matrices it allows to obtain a nonsingular block of the biggest size, the echelon form and kernel of matrix. The preliminary variants of this algorithm were developed in [16] and [17].
2 Preliminaries
We introduce some notations that will be used in the following sections.
Let be a field, be an matrix ring over , be a permutation group of elements. Let be a multiplicative semigroup in consisting of matrices having exactly nonzero entries, all of them equal to . We call the permutation semigroup because it contains the permutation group of n elements and all their truncated matrix.
The semigroup is formed by the diagonal matrices. So = and the identity matrix is the identity element in , and .
Let be a matrix, which has only one nonzero element in the position . For an arbitrary matrix of , which has the rank () we shall denote by the ordered set of zero row numbers and the ordered set of zero column numbers.
Definition 1
Let be the matrix of the rank , let and are the ordered set of zero row numbers and zero columns number of the matrix . Let us denote by the matrix
[TABLE]
and call it the complimentary matrix for . For the case we put .
It is easy to see that , and . Therefore the map is the involution and we have . We can define the partial order at : . For each matrix we shall denote by
[TABLE]
the diagonal matrix: . The unit elements of the matrix show nonzero rows of the matrix and the unit elements of the matrix show nonzero columns of the matrix . Therefore we have several zero identities:
[TABLE]
For any pare let us denote the subset of matrices
[TABLE]
We call them -zero matrix. It is evident that , and if and then .
Definition 2
We shall call the factorization of the matrix
[TABLE]
-decomposition if , is a nonsingular low triangular matrix, is an upper unitriangular matrices and
[TABLE]
If (2) is the -decomposition we shall write
[TABLE]
Sentence 1
Let be the -decomposition of matrix then
[TABLE]
[TABLE]
Proof
The first and second equalities follows from (3). To prove the property of matrix we use the commutativity of diagonal semigroup :
[TABLE]
To prove the property of matrix let us consider the identity
[TABLE]
Therefore and . The prove of the matrix property may be obtained similarly.
Sentence 1 states the property of matrix , which may be written in the form , . We shall call it the property of immersion. on the other hand, each zero row of the matrix goes to the unit column of matrix and each zero column of the matrix goes to the unit row of matrix .
Let us denote by the permutation matrix . It is easy to see that if the matrix is low-(upper-) triangular, then the matrix is upper- (low-) triangular.
Sentence 2
Let be the -decomposition of matrix , then the matrix has the generalized Bruhat decomposition and
[TABLE]
Proof
As far as is a low triangular matrix and is an upper triangular matrix we see that and are upper triangular matrices. Matrix is a product of permutation matrices so is a permutation matrix. One easily checks that .
Examples.
For any matrix , , the product is a LEU decompositions of matrix and the product is a LEU decompositions of matrix .
3 Algorithm of decomposition
Theorem 3.1
For any matrix of size a -decomposition exists. For computing such decomposition it is enough to compute 4 -decompositions, 17 multiplications and several permutations for the matrices of size .
Proof
For the matrix of size , when , we can write the following decompositions
[TABLE]
Let us assume that for any matrix of size we can write a decomposition and let us given matrix has the size . We shall construct a decomposition of matrix .
First of all we shall divide the matrices , , and a desired matrix into four equal blocks:
[TABLE]
and denote
[TABLE]
Let
[TABLE]
denote the matrices
[TABLE]
[TABLE]
Let
[TABLE]
denote the matrices
[TABLE]
Let us put
[TABLE]
and denote
[TABLE]
[TABLE]
We have to prove that
[TABLE]
As far as are low triangular nonsingular matrices and , , are upper unitriangular matrices we can see in (10) that the matrix is a low triangular nonsingular matrix and the matrix is upper unitriangular.
Let us show that . As far as and , , , and due to the Sentence 1 we obtain , , , .
Therefore the unit elements in each of the four blocks of the matrix are disposed in different rows and columns of the matrix . So , and next identities hold
[TABLE]
[TABLE]
[TABLE]
[TABLE]
We have to prove, that . This equation in block form consists of four block equalities:
[TABLE]
Therefore we have to prove these block equalities.
Let us note, that from the identity and Sentence 1 we get
[TABLE]
The Sentence 1 together with equations , , give the next properties of L- and U- blocks:
[TABLE]
The following identities can be easy checked now
[TABLE]
[TABLE]
[TABLE]
[TABLE]
We shall use the following equalities,
[TABLE]
which follows from (7),(10) and (12), the equality
[TABLE]
which follows from the definition of the block in (13), (24), (16) and (6), the equality
[TABLE]
which follows from the definition of the block in (13), (23), (17) and (6).
- The first equality of (20) follows from (27), (23) and (24).
2.The right part of the second equality of (20) takes the form due to (8), (27) and (28). To prove the second equality we use the definition of the blocks and in (8) and (9), then the second equality in (27) and identity (25):
-
The right part of the third equality of (20) takes the form due to definition of the block (8), the first equality in (27) and (29). To prove the third equality we use the definition of the blocks in (9), then the third equality in (27) and identity (26): .
-
The identity
[TABLE]
follows from (23) and (17).
We have to check that , using the definitions of the blocks in (13), and in (9), the identity (28), the second equality in (27) and the definition (6).
We have to check that , using the first equality in (27), the identity (29), the definitions of the blocks in (13), (1), then the third equality in (27) and definition (6).
To prove the forth equality we have to substitute obtained expressions to the right part of the fourth equality:
[TABLE]
For the completion of the proving of this theorem we have to demonstrate the special form of the matrices and : and .
The matrix is invertible and therefore we have to prove that , where , , .
This matrix equality for matrix (14) is equivalent to the four block equalities:
[TABLE]
[TABLE]
To prove the first block equalities we have to multiply its left part by the unit matrix in the form from the left side and by the unit matrix in the form from the left side. Then we use the following identities to obtain in the left part the same expression as in the right part: , , , . The same idea may be used for proving the last block equality, but we must use other forms of unit matrix: , .
The second block equality is evident.
Let us prove the third block equality. We have to multiply the left part of the third block equality by the unit matrix in the form from the left side and by the unit matrix in the form from the right side.
The block is equal to the following expression by the definition (13), (11) and (8):
[TABLE]
We have to use in the left part the equations , , , , and , , , .
The property of the matrix : may be proved in the same way as the property of the matrix .
Theorem 3.2
For any matrix of size , an algorithm of -decomposition which has the same complexity as matrix multiplication exists.
Proof
We have proved an existence of -decomposition for matrices of size Let be a matrix of size , be a matrix of size , which has in the left upper corner the submatrix equal and all other elements equal zero. We can construct -decomposition of matrix : . According to the Sentence 1 the product has the form
[TABLE]
Therefore is a decomposition of matrix .
The total amount of matrix multiplications in (7)-(15) is equal to 17 and total amount of recursive calls is equal to 4. We do not consider multiplications of the permutation matrices, we can do these multiplications due to permutation of pointers for the blocks which are disposed at the lockal processors.
We can compute the decomposition of the second order matrix by means of 5 multiplicative operations. Therefore we get the following recurrent equality for complexity
[TABLE]
Let and be constants, , and let be the number of multiplication operations in one matrix multiplication.
After summation from to we obtain
[TABLE]
Therefore the complexity of the decomposition is
[TABLE]
If is an invertible matrix, then and a recursive block algorithm of matrix inversion is written in the expressions (7)-(15). This algorithm has the complexity of matrix multiplications.
4 Conclusion
An algorithms for finding the generalized Bruhat decomposition and matrix inversion are described. These algorithms have the same complexity as matrix multiplication and do not require pivoting. For singular matrices they allow to obtain a nonsingular block of the biggest size. These algorithms may be used in any field, including real and complex numbers, finite fields and their extensions.
The proposed algorithms are pivot-free, and do not change the matrix block structure. So they are suitable for parallel hardware implementation.
The reference list from the paper itself. Each links out to its DOI / PubMed record.
- 1[1] Grigoriev D. Analogy of Bruhat decomposition for the closure of a cone of Chevalley group of a classical serie. Soviet Math. Dokl., vol.23, N 2, 393–397 (1981)
- 2[2] Grigoriev D. Additive complexity in directed computations. Theoretical Computer Science, vol.19, 39–67 (1982)
- 3[3] Kolotilina L.Yu. Sparsity of Bruhat decomposition factors of nonsingular matrices. Notes of Scientific Seminars of LOMI, v.202, 5–17 (1992)
- 4[4] Kolotilina L.Yiu and Ye min A.Yu. Bruhat decomposition and solution of linear algebraic systems with sparse matrices. Sov.J.Numer.Anal. and Math.Model. v.2, 421–436 (1987)
- 5[5] Strassen V.: Gaussian Elimination is not optimal. Numerische Mathematik. 1 3, 354–356 (1969)
- 6[6] Malaschonok G.I.: Effective Matrix Methods in Commutative Domains. In: Formal Power Series and Algebraic Combinatorics. Springer, Berlin 506–517 (2000)
- 7[7] Malaschonok G.I.: Matrix computational methods in commutative rings. Tambov, Tambov State University (2002).
- 8[8] Akritas A. and Malaschonok G.: Computation of Adjoint Matrix. In: Fourth International Workshop on Computer Algebra Systems and Applications (CASA 2006), LNCS 3992. Springer, Berlin, 486-489 (2006)
