Next Article in Journal
Hyers Stability in Generalized Intuitionistic P-Pseudo Fuzzy 2-Normed Spaces
Next Article in Special Issue
RSVD for Three Quaternion Tensors with Applications in Color Video Watermark Processing
Previous Article in Journal
Multidimensional Markovian BSDEs with Jumps and Continuous Generators
Previous Article in Special Issue
Some Properties of the Solution to a System of Quaternion Matrix Equations
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

A Fast Novel Recursive Algorithm for Computing the Inverse of a Generalized Vandermonde Matrix

by
Ahmed Arafat
1,2,* and
Moawwad El-Mikkawy
2
1
Department of Mathematics, University of Technology and Applied Sciences-ALRustaq, Rustaq 329, Oman
2
Department of Mathematics, Faculty of Science, Mansoura University, Mansoura 35516, Egypt
*
Author to whom correspondence should be addressed.
Axioms 2023, 12(1), 27; https://doi.org/10.3390/axioms12010027
Submission received: 24 October 2022 / Revised: 20 December 2022 / Accepted: 20 December 2022 / Published: 26 December 2022
(This article belongs to the Special Issue Advances in Linear Algebra)

Abstract

:
The main research object of this paper is to present a systematic computational procedure for computing the inverse of a generalized Vandermonde matrix. Short and rigorous proofs for the formulas of the determinant and the inverse of a generalized Vandermonde matrix are proposed. The computational cost of this method is O ( n 2 ) . The proposed method can be used efficiently for hand calculation as well as for computer programming. Some examples are given for the sake of illustration. Furthermore, we present a simulation study to compare the time spent to calculate the inverse using the proposed algorithm and the inverse function in Maple.

1. Introduction and Objectives

Matrices arising in practice frequently have a distinguishing structure. The Vandermonde matrix (alternant matrix) is one of such matrices and appears in mathematics, engineering, and natural science. For example, they appear in the fields of statistics, in the derivation of explicit Rung-Kutta (ERK) and explicit Rung-Kutta-Nystrom (ERKN) methods in numerical analysis—see for instance [1,2,3]—and in the computing the inverse of a companion matrix [4].
In this paper, x denotes the following vector: x = ( x 1 , x 2 , , x n ) C n , n N . We define a generalized Vandermonde matrix with distinct nodes x 1 , x 2 , , x n , denoted by V n , p ( x ) , n 1 , p R (for short, V n , p ) as V n , p = x j p + i 1 i , j = 1 n . The classical Vandermonde matrix is a special case of the generalized Vandermonde V n , p when p = 0 . Some authors call V n , p T , rather than V n , p , a Vandermonde matrix. Throughout this work, we will focus on the determinant and the inverse of the Vandermonde matrix V n , p . The explicit formula of the determinant for the Vandermonde matrix, n , p det V n , p , is given by the following compact formulas:
n , p = = 1 n x p 1 j < i n ( x i x j ) = x 1 p i = 2 n x i p j = 1 i 1 ( x i x j ) .
From (1), we see that n , p 0 , as long as x i x j for i j . Furthermore, the determinant of the classical Vandermonde matrix is given by n , 0 , see [5]. In recent decades, there have been many fruitful research papers for computing the inverse of the classical Vandermonde matrix using different approaches. The interested reader may refer to [6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]. In an article by El Mikkawy [21], an explicit formula for the inverse of a generalized Vandermonde matrix was given, which was proved from the inverse of a classical Vandermonde matrix, while, in this article, we provide another proof for that formula. However, what distinguishes the method in the current paper is the possibility of calculating the inverse of the Vandermonde matrix V n , p via hand calculation and also via computer programming with a computational cost of O ( n 2 ) . Elementary symmetric polynomial (ESP) is a basic tool in computing the inverse of the Vandermonde matrix V n , p , see for instance [21,22,23,24].
The current paper is organized as follows: In Section 2, we introduce a very simple proof for the determinant formula (1). Section 3 is mainly devoted to a new easy proof for the well-known explicit formula of the inverse of the Vandermonde matrix V n , p . In Section 4, a recursive computational algorithm for computing the inverse of the Vandermonde matrix V n , p is presented. Section 5 focuses on a simulation study and some illustrative examples.
Symmetric polynomials appear in many fields such as representation theory [25] and combinatorics [26,27]. We introduce some basic definitions, notations, and well-known results which we will use in sequel and for further knowledge see, for instance [21,23,28,29].
Definition 1.
For a positive integer n, the i-th elementary symmetric polynomial (ESP) in n variables x 1 , x 2 , , x n , denoted by e i ( n ) ( x ) is defined by
e i ( n ) = e i ( n ) ( x ) = 0 if i > n or i < 0 , 1 if i = 0 , 1 r 1 < r 2 < < r i n = 1 i x r if i = 1 , 2 , , n .
It is worth noting that each e i ( n ) is a summation of n i terms and is a homogeneous polynomial of degree i. The generating function E ( t ) for the ESP e i ( n ) is given by
E ( t ) = = 1 n ( 1 + x t ) = i = 0 n e i ( n ) ( x ) t i .
From (3), we see that the ESP e i ( n ) satisfies the recurrence relation
e i ( n ) ( x ) = e i ( n 1 ) ( x 1 , x 2 , , x n 1 ) + x n e i 1 ( n 1 ) ( x 1 , x 2 , , x n 1 ) .
Due to symmetry, we see that the recurrence relation (4) can be written as
e i ( n ) ( x ) = e i ( n 1 ) ( x ^ j ) + x j e i 1 ( n 1 ) ( x ^ j ) ,
for any x j , j = 1 , 2 , , n , the notation x ^ j denotes the n − tuple where the component x j is absent.
Differentiating both sides of (5) partially with respect to x j , we obtain the following:
e i ( n ) ( x ) x j = e i , j ( n ) ( x ) = e i 1 ( n 1 ) ( x ^ j ) = e i 1 ( n ) ( x ) x j = 0 .
Also, by differentiating both sides of (3) partially with respect to x j , we obtain
e i , j ( n ) ( x ) = e i 1 ( n ) ( x ) x j e i 1 , j ( n ) ( x ) .
The following result, whose proof is given in [29], is an immediate consequence of (7) by repeated applications.
Lemma 1.
Let n be a positive integer and let e i ( n ) be the i − th ESP in x 1 , x 2 , , x n . Then,
e i , j ( n ) ( x ) = = 1 i ( 1 ) 1 e i ( n ) ( x ) x j 1 ,
for all i , j = 1 , 2 , , n .
Throughout this paper, let f ( x ) be a monic polynomial of degree n with n distinct linear factors of the following form:
f ( x ) = = 1 n ( x x ) .
Furthermore, let f i ( x ) , and d i , i = 1 , 2 , , n be defined by
f i ( x ) = = 1 i n ( x x ) ,
and
d i = x i p f i ( x i ) = x i p = 1 i n ( x i x ) 0 .
At this point it should be noted that the polynomials f ( x ) and f i ( x ) , i = 1 , 2 , , n in (9) and (10) can be written in terms of ESPs as follows:
f ( x ) = = 0 n ( 1 ) n e n ( n ) ( x ) x ,
and
f i ( x ) = = 1 n ( 1 ) n e n + 1 , i ( n ) ( x ) x 1 ,
having used (2) and (6), respectively. From (10), we see that
f i ( x j ) = 0 , if j i .

