A particular block Vandermonde matrix

— The Vandermonde matrix is ubiquitous in mathematics and engineering. Both the Vandermonde matrix and its inverse are often encountered in control theory, in the derivation of numerical formulas, and in systems theory. In some cases block vandermonde matrices are used. Block Vandermonde matrices, considered in this paper, are constructed from a full set of solvents of a corresponding matrix polynomial. These solvents represent block poles and block zeros of a linear multivariable dynamical time-invariant system described in matrix fractions. Control techniques of such systems deal with the inverse or determinant of block vandermonde matrices. Methods to compute the inverse of a block vandermonde matrix have not been studied but the inversion of block matrices (or partitioned matrices) is very well studied. In this paper, properties of these matrices and iterative algorithms to compute the determinant and the inverse of a block Vandermonde matrix are given. instructions give you guidelines for preparing papers . A parallelization of these algorithms is also presented. The proposed algorithms are validated by a comparison based on algorithmic complexity.


I. INTRODUCTION
HE Vandermonde matrix is very important and its uses include polynomial interpolation, coding theory, signal processing, etc. Literature on Vandermonde matrix goes back to 1965 and even before, where many papers deal with the study of its properties, its inverse and its determinant [1]- [5].The importance of the Vandermonde matrix in control theory particularly has been emphasized by Tou [6], Brule [7], and Reis [8].Vandermonde matrix may be also encountered in other domains, as in computer science, for example for the design of cross layer protocols with recovering from errors and packet loss impairments [9], and in [10] the quasi-cyclic (QC) protograph low-density parity-check (LDPC) codes are based on Vandermonde matrices.
In [11], the author proved that every generic nxn matrix is a product of a Vandermonde matrix and its transpose, and in [12] a Vandermonde matrix is decomposed to obtain variants of the Lagrange interpolation polynomial of degree≤n that passes through the n +1points.Generally, the inverse of the usual Vandermonde matrix as well as the inverse of the generalized Vandermonde matrix is based on using M. Yaici is with the Laboratoire LTII, University of Bejaia, Bejaia, 06000, Algeria (corresponding author : 213 664608272; fax: 213 34813721; e-mail: yaici_m@hotmail.com).
The inversion of the Vandermonde matrix has received much attention for its role in the solution of some problems of numerical analysis and control theory.The work presented in [13] deals with the problem of getting an explicit formula for the generic element of the inverse to result in two algorithms in O(n2) and O(n3).
One of the first papers where the term block vandermonde matrix (BVM) is used, to my knowledge, is [14] but it is in [15] and [16] that the concept is fully studied; the block Vandermonde matrix is defined and its properties are explored.A method, based on the Gaussian elimination, to compute the determinant is also proposed.
In [17], the author gives a method to determine the biggest integer n=v(q,t) for which there exist t×t matrices {A 1 …A n }with the highest power q such that the BVM is invertible.
In [18], linear diffusion layers achieving maximal branch numbers called MDS (maximal distance separable) matrices are constructed from block Vandermonde matrices and their transposes.Under some conditions these MDS matrices are involutory (its inverse is itself) which is of great value in cryptography.
Methods to compute the inverse of a block vandermonde matrix have not been studied but the inversion of block matrices (or partitioned matrices) is very well studied!The method to compute the inverse of a 2×2 block matrix is known, under the conditions that at least one of the two diagonal matrix entries must be non-singular.In [19], this condition is overcome by using three new types of symbolic block matrix inversion.
In [20], the properties of block matrices with block banded inverses are investigated to derive efficient matrix inversion algorithms for such matrices.In particular, a recursive algorithm to invert a full matrix whose inverse is structured as a block tridiagonal matrix and a recursive algorithm to compute the inverse of a structured block tridiagonal matrix are proposed.
Block Vandermonde matrices constructed using matrix polynomials solvents are very useful in control engineering, for example in control of multi-variable dynamic systems described in matrix fractions (see [21]).It is in these particular BVM that we are interested.
Parallelization may be a solution to problems where large size matrices, as BVM, are used.Large scale matrix inversion has been used in many domains and block-based Gauss-Jordan (G-J) algorithm as a classical method of large matrix inversion A particular block Vandermonde matrix Malika Yaici and Kamel Hariche T has become the focus of many researchers.But the large parallel granularity in existing algorithms restricts the performance of parallel block-based G-J algorithm, especially in the cluster environment consisting of PCs or workstations.The author of [22] presents a fine-grained parallel G-J algorithm to settle the problem presented above.
In this paper a new algorithm to compute the inverse and the determinant of a block Vandermonde matrix constructed from solvents are given.An implementation using Matlab has been undergone, in order to obtain the speed-up of the proposed algorithms compared to Matlab built-in functions.A parallelization of the two algorithms is also proposed.
After this introduction, some needed mathematical preliminaries are presented in section 2, and then the main results come in section 3. A parallelization of the proposed algorithms is given in section 4. A conclusion finishes the paper.

