Riordan array

From HandWiki

A (proper) Riordan array is an infinite lower triangular matrix, [math]\displaystyle{ D }[/math], constructed out of two formal power series, [math]\displaystyle{ d(t) }[/math] of order 0 and [math]\displaystyle{ h(t) }[/math] of order 1, in such a way that [math]\displaystyle{ d_{n,k} = [t^n]d(t) h(t)^k }[/math]. A Riordan array is an element of the Riordan group.[1] It was defined by mathematician Louis W. Shapiro and named after mathematician John Riordan.[1]

The study of Riordan arrays is a growing field that is both being influenced by, and continuing its contributions to, other fields such as combinatorics, group theory, matrix theory, number theory, probability, sequences and series, Lie groups and Lie algebras, orthogonal polynomials, graph theory, networks, Beal conjecture, Riemann hypothesis, unimodal sequences, combinatorial identities, elliptic curves, numerical approximation, asymptotics, and data analysis. Riordan arrays is also a powerful unifying concept, binding together important tools: generating functions, computer algebra systems, formal languages, path model, and so on.[2]

Details follow.

A formal power series [math]\displaystyle{ a(x)=a_0+a_1x+a_2x^2+ \cdots =\sum_{j\geq 0}a_j x^j \in \mathbb{C}x }[/math] is said to have order [math]\displaystyle{ r }[/math] if [math]\displaystyle{ a_0=. . .=a_{r-1} =0\neq a_r. }[/math] Write [math]\displaystyle{ \mathcal{F}_r }[/math] for the formal power series of order [math]\displaystyle{ r. }[/math] A power series [math]\displaystyle{ a(x) }[/math] of order 0 has a multiplicative inverse (i.e. [math]\displaystyle{ 1/a(x) }[/math] is a power series) if and only if it has order 0, i.e. if and only if it lies in [math]\displaystyle{ \mathcal{F}_0 }[/math]; it has a composition inverse that is there exists a power series [math]\displaystyle{ \bar a }[/math] such that [math]\displaystyle{ \bar a(a(x))=x }[/math] if and only if it has order 1, i.e. if and only if it lies in [math]\displaystyle{ \mathcal{F}_1 }[/math].

As mentioned a Riordan array is defined usually as a pair of power series [math]\displaystyle{ (a(t),b(t))\in \mathcal{F}_0 \times \mathcal{F}_1 }[/math]. The 'array' part in its name stems from the fact that one associates to [math]\displaystyle{ (a(t),b(t)) }[/math] the array of complex numbers defined by [math]\displaystyle{ d_{n,k}:=[t^n] a(t)b(t)^k, }[/math] [math]\displaystyle{ n,k\in \mathbb{N}=\mathbb{Z}_{\geq 0}. }[/math] (Here [math]\displaystyle{ [t^n] . . . }[/math] means coefficient of [math]\displaystyle{ t^n }[/math] in [math]\displaystyle{ \cdots }[/math]) . So column [math]\displaystyle{ k }[/math] of the array simply consists of the sequence of coefficients of the power series [math]\displaystyle{ a(t)b(t)^k; }[/math] in particular column 0 determines and is determined by the power series [math]\displaystyle{ a(t). }[/math] As [math]\displaystyle{ a(t) }[/math] is of order 0, it has a multiplicative inverse and it follows that from the array's column 1 we can recover [math]\displaystyle{ b(t) }[/math] as [math]\displaystyle{ b(t)=a(t)^{-1} a(t)b(t). }[/math] Since [math]\displaystyle{ b(t)=b_1 t+b_2t^2+ \cdots }[/math] has order 1, [math]\displaystyle{ b(t)^k }[/math] has order [math]\displaystyle{ k }[/math] and so has [math]\displaystyle{ a(t)b(t)^k. }[/math] It follows that the array [math]\displaystyle{ d_{n,k} }[/math] is infinite triangular exhibiting a geometric progression [math]\displaystyle{ (d_{k,k})_{k\geq 0}=(a_0 b_1^k)_{k\geq 0} }[/math] on its main diagonal. It also follows that the map associating to a pair of power series [math]\displaystyle{ (a(t),b(t))\in \mathcal{F}_0 \times \mathcal{F}_1 }[/math] its triangular array is injective.