2. The Vandermonde Matrix V n , p Determinant Formula—A Simple Proof

In this section, we provide a very simple proof for the determinant of the Vandermonde matrix V n , p that is given by the Formula (1).
Theorem 1.
Consider the generalized Vandermonde matrix V n , p with nodes x 1 , x 2 , , x n . Then, the determinant, n , p = det V n , p , is given by the Formula (1).
Proof. 
Consider the monic polynomial h ( t ) of degree n 1 defined by the n-th order determinant
h ( t ) = x 1 p x 2 p x 3 p x n 1 p 1 x 1 p + 1 x 2 p + 1 x 3 p + 1 x n 1 p + 1 t x 1 p + 2 x 2 p + 2 x 3 p + 2 x n 1 p + 2 t 2 x 1 p + n 2 x 2 p + n 2 x 3 p + n 2 x n 1 p + n 2 t n 2 x 1 p + n 1 x 2 p + n 1 x 3 p + n 1 x n 1 p + n 1 t n 1 .
We have h ( x i ) = 0 for all i = 1 , 2 , , n 1 . Therefore, we may write h ( t ) in the following form:
h ( t ) = K = 1 n 1 ( t x ) ,
where K is a constant to be determined. Expanding h ( t ) in (15) in terms of its last column, we see that the coefficient of t n 1 is n 1 , p . Hence, K = n 1 , p . Consequently, we obtain
h ( t ) = n 1 , p = 1 n 1 ( t x ) .
Since x n p h ( x n ) = n , p , from (17), we obtain
n , p = x n p n 1 , p = 1 n 1 ( x n x ) = i = n n x i p = 1 i 1 ( x i x ) n 1 , p .
Repeated applications of (18) yields
n , p = i = n 1 n x i p = 1 i 1 ( x i x ) n 2 , p = i = n 2 n x i p = 1 i 1 ( x i x ) n 3 , p = = i = 2 n x i p = 1 i 1 ( x i x ) 1 , p .
Since 1 , p = x 1 p , the result follows. This completes the proof.    □
The importance of the determinant of the Vandermonde matrix V n , p appears in many fields of mathematics. For example, in linear algebra it can be used to prove that the eigenvectors corresponding to different eigenvalues are linearly independent, see [30].

3. Inversion of the Vandermonde Matrix V n , p —A New Easy Method for the Derivation