II. MATHEMATICAL PRELIMINARIES
In linear algebra, a Vandermonde matrix, named after Alexandre-Théophile Vandermonde, is an m×m matrix with the terms of a geometric progression in each row: (1) And a column Vandermonde matrix of order n is the transpose of V.
For a set of n m×m matrices {A 1 , A 2 , …, A n }, the corresponding block Vandermonde matrix (BVM) of order t is defined as follows: The block Vandermonde matrices, we will be dealing with, are constructed from solvents of matrix polynomials.In this section, a recall on matrix polynomials, solvents, and their properties, will be given.

A. Matrix polynomials Definition 1:
A polynomial matrix (also called a λ-matrix), of order m, is an m x m matrix given as follows: where a ij (t) are scalar polynomials (of degree r) over the field of complex numbers.
From a polynomial matrix we can construct a matrix polynomial and vice-versa.
Definition 2: An m'th order, r'th degree matrix polynomial is given by: where A i are m × m real matrices and t a complex number.
Definition 3: Let X be an m × m complex matrix.A right matrix polynomial is defined by: And a left matrix polynomial is defined by: , is called a primary right latent vector associated to the latent value λ i .Similarly, the non-trivial row vector w i , solution of the equation w i A(λ i )=0 is called a primary left latent vector associated with λ i [21].

B. Solvents Definition 5:
A right solvent (or a block root) R of a polynomial matrix A(t) is defined by: and the left solvent L of a polynomial matrix A(t) is defined by: A solvent is automatically non-singular.The determinant is non-null because its latent values (eigenvalues) are distinct; the latent vectors (eigenvectors) must be linearly independent.

C. Block Vandermonde matrix
As for an eigenvalue system, a block Vandermonde matrix can be defined for solvents with particular properties [21].
Let a set of r right solvents R i (m×m matrices) of a corresponding matrix polynomial A(t).A row block Vandermonde matrix of order r is a r*m×r*m matrix defined as: And given a set of r left solvents L i (m×m matrices) of a polynomial matrix A(t) a column block Vandermonde matrix of order r is a defined as: Remark1: In [23], the general right (left) block Vandermonde matrix constructed by solvents, where a right (left) solvent R i (L i ) with multiplicity m i exists, is given.

D. Non-singularity Theorem 1:
If A(t) has distinct latent roots, then there exists a complete set of right solvents of A(X) {R 1 , …, R m } and for any such set of solvents, The associated BVM V is nonsingular.
Proof : see [15] Theorem 2: If we let σ[A(t)] denote the set of all latent roots of A(t) and σ[R i ] the set of eigenvalues of the right solvent R i , then a complete set of right solvents is obtained if we can find r right solvents such that: and the block Vandermonde matrix thus constructed is nonsingular.
Proof: see [16] Just as for the right solvents, the existence of a left block root depends on the existence of a set of m linearly independent left latent vectors.A complete set of left block roots is obtained if we can find r left block roots where each block root involves a distinct set of m latent roots of A(t).This in turn requires that for each such a distinct set, we can find a corresponding set of linearly left latent vectors.
Theorem 3: A block Vandermonde matrix as defined in ( 9) is non-singular if and only if the set of k solvents {R 1 … R k } with multiplicities {m 1 …m k } is a complete set.
Proof: see [15,23] Theorem 4: The set of left solvents of A(t), which satisfies the following properties, and a nonsingular corresponding block vandermonde matrix, is called the complete set of the left solvents of A(t).
Proof: see [24] Remark 2: A complete set of right or left solvents will then describe completely the latent (eigen) structure of A(t).

III. MAIN RESULTS
The following results are mainly given on a row-BVM constructed from right solvents.The same procedures can be applied to a column-BVM constructed from left solvents.

A. Iterative construction of BVM
Let V 1 =I m , where I m is the m×m identity matrix, then BVM of order 2 constructed from two solvents is as follows: The following theorem is deduced from previous results: Theorem 5: A BVM of order r, constructed from r solvents, is as follows: (15) where , and .
Proof: It is straight forward from the block partitioning of the BVM Vr as follows:

B. Inverse of a BVM
From [25], the inverse of a block partitioned is given as follows: If A is nonsingular: Where , , .S A is the Shur complement of matrix A, is nonsingular.
And if D is non-singular: Let us compute the inverse of a BVM of order r as given in (9) by using (17).In our case both diagonal entries are nonsingular.
where S r-1 is the Shur complement of matrix V r-1 (computed at iteration r-1) , and D r-1 , C r-1 , B r-1 are as given in (15).The same procedure will be used to determine the inverse of the BVM V r-1 .So the algorithm is an iterative procedure.
Algorithm: Let a complete set of solvents {R 1 , ..., R r } and the corresponding BVM V r as given in (9).From the matrix V r , all sub-matrices (B i , C i , D i and S i ) will be first constructed, and then the inverse is computed.The algorithm uses a function which computes the inverse of the Shur complement.
endfor Algorithmic Complexity: The iterative algorithm requires r-2 iterations.The procedure consists of a set of affectations and the computation of the inverse of S i .The size of S i is m×m and Matlab uses Gaussian elimination method rather than an inverse algorithm.The Gaussian elimination has a complexity of O(m 3 ).