An example for a Riordan array is given by the pair of power series [math]\displaystyle{ \left(\frac{1}{1-x}, \frac{x}{1-x}\right)=\left(\sum_{j\geq 0} x^j, \sum_{j\geq 0} x^{j+1}\right)\in \mathcal F_0\times \mathcal F_1 }[/math]. It is not difficult to show that this pair generates the infinite triangular array of binomial coefficients [math]\displaystyle{ d_{n,k}=\binom{n}{k} }[/math], also called Pascal matrix

[math]\displaystyle{ P=\left(\begin{array}{ccccccc} 1 & & & & & & \\ 1 &1 & & & & & \\ 1 &2 &1 & & & & \cdots \\ 1 &3 &3 &1 & & & \\ 1 &4 &6 &4 &1 & & \\ & & \vdots & & & & \ddots \end{array}\right) }[/math]


Proof. If [math]\displaystyle{ q(x)=\sum_{j\geq 0} q_j x^j }[/math] is a power series with associated coefficient sequence [math]\displaystyle{ (q_0,q_1,q_2, . . . ) }[/math], then, by Cauchy multiplication of power series, [math]\displaystyle{ q(x)\frac{x}{1-x}=\sum_{j\geq 0} (0+q_0+q_1+ \cdots+q_{j-1})x^j. }[/math] So the latter series has the coefficient sequence [math]\displaystyle{ (0,q_0,q_0+q_1,q_0+q_1+q_2,. . . .) }[/math], and hence [math]\displaystyle{ [t^n] q(x)\frac{x}{1-x}= q_0+\cdots+q_{n-1} }[/math]. Fix any [math]\displaystyle{ k\in \mathbb{Z}_{\geq 0}. }[/math] If [math]\displaystyle{ q_n=\binom{n}{k} }[/math], so that [math]\displaystyle{ (q_n)_{n\geq 0} }[/math] represents column [math]\displaystyle{ k }[/math] of the Pascal array, then [math]\displaystyle{ \sum_{j= 0}^{n-1} q_j= \sum_{j= 0}^{n-1} \binom{j}{k}=\binom{n}{k+1} }[/math]. This argument allows to see by induction on [math]\displaystyle{ k }[/math] that [math]\displaystyle{ \frac{1}{1-x}\left(\frac{x}{1-x}\right)^k }[/math] has column [math]\displaystyle{ k }[/math] of the Pascal array as coefficient sequence. [math]\displaystyle{ \Box }[/math]


We are going to prove some much used facts about Riordan arrays. Note that the matrix multiplication rules applied to infinite lower triangular matrices lead to finite sums only and the product of two infinite lower triangular matrices is infinite lower triangular. The next two theorems were first stated and proved by Shapiro et al.[1] who say they modified work they found in papers by Gian-Carlo Rota and the book of Roman [3]

Theorem. a. Let [math]\displaystyle{ (a(x),b(x)) }[/math] and [math]\displaystyle{ (c(x),d(x)) }[/math] be Riordan arrays, viewed as infinite lower triangular matrices. Then the product of these matrices is the array associated to the pair [math]\displaystyle{ (a(x) c(b(x)), d(b(x)) ) }[/math] of formal power series, which itself is a Riordan array.