In this section, we are mainly concerned with introducing a simple proof for the inverse of the Vandermonde matrix V n , p with distinct nodes. For convenience of the reader, we state the following result.
Theorem 2
([21]). Consider the Vandermonde matrix V n , p with n distinct nodes x 1 , x 2 , , x n . Then, W n , p = V n , p 1 = w i j i , j = 1 n , where
w i j = ( 1 ) n j e n j + 1 , i ( n ) ( x ) d i ,
for all i , j = 1 , 2 , , n , where e n j + 1 , i ( n ) ( x ) and d i are defined by (8) and (11), respectively.
Proof. 
By (10) and (11), define the functions g i ( x ) for i = 1 , 2 , , n as follows:
g i ( x ) = x i p f i ( x ) d i .
Consequently using (11) and (14), we have g i ( x j ) = δ i j = 1 , i = j 0 , i j . Therefore, by (13) we may write
δ i j = = 1 n ( 1 ) n e n + 1 , i ( n ) ( x ) x j p + 1 d i .
Let
W n , p = ( 1 ) n i e n j + 1 , i ( n ) ( x ) d i i , j = 1 n .
Since I n = [ δ i j ] i , j = 1 n , then from (21), we obtain the matrix representation I n = W n , p V n , p . Hence, W n , p = V n , p 1 . This completes the proof.    □
Notice that the denominators d i in any row of W n , p = V n , p 1 are the same.

4. A Recursive Computational Algorithm for Inverting the Vandermonde Matrix V n , p