C. Determinant of a BVM
From [25], the determinant of a block partitioned matrix is as follows: If A is non-singular And if D is non-singular: Using this equation and the block decompositions given in the previous section we deduced the determinant of a BVM of order r as given in (9) by using ( 21) (both equations hold in our case).
where S r-1 is the Shur complement of matrix V r-1 defined in (20).

Remark 2:
The determinant is, in general, needed with the inverse.So the inverse of V r-1 is computed using the previous algorithm.
Algorithm: Let a complete set of solvents {R 1 …R r } and the corresponding BVM V r as given in (9).From the matrix V r all sub-matrices (V i , B i , C i , D i and S i ) can be constructed and the determinant computed.The algorithm uses a function which computes the determinant of the Shur complement.
* B i-1 ; Det = Det * determinant(S i-1 ); endfor Algorithmic Complexity: As for the inverse algorithm, the determinant iterative algorithm needs r-2 iterations.The procedure consists of a set of affectations, the computation of the inverse of a BVM and of the determinant of S. The size of S is m×m and Matlab uses the triangular factors of Gaussian elimination method to compute the determinant and the inverse of a square matrix.The Gaussian elimination has a complexity of O(m 3 ).So the complexity depends also on the size of S.

D. Illustrative example
Let P(λ) be a matrix polynomial of degree 4 and order 2 : Where the matrix coefficients are: This matrix polynomial presents a full set of 4 solvents: Then the associated BVM of order 4 is constructed: The previous algorithms have been implemented on Matlab and the numerical results are as follows: Det = -1.0037e+007 We used the tic/toc functions of Matlab to determine the execution time T1 of our procedure of the BVM inverse and determinant to be compared to the time T2 of the "inv" and "det" functions of Matlab.
The results are for the inverse are: T1 = 2.2283e-005 T2 = 2.4673e-004 Speedup = T2/T1= 11.073 The results are for the determinant are: T1 = 7.2925e-006 T2 = 1.0615e-004Speedup =T2/T1= 14.556 IV.PARALLELIZATION For both Determinant and Inverse, a parallelization is possible because of the decomposition step in the proposed algorithm.Even though the iterative approach is difficult to optimally parallelize!The above decomposition is useful only if a parallel execution is possible, otherwise the benefits are negligible.
There exist two kinds of parallelization of matrix calculus: data or tasks (calculus) decomposition.Because data decomposition is already performed, so task decomposition is proposed.

A. Parallel inverse of BVM
From the data decomposition, master-slave task decomposition was performed on the sequential algorithm.The master task will execute the data scattering and gathering, and sequential instructions and at least three (3) slave tasks will execute the parallel blocks.

B. Parallel determinant of BVM
As for the precedent algorithm, master-slave task decomposition has been performed, and the master task will execute the data scattering and gathering and sequential parts, and at least four (4) slave tasks will execute the parallel blocks.

C. Algorithmic complexity
The overall time complexity of the two algorithms is the same as before: O((r-2)*m 3 ).But the detailed complexity is slightly better.
An implementation using Matlab has been done.Matlab (classical) offers parallel execution of a set of instructions (parallel block) using parfor.Matlab uses the number of cores available on the used computer using matlabpool.

V. CONCLUSION
In this paper new results on the computation of the inverse and the determinant of a particular block Vandermonde matrix are given.Efficient algorithms are proposed with their algorithmic complexities.
We used the "tic/toc" functions of Matlab to determine the execution time of our algorithms to be compared to the execution time of Matlab functions, and the proposed inverse algorithm is found 11 times quicker, and the determinant algorithm is 14 times quicker.The parallel execution time was greater than the sequential execution time, because of the large amount of data flowing between the cores at each iteration.
These new computation techniques are very useful in control theory, where systems are described in matrix fractions description and their properties are deduced from solvents.In this case block Vandermonde matrices constructed from solvents, their inverse and determinants are needed.The future work is within this axis and it consists in proposing a parallel algorithm to solve the Compensator (Diophantine) equation where block Vandermonde matrices constructed using matrix polynomial solvents are involved.

( 13 )
If we define the following matrices: B 1 =I m , C 1 =R 1 and D 1 =R 2 Then a BVM of order three (3 solvents) is as follows: the Schur complement of matrix D and should be nonsingular.