b. This fact justifies to define a multiplication `[math]\displaystyle{ * }[/math]' of Riordan arrays viewed as pairs of power series by

[math]\displaystyle{ (a(x),b(x))*(c(x),d(x))= (a(x) c(b(x)), d(b(x)) }[/math]

Proof. Since [math]\displaystyle{ a(x), c(x) }[/math] have order 0 it is clear that [math]\displaystyle{ a(x) c(b(x)) }[/math] has order 0. Similarly [math]\displaystyle{ b(x),d(x)\in \mathcal F_1 }[/math] implies [math]\displaystyle{ d(b(x))\in \mathcal F_1. }[/math] So [math]\displaystyle{ (a(x) c(b(x)), d(b(x)) ) }[/math] is a Riordan array. Define a matrix [math]\displaystyle{ M }[/math] as the Riordan array [math]\displaystyle{ (a(x),b(x)). }[/math] By definitions its [math]\displaystyle{ j }[/math]-th column [math]\displaystyle{ M_{*,j} }[/math] is the sequence of coefficients of the power series [math]\displaystyle{ a(x)b(x)^j }[/math]. If we multiply this matrix from the right with the sequence [math]\displaystyle{ (r_0,r_1,r_2, . . . )^T }[/math] we get as a result a linear combination of columns of [math]\displaystyle{ M }[/math] which we can read as a linear combination of power series, namely [math]\displaystyle{ \sum_{\nu\geq 0} r_\nu M_{*,\nu} = \sum_{\nu\geq 0} r_\nu a(x)b(x)^\nu = a(x) \sum_{\nu\geq 0} r_\nu b(x)^\nu. }[/math] Thus, viewing sequence [math]\displaystyle{ (r_0,r_1,r_2, . . . )^T }[/math] as codified by the power series [math]\displaystyle{ r(x), }[/math] we showed [math]\displaystyle{ (a(x),b(x))*r(x) = a(x) r(b(x)). }[/math] Here the [math]\displaystyle{ * }[/math] is the symbol for indicating correspondence on the power series level with matrix multiplication. We multiplied a Riordan array [math]\displaystyle{ (a(x),b(x)) }[/math] with a single power series. Now let [math]\displaystyle{ (c(x),d(x)) }[/math] be another Riordan array viewed as a matrix. One can form the product [math]\displaystyle{ (a(x),b(x))(c(x),d(x)) }[/math]. The [math]\displaystyle{ j }[/math]-th column of this product is just [math]\displaystyle{ (a(x),b(x)) }[/math] multiplied with the [math]\displaystyle{ j }[/math]-th column of [math]\displaystyle{ (c(x),d(x)). }[/math] Since the latter corresponds to the power series [math]\displaystyle{ c(x) d(x)^j }[/math], it follows by the above that the [math]\displaystyle{ j }[/math]-th column of [math]\displaystyle{ (a(x),b(x))(c(x),d(x)) }[/math] corresponds to [math]\displaystyle{ a(x) c(b(x)) d(b(x))^j }[/math]. As this holds for all column indices [math]\displaystyle{ j }[/math] occurring in [math]\displaystyle{ (c(x),d(x)) }[/math] we have shown part a. Part b is now clear. [math]\displaystyle{ \Box }[/math]

Theorem. The family of Riordan arrays endowed with the product '[math]\displaystyle{ * }[/math]' defined above forms a group: the Riordan group.[1]

Proof. The associativity of the multiplication `[math]\displaystyle{ * }[/math]' follows from associativity of matrix multiplication. Next note [math]\displaystyle{ (1,x)*(c(x),d(x))=(1\cdot c(x), d(x))=(c(x),d(x)) }[/math]. So [math]\displaystyle{ (1,x) }[/math] is a left neutral element. Finally we claim that [math]\displaystyle{ (c(\bar d(x))^{-1}, \bar d(x)) }[/math] is the left inverse to the power series [math]\displaystyle{ (c(x),d(x)) }[/math]. For this check the computation [math]\displaystyle{ (c(\bar d(x))^{-1}, \bar d(x))* (c(x),d(x)) }[/math] [math]\displaystyle{ =( (c(\bar d(x) )^{-1} c(d(x)) , d(\bar d(x)) )= (1,x) }[/math]. As is well known, an associative structure which has a left neutral element and where each element has a left inverse is a group. [math]\displaystyle{ \Box }[/math]

Of course not all invertible infinite lower triangular arrays are Riordan arrays. Here is a useful characterization for the arrays that are Riordan. The following result is apparently due to Rogers [4]