The main goal in the present section is to construct a systematic computational method for computing the inverse of the Vandermonde matrix. For this purpose it is convenient to consider the polynomials f ( x ) and f i ( x ) , i = 1 , 2 , , n defined in (9) and (10), respectively. Additionally, let
f ( x ) = j = 0 n a n j x j ,
and
f i ( x ) = j = 1 n b j ( i ) x j 1 , i = 1 , 2 , , n .
From (12) and (13), we obtain
a j = ( 1 ) j e j ( n ) ( x 1 , x 2 , , x n ) , j = 0 , 1 , 2 , , n ,
and
b j ( i ) = ( 1 ) n j e n j + 1 , i ( n ) ( x ) , i , j = 1 , 2 , , n .
It is time to give the following results.
Lemma 2.
Consider the monic polynomials f ( x ) and f i ( x ) , i = 1 , 2 , , n defined by (9) and (10), respectively. Then, for all i = 1 , 2 , , n , we have
d i = x i p f i ( x i ) = j = 1 n j a n j x i p + j 1 .
Proof. 
Using (9) and (10), we see that f ( x ) = ( x x i ) f i ( x ) . Therefore, differentiating both sides with respect to x we obtain f ( x ) = ( x x i ) f i ( x ) + f i ( x ) . Hence, x i p f ( x i ) = x i p f i ( x i ) = d i = j = 1 n j a n j x i p + j 1 , i = 1 , 2 , , n . This completes the proof.    □
Lemma 3.
Let n be a positive integer and let e i ( n ) be the i-th ESP in x 1 , x 2 , , x n . Then, e i , j ( n ) satisfies
( 1 ) n j e n j + 1 , i ( n ) = = 0 n j a x i n j ,
for all i , j = 1 , 2 , , n .
Proof. 
Following Lemma 1, we obtain
( 1 ) n j e n j + 1 , i ( n ) ( x ) = ( 1 ) n j = 1 n j + 1 ( 1 ) 1 e n j + 1 ( n ) ( x ) x i 1 = = 1 n j + 1 ( 1 ) n j + 1 e n j + 1 ( n ) ( x ) x i 1 = = 0 n j ( 1 ) e ( n ) ( x ) x i n j = = 0 n j a x i n j ,
having used (25). This completes the proof.    □
We may now formulate the following result.
Theorem 3.
Consider the Vandermonde matrix V n , p with n distinct nodes x 1 , x 2 , , x n . Then, we have W n , p = V n , p 1 = [ w i j ] i , j = 1 n , where
w i j = N i j d i = = 0 n j a x i n j = 1 n a n x i p + 1 .
Proof. 
Using Theorem 2 yields N i j = ( 1 ) n j e n j + 1 , i ( n ) ( x ) = b j ( i ) (in favor of (26)). Applying Lemmas 1–3, respectively, the required result follows.    □
According to Lemma 1 in [31], we can deduce the following result for a particular case of the Vandermonde matrix V n , p x 1 , x 2 , , x n 2 , x 1 , x 2 , , x n 2 .
Corollary 1.
Consider the Vandermonde matrix V n , p with an even n distinct nodes x 1 , x 2 , , x n 2 , x 1 , x 2 , , x n 2 . Then, we have W n , p = V n , p 1 = [ w i j ] i , j = 1 n , where
w i j = N i j d i = = 0 0 ( mod 2 ) n j a x i n j = 2 0 ( mod 2 ) n a n x i p + 1 ,
with
a = ( 1 ) 3 2 e 2 n 2 x 1 2 , x 2 2 , , x n 2 2 , 0 ( mod 2 ) , 0 , 1 ( mod 2 ) .
Following Lemma 2 in [31], we can deduce the following result for a particular case of the classical Vandermonde matrix V n , 0 x 1 , x 2 , , x n 1 2 , 0 , x 1 , x 2 , , x n 1 2 with the first row inputs as ones.
Corollary 2.
Consider the classical Vandermonde matrix V n , 0 with an odd n distinct nodes x 1 , x 2 , , x n 1 2 , 0 , x 1 , x 2 , , x n 1 2 . Then, we have W n , 0 = V n , 0 1 = [ w i j ] i , j = 1 n , where
w i j = N i j d i = = 0 0 ( mod 2 ) n j a x i n j = 2 0 ( mod 2 ) n a n x i 1 ,
with
a = ( 1 ) 3 2 e 2 n 1 2 x 1 2 , x 2 2 , , x n 1 2 2 , 0 ( mod 2 ) , 0 , 1 ( mod 2 ) .
The following result gives a recurrence relation for the numerator of the formula (29).
Lemma 4.
Let n be a positive integer, for i = 1 , 2 , , n and j = n 1 , n 2 , , 1 . The numerator of (29) satisfies the following recurrence relation
N i j = x i N i ( j + 1 ) + a n j ,
with N i n = 1 .
Proof. 
Following the numerator of (29), we have
x i N i ( j + 1 ) + a n j = x i = 0 n j 1 a x i n j 1 + a n j = = j + 1 n a j 1 x i n + 1 + a n j = = j n 1 a j x i n + a n j = = j n a j x i n = = 0 n j a x i n j = N i j .
This completes the proof.    □
Remark 1.
We can easily observe that
  • Using matrix representation, we see that Lemma 2 together with Lemma 3 introduce a very simple, direct proof and generalizes Theorem 2.1 in [17], which can be written as V n , p 1 = Ω n , p A , where
    Ω n , p i j = x i n j d i and A i j = a i j , if i j 0 , if i < j ,
    for i , j = 1 , 2 , , n . The relation V n , p 1 = Ω n , p A enables us to give another proof that N i j in Theorem 3 satisfies N i j = = 0 n j a x i n j .
  • Following [32], we obtain V n , 0 1 = U L , where
    L i j = ( 1 ) i j e i j ( i 1 ) ( x 1 , x 2 , , x i 1 ) if i j 0 if i < j U i j = 1 = 1 i j ( x i x ) if i j 0 if i > j ,
    for i , j = 1 , 2 , , n , see also Theorem 2.1 in [13].
  • Since f i ( x ) = f ( x ) ÷ ( x x i ) , i = 1 , 2 , , n , and applying the Horner’s scheme for synthetic division, we obtain
    x i a 0 = 1 a 1 a 2 a n 1 a n x i N i n x i N i ( n 1 ) x i N i 2 x i N i 1 a 0 = N i n N i ( n 1 ) N i ( n 2 ) N i 1 r i = a n + x i N i 1
  • The denominators d i , i = 1 , 2 , , n can be computed recursively as follows
    z 0 = n a 0 = n , z j = ( n j ) a j + x i z j 1 ,
    for j = 1 , 2 , , n 1 . Meanwhile, d i = z n 1 x i p . In conclusion, the rows of W n , p = V n , p 1 can be computed recursively using (34) and (35). This is always a good habit in computation.
  • For i = 1 , 2 , , n , d i = x i p f i ( x i ) can also be computed using the recurrence
    y 0 = 1 , y = x i y 1 + N i ( n ) ,
    for = 1 , 2 , , n 1 . Hence, d i = y n 1 x i p .
By means of the above discussion and results, we are now able to present a systematic computational algorithm for inverting the Vandermonde matrix V n , p .
Algorithm 1 A recursive algorithm for inverting V n , p
Consider the Vandermonde matrix V n , p with n distinct nodes x 1 , x 2 , , x n (real or complex). Let W n , p = V n , p 1 = C 1 C 2 C n , where C j is the j-th column in W n , p = V n , p 1 . To compute the inverse W n , p = V n , p 1 , we may proceed as follows:
INPUT: The nodes x 1 , x 2 , , x n of V n , p .
OUTPUT: The inverse W n , p = V n , p 1 .
Step 1: 
Compute a i , i = 0 , 1 , , n and d i , i = 1 , 2 , , n using (25) and (27), respectively. Arrange the values of a 1 , a 2 , , a n and the nodes x 1 , x 2 , , x n as follows
Axioms 12 00027 i001
Step 2: 
Compute the numerators N i j in columns C n 1 , C n 2 , , C 1 in the same order using (34). Then, compute the components of the remainder vector, r , and make sure that
r = x 1 N 11 + a n , x 2 N 21 + a n , , x n N n 1 + a n
is actually the zero vector. Eventually, simplify the values of all entries of W n , p = V n , p 1 in its simplest forms.
This algorithm can be used directly for obtaining any particular row of the inverse W n , p = V n , p 1 . The algorithm will be referred to as “ VMIEA ” for a MAPLE procedure for inverting the Vandermonde matrix, see Appendix A. Regarding the complexity of the proposed technique, we can observe that to accomplish each step in Algorithm 1, we need two nested loops which means that the computational cost is O ( n 2 ) .

5. Illustrative Examples and Simulation Study

Now, we give some illustrative examples to clarify the technique discussed in the current paper, the VMIEA algorithm. One important special case of a Vandermonde matrix V n , 0 is the so-called discrete Fourier transform (for short, DFT) matrix, F n = F n ( ω ) . The nodes of F n ( ω ) are the n-th roots of unity, i.e., 1 , ω , ω 2 , , ω n 1 , where ω = exp 2 π i n and i = 1 . It is given by
F n ( ω ) = ω ( j 1 ) ( 1 ) j , = 1 n .
The inverse of F n ( ω ) is given by the following result.
Corollary 3.
Let F n ( ω ) be the DFT matrix defined by (37). Then, we have F n 1 ( ω ) = 1 n F n 1 ω = [ α j ] j , = 1 n , where
α j = 1 n ω ( j 1 ) ( 1 ) .
Proof. 
The nodes of F n are 1 , ω , ω 2 , , ω n 1 . Hence, f ( x ) = x n 1 . From (23), we deduce that a 0 = 1 , a n = 1 and a j = 0 for all j = 1 , 2 , , n 1 . Using (29), then we have N j = ω ( j 1 ) ( n ) and d j = n ω ( j 1 ) ( n 1 ) . The required result follows on simplification.    □
Now, we will invoke the following numerical examples.
Example 1.
Use the VMIEA algorithm to find the inverse of the following matrix
V 3 , 1 2 ( 1 , 2 , 3 ) = 1 2 1 / 2 3 1 / 2 1 2 3 / 2 3 3 / 2 1 2 5 / 2 3 5 / 2 .
Apply the VMIEA algorithm as follows:
Step 1
Using (25), we obtain a 0 = 1 , a 1 = 6 , a 2 = 11 and a 3 = 6 . Following (27), we have d 1 = 2 , d 2 = 2 and d 3 = 2 3 . Arrange a 1 , a 2 , a 3 and the nodes x 1 , x 2 , x 3 as follows
Axioms 12 00027 i002
Step 2
Furthermore, we can use the recurrence relation (34) to compute the numerators N i j in columns C 2 , C 1 in the same order. Thus, the inverse is given by
Axioms 12 00027 i003
Hence, simplifying the entries for the previous matrix, we obtain the inverse of the Vandermonde matrix V 3 , 1 2 ( 1 , 2 , 3 ) .
In the next example we compute the inverse of a generalized Vandermonde matrix of dimension n = 5 .
Example 2.
Use the VMIEA algorithm to find the inverse of the following matrix:
V 5 , 1 3 ( 1 , 2 , 1 , 2 , 3 ) = 1 2 3 1 2 3 3 3 1 2 2 3 1 2 2 3 2 3 3 1 4 2 3 1 4 2 3 9 3 3 1 8 2 3 1 8 2 3 27 3 3 1 16 2 3 1 16 2 3 81 3 3 .
Apply the VMIEA algorithm as follows:
Step 1 
Applying (25), we get a 0 = 1 , a 1 = 3 , a 2 = 5 , a 3 = 15 , a 4 = 4 and a 5 = 12 . By using (27), w obtain d 1 = 24 , d 2 = 60 2 3 , d 3 = 12 , d 4 = 12 2 3 and d 5 = 40 3 3 . Arrange a 1 , a 2 , , a 5 and the nodes x 1 , x 2 , , x 5 as follows
Axioms 12 00027 i004
Step 2 
Using (34) to compute the numerators N i j in columns C 4 , C 3 , C 2 , C 1 in the same order. Thus, the inverse is given by
Axioms 12 00027 i005
Furthermore, we can compute N i j via Horner’s scheme Remark 1. Hence, simplifying the entries for the previous matrix, we obtain the inverse of the Vandermonde matrix V 5 , 1 3 ( 1 , 2 , 1 , 2 , 3 ) .
The following example shows the power of Corollary 1 to reduce the effort of the calculations.
Example 3.
Use the VMIEA algorithm to find the inverse of the following matrix
V 6 , 0 ( 3 , 2 , 1 , 1 , 2 , 3 ) = 1 1 1 1 1 1 3 2 1 1 2 3 9 4 1 1 4 9 27 8 1 1 8 27 81 16 1 1 16 81 243 32 1 1 32 243 .
We have x 1 = 3 , x 2 = 2 , x 3 = 1 , x 4 = 1 , x 5 = 2 and x 6 = 3 . We apply the VMIEA algorithm as follows:
Step 1 
Following Corollary 1, we obtain a 1 = a 3 = a 5 = 0 and
a j = ( 1 ) 3 j 2 e j 2 3 ( 9 , 4 , 1 ) , j = 0 , 2 , 4 , 6 ,
furthermore, a 0 = 1 , a 2 = 14 , a 4 = 49 and a 6 = 36 . Moreover, we have for i = 1 , 2 , 3 , 4 , 5 , 6
d i = 2 a 4 ( x i ) + 4 a 2 ( x i ) 3 + 6 a 0 ( x i ) 5 ,
so, d 1 = 240 , d 2 = 60 , d 3 = 48 , d 4 = 48 , d 5 = 60 and d 6 = 240 . Arrange a 1 , a 2 , , a 6 and the nodes x 1 , x 2 , , x 6 as follows
Axioms 12 00027 i006
Step 2 
Using (34) to compute the numerators N i j in columns C 5 , C 4 , C 3 , C 2 , C 1 in the same order. Thus, the inverse is given by
Axioms 12 00027 i007
Furthermore, we can compute N i j via Horner’s scheme Remark 1. Hence, simplifying the entries for the previous matrix, we obtain the inverse of the Vandermonde matrix V 6 , 0 ( 3 , 2 , 1 , 1 , 2 , 3 ) .
Now, we provide a simulation to make a comparison between the time spent to compute the inverse of the Vandermonde matrix through the inverse function in Maple and the VMIEA algorithm. The mathematical software used is Maple 2020, and the specifications of the device used in the simulation are MacBook Pro with 2.6 GHz Intel Core i5, and 8 GB 1600 MHz DDR3 RAM.
We divided the simulation for computing the inverse for both symbolic and numerical Vandemonde matrix with different orders. For the symbolic Vandermonde matrix V n , 0 ( x 1 , x 2 , , x n ) , where n denotes the matrix dimension, we did the simulations only for orders n = 2 , , 10 . Whereas, for the numerical Vandermonde matrix V n , 0 ( x 1 , x 2 , , x n ) and V n , 0.25 ( x 1 , x 2 , , x n ) , we did the simulation for orders n = 2 , , 20 . For each n, we repeated the simulation 50 times, and then we found the average running time. Furthermore, we have checked the proposed VMIEA algorithm for the higher order of numerical Vandermonde matrix, for instance, n = 100 , 200 , 300 , 400 . We observed that the VMIEA algorithm is faster than the Maple inverse function. Figure 1 clarifies that the running time for computing the inverse of symbolic Vandermonde matrix by Maple inversion function for matrices is much more than that by VMIEA algorithm. Furthermore, Figure 2 and Figure 3 show the efficiency of the VMIEA algorithm for computing the inverse of the numerical Vandermonde matrix, where the proposed algorithm is faster than the Maple inverse function.