Theorem. An infinite lower triangular array [math]\displaystyle{ D=(d_{n,k})_{n,k\geq 0} }[/math] is a Riordan array if and only if there exist a sequence traditionally called the [math]\displaystyle{ A }[/math]-sequence, [math]\displaystyle{ A=(a_0\neq 0,a_1, . . . ) }[/math] such that

[math]\displaystyle{ *_1: d_{n+1,k+1}= a_0 d_{n,k}+a_1 d_{n,k+1}+a_2 d_{n,k+2}+ \cdots = \sum_{j\geq 0} a_j d_{n,k+j} }[/math]

Proof.[5] [math]\displaystyle{ \Rightarrow: }[/math] Let [math]\displaystyle{ D }[/math] be the Riordan array stemming from [math]\displaystyle{ (d(t),h(t)). }[/math] Since [math]\displaystyle{ d(t)\in \mathcal F_0, }[/math] [math]\displaystyle{ d_{0,0}\neq 0. }[/math] Since [math]\displaystyle{ h(t) }[/math] has order 1, it follows that [math]\displaystyle{ (d(t)h(t)/t, h(t)) }[/math] is a Riordan array and by the group property there exists a Riordan array [math]\displaystyle{ (A(t),B(t)) }[/math] such that [math]\displaystyle{ (d(t),h(t))*(A(t),B(t))=(d(t)h(t)/t, h(t)). }[/math] Computing the left hand side yields [math]\displaystyle{ (d(t)A(h(t)),B(h(t)) }[/math] and so comparison yields [math]\displaystyle{ B(h(t))= h(t). }[/math] Of course [math]\displaystyle{ B(t)=t }[/math] is a solution to this equation; it is unique because [math]\displaystyle{ B }[/math] is composition invertible. So we can rewrite the equation as [math]\displaystyle{ (d(t),h(t))*(A(t), t)=(d(t)h(t)/t, h(t)). }[/math]

Now from the matrix multiplication law, the [math]\displaystyle{ n,k }[/math]-entry of the left hand side of this latter equation is

[math]\displaystyle{ \sum_{j\geq 0} d_{n,j}(A(t),t)_{j,k}=\sum\limits_{j\geq 0} d_{n,j} [t^j] A(t) t^k= \sum\limits_{j\geq 0} d_{n,j} [t^{j-k}]A(t)=\sum\limits_{j\geq 0} d_{n,j} a_{j-k}=\sum\limits_{j\geq 0} a_j d_{n,k+j}. }[/math]

At the other hand the [math]\displaystyle{ n,k }[/math]-entry of the rhs of the equation above is

[math]\displaystyle{ t^{[n]} \frac{1}{t} d(t) h(t) h(t)^k = t^{[n+1]} d(t) h(t)^{k+1} = d_{n+1,k+1}, }[/math]

so that i results. From [math]\displaystyle{ *_1 }[/math] we also get [math]\displaystyle{ d_{n+1,n+1}=a_0 d_{n,n} }[/math] for all [math]\displaystyle{ n\geq 0 }[/math] and since we know that the diagonal elements are nonzero, we have [math]\displaystyle{ a_0\neq 0. }[/math] Note that using equation [math]\displaystyle{ *_1 }[/math] one can compute all entries knowing the entries [math]\displaystyle{ (d_{n,0})_{n\geq 0}. }[/math]

[math]\displaystyle{ \Leftarrow : }[/math] Now assume we know of a triangular array the equations [math]\displaystyle{ *_1 }[/math] for some sequence [math]\displaystyle{ (a_j)_{j\geq 0}. }[/math] Let [math]\displaystyle{ A(t) }[/math] be the generating function of that sequence and define [math]\displaystyle{ h(t) }[/math] from the equation [math]\displaystyle{ tA(h(t))=h(t). }[/math] Check that it is possible to solve the resulting equations for the coefficients of [math]\displaystyle{ h; }[/math] and since [math]\displaystyle{ a_0\neq 0 }[/math] one gets that [math]\displaystyle{ h(t) }[/math] has order 1. Let [math]\displaystyle{ d(t) }[/math] be the generating function of the sequence [math]\displaystyle{ (d_{0,0},d_{1,0},d_{2,0},. . . ). }[/math] Then for the pair [math]\displaystyle{ (d(t), h(t)) }[/math] we find [math]\displaystyle{ (d(t),h(t))*(A(t),t)= (d(t)A(h(t)), h(t))= (d(t)h(t)/t, h(t)). }[/math] This is precisely the same equations we have found in the first part of the proof and going through its reasoning we find equations like in [math]\displaystyle{ *_1 }[/math]. Since [math]\displaystyle{ d(t) }[/math] (or the sequence of its coefficients) determines the other entries we find that the array we started with is the array we deduced. So the array in [math]\displaystyle{ *_1 }[/math] is a Riordan array. [math]\displaystyle{ \Box }[/math]

Clearly the [math]\displaystyle{ A }[/math]-sequence alone does not deliver all the information about a Riordan array. Besides the [math]\displaystyle{ A }[/math]-sequence it is the [math]\displaystyle{ Z }[/math]-sequence that has shown to be surprisingly useful.[6]

Theorem. Let [math]\displaystyle{ (d_{n,k})_{n,k\geq 0} }[/math] be an infinite lower triangular array whose diagonal sequence [math]\displaystyle{ (d_{n,n})_{n\geq 0} }[/math] does not contain zeros. Then there exists a unique sequence [math]\displaystyle{ Z=(z_0,z_1,z_2, . . .) }[/math] such that

[math]\displaystyle{ d_{n+1,0} =z_0 d_{n,0} + z_1 d_{n,1} + z_2 d_{n,2} + \cdots = \sum\limits_{j\geq 0} z_j d_{n,j}, \quad n=0,1,2,3, . . . }[/math]

Proof. The proof is simple: By triangularity of the array, the equation claimed is equivalent to [math]\displaystyle{ d_{n+1,0}= \sum_{j= 0}^n z_j d_{n,j}. }[/math] For [math]\displaystyle{ n=0, }[/math] this equation is [math]\displaystyle{ d_{1,0}=z_0 d_{0,0} }[/math] and, as [math]\displaystyle{ d_{0,0}\neq 0, }[/math] it allows computing [math]\displaystyle{ z_0 }[/math] uniquely. In general if [math]\displaystyle{ z_0,z_1, . . ., z_{n-1} }[/math] are known, then [math]\displaystyle{ d_{n+1,0}-\sum_{j=0}^{n-1} z_j d_{n,j} =z_n d_{n,n} }[/math] allows computing [math]\displaystyle{ z_n }[/math] uniquely. [math]\displaystyle{ \Box }[/math]

Very recently there appeared the book[7] which should be a valuable source for further information.

References

  1. 1.0 1.1 1.2 1.3 Shapiro, Louis W.; Getu, Seyoum; Woan, Wen-Jin; Woodson, Leon C. (November 1991). "The Riordan group". Discrete Applied Mathematics 34 (1?3): 229?239. doi:10.1016/0166-218X(91)90088-E. 
  2. "6th International Conference on Riordan Arrays and Related Topics" (in en-US). http://www.tsimf.cn/meeting/show?id=169. 
  3. Roman, S. (1984). The Umbral Calculus. New York: Academic Press. 
  4. Rogers, D. G. (1978). "Pascal triangles, Catalan numbers, and renewal arrays". Discrete Math. 22: 301–310. 
  5. He, T.X.; Sprugnoli, R. (2009). "Sequence characterization of Riordan Arrays". Discrete Mathematics 309: 3962–3974. 
  6. Merlini, D.; Rogers, D.G.; Sprugnoli, R.; Verri, M.C., M.C. (1997). "On Some Alternative Characterizations of Riordan Arrays". Can. J. Math. 49 (2): 301–320. 
  7. Shapiro, L.; Sprugnoli, R; Barry, P.; Cheon, G.S.; He, T.X.; Merlini, D.; Wang, W. (2022). The Riordan Group and Applications. Springer. ISBN 978-3-030-94150-5.