6. General Conclusions

In this paper, we have presented a novel recursive algorithm for computing the inverse of the generalized Vandermonde matrix V n , p . The proposed method is simple for hand calculation and computer programming as well. From the provided comparison, it is clear that with the increase in matrix dimension, the difference in running time between Maple inversion function and VMIEA algorithm is increasing as well. In summary, we can observe that the proposed method for computing the inverse of the Vandermonde matrix is more efficient than Maple’s inverse function for both types, symbolic and numerical Vandermonde matrix.

Author Contributions

All authors A.A. and M.E.-M. contributed equally to this work. All authors have read and agreed to the published version of the manuscript.

Funding

This research received no external funding.

Data Availability Statement

Not applicable.

Acknowledgments

The authors wish to thank anonymous referees for useful comments that enhanced the quality of this paper.

Conflicts of Interest

The authors declare no conflict of interest.

Appendix A. A Computational Recursive Maple Procedure to Compute the Inverse of the Vandermonde Matrix

The procedure is based on Theorem 3,
W n , p = V n , p 1 ( x 1 , x 2 , , x n ) = [ w i j ] i , j = 1 n = N i j d i i , j = 1 n .
In this procedure, { a j } j = 1 n , { N i j } i , j = 1 n and { d i } i = 1 n are computed recursively using (25), (34) and (35), respectively.
  • > vand_inv := proc(x::vector, p::numeric )
  • # written by Prof. Dr. Moawwad El-Mikkawy
  • # The inverse matrix is W.
  • local i,j,k,fixi;
  • global n,a,d,r,N,W;
  • with(linalg,vectdim): n:= vectdim(x):
  • a:= array(0..n): d:= vector(n): r:= vector(n):
  • N:= array(1..n,1..n): W:= array(1..n,1..n):
  • # STEP 1:
  • # To compute a[i] , i=0,1,2,...,n.
  • a[0]:=1:
  • for i to n do
  •    a[i] := x[i]* a[i-1]:
  •    for j from i-1 by -1 to 1 do
  •       a[j] :=rationalize( evalc(a[j] + x[i]* a[j-1])):
  •    od:
  • od:
  • i:= ’i’: j:=’j’:
  • for i to n do
  •    a[i]:=evalc((-1)^i*a[i]):
  • od:
  • # STEP 2:
  • # To compute d[i], N[i,j],i,i=1,2,...,n and column n of W .
  • i:=i: j:= j:
  • for i to n do
  •    fixi:= n: N[i,n]:= 1:
  •    for j from n-1 by -1 to 1 do
  •       fixi := rationalize(evalc(fixi* x[i] + j * a[n-j])):
  •       N[i,j] := rationalize(evalc(N[i,j+1] * x[i] + a[n-j]))
  •    od:
  •    r[i]:= rationalize(evalc(x[i] * N[i,1]+ a[n])):
  •    d[i] := fixi*x[i]^p : W[i,n]:= rationalize(1/d[i]):
  •    # To compute the first (n-1) columns of W recursively.
  •    for k from n-1 by -1 to 1 do
  •       W[i,k] := rationalize( evalc(( x[i] * N[i,k+1] + a[n-k])/d[i]))
  •    od:
  • od:
  • evalm(W)
  • endproc:

References

  1. Dormand, J.; El-Mikkawy, M.; Prince, P. Families of Runge-Kutta-Nystrom formulae. IMA J. Numer. Anal. 1987, 7, 235–250. [Google Scholar] [CrossRef]
  2. Dormand, J.; El-Mikkawy, M.; Prince, P. High-order embedded Runge-Kutta-Nystrom formulae. IMA J. Numer. Anal. 1987, 7, 423–430. [Google Scholar] [CrossRef]
  3. El-Mikkawy, M.; Rahmo, E.D. A new optimized non-FSAL embedded Runge–Kutta–Nystrom algorithm of orders 6 and 4 in six stages. Appl. Math. Comput. 2003, 145, 33–43. [Google Scholar] [CrossRef]
  4. Kalman, D. The generalized Vandermonde matrix. Math. Mag. 1984, 57, 15–21. [Google Scholar] [CrossRef]
  5. Vein, R.; Dale, P. Determinants and Their Applications in Mathematical Physics; Springer Science & Business Media: New York, NY, USA, 2006; Volume 134. [Google Scholar]
  6. Tou, J. Determination of the inverse Vandermonde matrix. IEEE Trans. Autom. Control 1964, 9, 314. [Google Scholar] [CrossRef]
  7. Neagoe, V.E. Inversion of the Van der Monde matrix. IEEE Signal Process. Lett. 1996, 3, 119–120. [Google Scholar] [CrossRef]
  8. Börck, A.; Pereyra, V. Solution of Vandermonde systems of linear equations. Math. Comput. 1970, 24, 893–903. [Google Scholar] [CrossRef] [Green Version]
  9. Gautschi, W. On inverses of Vandermonde and confluent Vandermonde matrices III. Numer. Math. 1978, 29, 445–450. [Google Scholar] [CrossRef]
  10. Eisinberg, A.; Picardi, C. On the inversion of Vandermonde matrix. IFAC Proc. Vol. 1981, 14, 507–511. [Google Scholar] [CrossRef]
  11. Oruç, H.; Phillips, G.M. Explicit factorization of the Vandermonde matrix. Linear Algebra Its Appl. 2000, 315, 113–123. [Google Scholar] [CrossRef]
  12. Eisinberg, A.; Fedele, G. On the inversion of the Vandermonde matrix. Appl. Math. Comput. 2006, 174, 1384–1397. [Google Scholar] [CrossRef]
  13. Oruç, H. LU factorization of the Vandermonde matrix and its applications. Appl. Math. Lett. 2007, 20, 982–987. [Google Scholar] [CrossRef] [Green Version]
  14. Moya-Cessa, H.; Soto-Eguibar, F. Inverse of the Vandermonde and Vandermonde confluent matrices. arXiv 2012, arXiv:1211.1566. [Google Scholar]
  15. Zhou, Q.; Zhang, X.; Liu, X. A new derivation and recursive algorithm based on Wronskian matrix for Vandermonde inverse matrix. Math. Probl. Eng. 2015, 2015, 924757. [Google Scholar] [CrossRef] [Green Version]
  16. Ghassabeh, Y.A. A recursive algorithm for computing the inverse of the Vandermonde matrix. Cogent Eng. 2016, 3, 1175061. [Google Scholar] [CrossRef]
  17. Man, Y.K. On computing the inverse of Vandermonde matrix. Adv. Theor. Appl. Math. 2018, 13, 15–21. [Google Scholar]
  18. Lita da Silva, J. On One Type of Generalized Vandermonde Determinants. Am. Math. Mon. 2018, 125, 433–442. [Google Scholar] [CrossRef]
  19. Hosseini, M.S.; Chen, A.; Plataniotis, K.N. On the Closed Form Expression of Elementary Symmetric Polynomials and the Inverse of Vandermonde Matrix. arXiv 2019, arXiv:1909.08155. [Google Scholar]
  20. Rawashdeh, E.A. A simple method for finding the inverse matrix of Vandermonde matrix. Mat. Vesn. 2019, 71, 207–213. [Google Scholar]
  21. El-Mikkawy, M. Explicit inverse of a generalized Vandermonde matrix. Appl. Math. Comput. 2003, 146, 643–651. [Google Scholar] [CrossRef]
  22. Oruç, H.; Akmaz, H.K. Symmetric functions and the Vandermonde matrix. J. Comput. Appl. Math. 2004, 172, 49–64. [Google Scholar] [CrossRef] [Green Version]
  23. El-Mikkawy, M.; Atlan, F. Remarks on two symmetric polynomials and some matrices. Appl. Math. Comput. 2013, 219, 8770–8778. [Google Scholar] [CrossRef]
  24. Respondek, J.S. Recursive Matrix Calculation Paradigm by the Example of Structured Matrix. Information 2020, 11, 42. [Google Scholar] [CrossRef] [Green Version]
  25. Knutson, D. λ-Rings and the Representation Theory of the Symmetric Group; Springer: New York, NY, USA, 1973. [Google Scholar]
  26. Stanley, R.P. Enumerative Combinatorics; Cambridge Studies in Advanced Mathematics; Springer: New York, NY, USA, 1999; Volume 2. [Google Scholar]
  27. Bergeron, F. Algebraic Combinatorics and Coinvariant Spaces; AK Peters/CRC Press: Boca Raton, FL, USA, 2009. [Google Scholar]
  28. Macdonald, I.G. Symmetric Functions and Hall Polynomials; Oxford University Press: Oxford, UK, 1998. [Google Scholar]
  29. El-Mikkawy, M.; Sogabe, T. Notes on particular symmetric polynomials with applications. Appl. Math. Comput. 2010, 215, 3311–3317. [Google Scholar] [CrossRef]
  30. Xu, J.; Zhao, L. An application of the Vandermonde determinant. Int. J. Math. Educ. Sci. Technol. 2006, 37, 229–231. [Google Scholar] [CrossRef]
  31. Alatawi, M.S. On the Elementary Symmetric Polynomials and the Zeros of Legendre Polynomials. J. Math. 2022, 2022, 4139728. [Google Scholar] [CrossRef]
  32. Hou, S.H.; Hou, E. Triangular factors of the inverse of Vandermonde matrices. In Proceedings of the 2008 International MultiConference of Engineers and Computer Scientists (Volume II IMECS 2008), Hong Kong, China, 19–21 March 2008; pp. 2027–2029. [Google Scholar]
Figure 1. Running time for computing the inverse of symbolic Vandermonde matrix V n , 0 ( x ) via VMIEA algorithm (in red color) and Maple inversion function for matrices (in blue color).
Figure 1. Running time for computing the inverse of symbolic Vandermonde matrix V n , 0 ( x ) via VMIEA algorithm (in red color) and Maple inversion function for matrices (in blue color).
Axioms 12 00027 g001
Figure 2. Running time for computing the inverse of numerical Vandermonde matrix V n , 0 ( 1 , 2 , , n ) via VMIEA algorithm (in red color) and Maple inversion function for matrices (in blue color).
Figure 2. Running time for computing the inverse of numerical Vandermonde matrix V n , 0 ( 1 , 2 , , n ) via VMIEA algorithm (in red color) and Maple inversion function for matrices (in blue color).
Axioms 12 00027 g002
Figure 3. Running time for computing the inverse of numerical Vandermonde matrix V n , 0.25 ( 1 , 2 , , n ) via VMIEA algorithm (in red color) and Maple inversion function for matrices (in blue color).
Figure 3. Running time for computing the inverse of numerical Vandermonde matrix V n , 0.25 ( 1 , 2 , , n ) via VMIEA algorithm (in red color) and Maple inversion function for matrices (in blue color).
Axioms 12 00027 g003
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.

Share and Cite

MDPI and ACS Style

Arafat, A.; El-Mikkawy, M. A Fast Novel Recursive Algorithm for Computing the Inverse of a Generalized Vandermonde Matrix. Axioms 2023, 12, 27. https://doi.org/10.3390/axioms12010027

AMA Style

Arafat A, El-Mikkawy M. A Fast Novel Recursive Algorithm for Computing the Inverse of a Generalized Vandermonde Matrix. Axioms. 2023; 12(1):27. https://doi.org/10.3390/axioms12010027

Chicago/Turabian Style

Arafat, Ahmed, and Moawwad El-Mikkawy. 2023. "A Fast Novel Recursive Algorithm for Computing the Inverse of a Generalized Vandermonde Matrix" Axioms 12, no. 1: 27. https://doi.org/10.3390/axioms12010027

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop