- Source: Riordan array
A Riordan array is an infinite lower triangular matrix,
D
{\displaystyle D}
, constructed from two formal power series,
d
(
t
)
{\displaystyle d(t)}
of order 0 and
h
(
t
)
{\displaystyle h(t)}
of order 1, such that
d
n
,
k
=
[
t
n
]
d
(
t
)
h
(
t
)
k
{\displaystyle d_{n,k}=[t^{n}]d(t)h(t)^{k}}
.
A Riordan array is an element of the Riordan group. It was defined by mathematician Louis W. Shapiro and named after John Riordan.
The study of Riordan arrays is a field influenced by and contributing to other areas such as combinatorics, group theory, matrix theory, number theory, probability, sequences and series, Lie groups and Lie algebras, orthogonal polynomials, graph theory, networks, unimodal sequences, combinatorial identities, elliptic curves, numerical approximation, asymptotic analysis, and data analysis. Riordan arrays also unify tools such as generating functions, computer algebra systems, formal languages, and path models. Books on the subject, such as The Riordan Array (Shapiro et al., 1991), have been published.
Formal definition
A formal power series
a
(
x
)
=
a
0
+
a
1
x
+
a
2
x
2
+
⋯
=
∑
j
≥
0
a
j
x
j
∈
C
[
[
x
]
]
{\displaystyle a(x)=a_{0}+a_{1}x+a_{2}x^{2}+\cdots =\sum _{j\geq 0}a_{j}x^{j}\in \mathbb {C} [[x]]}
(where
C
[
[
x
]
]
{\displaystyle \mathbb {C} [[x]]}
is the ring of formal power series with complex coefficients) is said to have order
r
{\displaystyle r}
if
a
0
=
⋯
=
a
r
−
1
=
0
≠
a
r
{\displaystyle a_{0}=\cdots =a_{r-1}=0\neq a_{r}}
. Write
F
r
{\displaystyle {\mathcal {F}}_{r}}
for the set of formal power series of order
r
{\displaystyle r}
. A power series
a
(
x
)
{\displaystyle a(x)}
has a multiplicative inverse (i.e.
1
/
a
(
x
)
{\displaystyle 1/a(x)}
is a power series) if and only if it has order 0, i.e. if and only if it lies in
F
0
{\displaystyle {\mathcal {F}}_{0}}
; it has a composition inverse that is there exists a power series
a
¯
{\displaystyle {\bar {a}}}
such that
a
¯
(
a
(
x
)
)
=
x
{\displaystyle {\bar {a}}(a(x))=x}
if and only if it has order 1, i.e. if and only if it lies in
F
1
{\displaystyle {\mathcal {F}}_{1}}
.
As mentioned previously, a Riordan array is usually defined via a pair of power series
(
d
(
t
)
,
h
(
t
)
)
∈
F
0
×
F
1
{\displaystyle (d(t),h(t))\in {\mathcal {F}}_{0}\times {\mathcal {F}}_{1}}
. The "array" part in its name stems from the fact that one associates to
(
d
(
t
)
,
h
(
t
)
)
{\displaystyle (d(t),h(t))}
the array of complex numbers defined by
d
n
,
k
:=
[
t
n
]
d
(
t
)
h
(
t
)
k
,
{\displaystyle d_{n,k}:=[t^{n}]d(t)h(t)^{k},}
n
,
k
∈
N
{\displaystyle n,k\in \mathbb {N} }
(here "
[
t
n
]
⋯
{\displaystyle [t^{n}]\cdots }
" means "coefficient of
t
n
{\displaystyle t^{n}}
in
⋯
{\displaystyle \cdots }
"). Thus column
k
{\displaystyle k}
of the array consists of the sequence of coefficients of the power series
d
(
t
)
h
(
t
)
k
;
{\displaystyle d(t)h(t)^{k};}
in particular, column 0 determines and is determined by the power series
d
(
t
)
.
{\displaystyle d(t).}
Because
d
(
t
)
{\displaystyle d(t)}
is of order 0, it has a multiplicative inverse, and it follows that from the array's column 1 we can recover
h
(
t
)
{\displaystyle h(t)}
as
h
(
t
)
=
d
(
t
)
−
1
d
(
t
)
h
(
t
)
{\displaystyle h(t)=d(t)^{-1}d(t)h(t)}
. Since
h
(
t
)
{\displaystyle h(t)}
has order 1,
h
(
t
)
k
{\displaystyle h(t)^{k}}
is of order
k
{\displaystyle k}
and so is
d
(
t
)
h
(
t
)
k
.
{\displaystyle d(t)h(t)^{k}.}
It follows that the array
d
n
,
k
{\displaystyle d_{n,k}}
is lower triangular and exhibits a geometric progression
(
d
k
,
k
)
k
≥
0
=
(
d
0
h
1
k
)
k
≥
0
{\displaystyle (d_{k,k})_{k\geq 0}=(d_{0}h_{1}^{k})_{k\geq 0}}
on its main diagonal. It also follows that the map sending a pair of power series
(
d
(
t
)
,
h
(
t
)
)
∈
F
0
×
F
1
{\displaystyle (d(t),h(t))\in {\mathcal {F}}_{0}\times {\mathcal {F}}_{1}}
to its triangular array is injective.
= Example
=An example of a Riordan array is given by the pair of power series
(
1
1
−
x
,
x
1
−
x
)
=
(
∑
j
≥
0
x
j
,
∑
j
≥
0
x
j
+
1
)
∈
F
0
×
F
1
{\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}}
.
It is not difficult to show that this pair generates the infinite triangular array of binomial coefficients
d
n
,
k
=
(
n
k
)
{\displaystyle d_{n,k}={\binom {n}{k}}}
, also called the Pascal matrix:
P
=
(
1
1
1
1
2
1
⋯
1
3
3
1
1
4
6
4
1
⋮
⋱
)
{\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)}
.
Proof: If
q
(
x
)
=
∑
j
≥
0
q
j
x
j
{\displaystyle q(x)=\sum _{j\geq 0}q_{j}x^{j}}
is a power series with associated coefficient sequence
(
q
0
,
q
1
,
q
2
,
.
.
.
)
{\displaystyle (q_{0},q_{1},q_{2},...)}
, then, by Cauchy multiplication of power series,
q
(
x
)
x
1
−
x
=
∑
j
≥
0
(
0
+
q
0
+
q
1
+
⋯
+
q
j
−
1
)
x
j
.
{\displaystyle q(x){\frac {x}{1-x}}=\sum _{j\geq 0}(0+q_{0}+q_{1}+\cdots +q_{j-1})x^{j}.}
So the latter series has the coefficient sequence
(
0
,
q
0
,
q
0
+
q
1
,
q
0
+
q
1
+
q
2
,
.
.
.
.
)
{\displaystyle (0,q_{0},q_{0}+q_{1},q_{0}+q_{1}+q_{2},....)}
, and hence
[
t
n
]
q
(
x
)
x
1
−
x
=
q
0
+
⋯
+
q
n
−
1
{\displaystyle [t^{n}]q(x){\frac {x}{1-x}}=q_{0}+\cdots +q_{n-1}}
. Fix any
k
∈
Z
≥
0
.
{\displaystyle k\in \mathbb {Z} _{\geq 0}.}
If
q
n
=
(
n
k
)
{\displaystyle q_{n}={\binom {n}{k}}}
, so that
(
q
n
)
n
≥
0
{\displaystyle (q_{n})_{n\geq 0}}
represents column
k
{\displaystyle k}
of the Pascal array, then
∑
j
=
0
n
−
1
q
j
=
∑
j
=
0
n
−
1
(
j
k
)
=
(
n
k
+
1
)
{\displaystyle \sum _{j=0}^{n-1}q_{j}=\sum _{j=0}^{n-1}{\binom {j}{k}}={\binom {n}{k+1}}}
. This argument allows to see by induction on
k
{\displaystyle k}
that
1
1
−
x
(
x
1
−
x
)
k
{\displaystyle {\frac {1}{1-x}}\left({\frac {x}{1-x}}\right)^{k}}
has column
k
{\displaystyle k}
of the Pascal array as coefficient sequence.
Properties
Below are some often-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. who say they modified work they found in papers by Gian-Carlo Rota and the book of Roman.
Theorem: a. Let
(
a
(
x
)
,
b
(
x
)
)
{\displaystyle (a(x),b(x))}
and
(
c
(
x
)
,
d
(
x
)
)
{\displaystyle (c(x),d(x))}
be Riordan arrays, viewed as infinite lower triangular matrices. Then the product of these matrices is the array associated to the pair
(
a
(
x
)
c
(
b
(
x
)
)
,
d
(
b
(
x
)
)
)
{\displaystyle (a(x)c(b(x)),d(b(x)))}
of formal power series, which itself is a Riordan array.
b. This fact justifies the definition of a multiplication '
∗
{\displaystyle *}
' of Riordan arrays viewed as pairs of power series by
Proof: Since
a
(
x
)
,
c
(
x
)
{\displaystyle a(x),c(x)}
have order 0 it is clear that
a
(
x
)
c
(
b
(
x
)
)
{\displaystyle a(x)c(b(x))}
has order 0. Similarly
b
(
x
)
,
d
(
x
)
∈
F
1
{\displaystyle b(x),d(x)\in {\mathcal {F}}_{1}}
implies
d
(
b
(
x
)
)
∈
F
1
.
{\displaystyle d(b(x))\in {\mathcal {F}}_{1}.}
So
(
a
(
x
)
c
(
b
(
x
)
)
,
d
(
b
(
x
)
)
)
{\displaystyle (a(x)c(b(x)),d(b(x)))}
is a Riordan array.
Define a matrix
M
{\displaystyle M}
as the Riordan array
(
a
(
x
)
,
b
(
x
)
)
.
{\displaystyle (a(x),b(x)).}
By definition, its
j
{\displaystyle j}
-th column
M
∗
,
j
{\displaystyle M_{*,j}}
is the sequence of coefficients of
the power series
a
(
x
)
b
(
x
)
j
{\displaystyle a(x)b(x)^{j}}
. If we multiply this matrix from the right with the sequence
(
r
0
,
r
1
,
r
2
,
.
.
.
)
T
{\displaystyle (r_{0},r_{1},r_{2},...)^{T}}
we get as a result a linear combination of columns of
M
{\displaystyle M}
which we can read as a linear combination of power series, namely
∑
ν
≥
0
r
ν
M
∗
,
ν
=
∑
ν
≥
0
r
ν
a
(
x
)
b
(
x
)
ν
=
a
(
x
)
∑
ν
≥
0
r
ν
b
(
x
)
ν
.
{\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 }.}
Thus, viewing sequence
(
r
0
,
r
1
,
r
2
,
.
.
.
)
T
{\displaystyle (r_{0},r_{1},r_{2},...)^{T}}
as codified by the power series
r
(
x
)
,
{\displaystyle r(x),}
we showed that
(
a
(
x
)
,
b
(
x
)
)
∗
r
(
x
)
=
a
(
x
)
r
(
b
(
x
)
)
.
{\displaystyle (a(x),b(x))*r(x)=a(x)r(b(x)).}
Here the
∗
{\displaystyle *}
is the symbol for indicating correspondence on the power series level with matrix multiplication. We multiplied a Riordan array
(
a
(
x
)
,
b
(
x
)
)
{\displaystyle (a(x),b(x))}
with a single power series. Now let
(
c
(
x
)
,
d
(
x
)
)
{\displaystyle (c(x),d(x))}
be another Riordan array viewed as a matrix. One can form the product
(
a
(
x
)
,
b
(
x
)
)
(
c
(
x
)
,
d
(
x
)
)
{\displaystyle (a(x),b(x))(c(x),d(x))}
. The
j
{\displaystyle j}
-th column of this product is just
(
a
(
x
)
,
b
(
x
)
)
{\displaystyle (a(x),b(x))}
multiplied with the
j
{\displaystyle j}
-th column of
(
c
(
x
)
,
d
(
x
)
)
.
{\displaystyle (c(x),d(x)).}
Since the latter corresponds to the power series
c
(
x
)
d
(
x
)
j
{\displaystyle c(x)d(x)^{j}}
, it follows by the above that the
j
{\displaystyle j}
-th column of
(
a
(
x
)
,
b
(
x
)
)
(
c
(
x
)
,
d
(
x
)
)
{\displaystyle (a(x),b(x))(c(x),d(x))}
corresponds to
a
(
x
)
c
(
b
(
x
)
)
d
(
b
(
x
)
)
j
{\displaystyle a(x)c(b(x))d(b(x))^{j}}
. As this holds for all column indices
j
{\displaystyle j}
occurring in
(
c
(
x
)
,
d
(
x
)
)
{\displaystyle (c(x),d(x))}
we have shown part a. Part b is now clear.
◻
{\displaystyle \Box }
Theorem: The family of Riordan arrays endowed with the product '
∗
{\displaystyle *}
' defined above forms a group: the Riordan group.
Proof: The associativity of the multiplication '
∗
{\displaystyle *}
' follows from associativity of matrix multiplication. Next note
(
1
,
x
)
∗
(
c
(
x
)
,
d
(
x
)
)
=
(
1
⋅
c
(
x
)
,
d
(
x
)
)
=
(
c
(
x
)
,
d
(
x
)
)
{\displaystyle (1,x)*(c(x),d(x))=(1\cdot c(x),d(x))=(c(x),d(x))}
. So
(
1
,
x
)
{\displaystyle (1,x)}
is a left neutral element. Finally, we claim that
(
c
(
d
¯
(
x
)
)
−
1
,
d
¯
(
x
)
)
{\displaystyle (c({\bar {d}}(x))^{-1},{\bar {d}}(x))}
is the left inverse to the power series
(
c
(
x
)
,
d
(
x
)
)
{\displaystyle (c(x),d(x))}
. For this check the computation
(
c
(
d
¯
(
x
)
)
−
1
,
d
¯
(
x
)
)
∗
(
c
(
x
)
,
d
(
x
)
)
{\displaystyle (c({\bar {d}}(x))^{-1},{\bar {d}}(x))*(c(x),d(x))}
=
(
(
c
(
d
¯
(
x
)
)
−
1
c
(
d
(
x
)
)
,
d
(
d
¯
(
x
)
)
)
=
(
1
,
x
)
{\displaystyle =((c({\bar {d}}(x))^{-1}c(d(x)),d({\bar {d}}(x)))=(1,x)}
. As is well known, an associative structure which has a left neutral element and where each element has a left inverse is a group.
◻
{\displaystyle \Box }
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.
Theorem: An infinite lower triangular array
D
=
(
d
n
,
k
)
n
,
k
≥
0
{\displaystyle D=(d_{n,k})_{n,k\geq 0}}
is a Riordan array if and only if there exist a sequence traditionally called the
A
{\displaystyle A}
-sequence,
A
=
(
a
0
≠
0
,
a
1
,
.
.
.
)
{\displaystyle A=(a_{0}\neq 0,a_{1},...)}
such that
Proof.
⇒:
{\displaystyle \Rightarrow :}
Let
D
{\displaystyle D}
be the Riordan array stemming from
(
d
(
t
)
,
h
(
t
)
)
.
{\displaystyle (d(t),h(t)).}
Since
d
(
t
)
∈
F
0
,
{\displaystyle d(t)\in {\mathcal {F}}_{0},}
d
0
,
0
≠
0.
{\displaystyle d_{0,0}\neq 0.}
Since
h
(
t
)
{\displaystyle h(t)}
has order 1, it follows that
(
d
(
t
)
h
(
t
)
/
t
,
h
(
t
)
)
{\displaystyle (d(t)h(t)/t,h(t))}
is a Riordan array and by the group property there exists a Riordan array
(
A
(
t
)
,
B
(
t
)
)
{\displaystyle (A(t),B(t))}
such that
(
d
(
t
)
,
h
(
t
)
)
∗
(
A
(
t
)
,
B
(
t
)
)
=
(
d
(
t
)
h
(
t
)
/
t
,
h
(
t
)
)
.
{\displaystyle (d(t),h(t))*(A(t),B(t))=(d(t)h(t)/t,h(t)).}
Computing the left-hand side yields
(
d
(
t
)
A
(
h
(
t
)
)
,
B
(
h
(
t
)
)
{\displaystyle (d(t)A(h(t)),B(h(t))}
and so comparison yields
B
(
h
(
t
)
)
=
h
(
t
)
.
{\displaystyle B(h(t))=h(t).}
Of course
B
(
t
)
=
t
{\displaystyle B(t)=t}
is a solution to this equation; it is unique because
B
{\displaystyle B}
is composition invertible. So, we can rewrite the equation as
(
d
(
t
)
,
h
(
t
)
)
∗
(
A
(
t
)
,
t
)
=
(
d
(
t
)
h
(
t
)
/
t
,
h
(
t
)
)
.
{\displaystyle (d(t),h(t))*(A(t),t)=(d(t)h(t)/t,h(t)).}
Now from the matrix multiplication law, the
n
,
k
{\displaystyle n,k}
-entry of the left-hand side of this latter equation is
At the other hand the
n
,
k
{\displaystyle n,k}
-entry of the right-hand side of the equation above is
so that i results. From
∗
1
{\displaystyle *_{1}}
we also get
d
n
+
1
,
n
+
1
=
a
0
d
n
,
n
{\displaystyle d_{n+1,n+1}=a_{0}d_{n,n}}
for all
n
≥
0
{\displaystyle n\geq 0}
and since we know that the diagonal elements are nonzero, we have
a
0
≠
0.
{\displaystyle a_{0}\neq 0.}
Note that using equation
∗
1
{\displaystyle *_{1}}
one can compute all entries knowing the entries
(
d
n
,
0
)
n
≥
0
.
{\displaystyle (d_{n,0})_{n\geq 0}.}
⇐:
{\displaystyle \Leftarrow :}
Now assume we know of a triangular array the equations
∗
1
{\displaystyle *_{1}}
for some sequence
(
a
j
)
j
≥
0
.
{\displaystyle (a_{j})_{j\geq 0}.}
Let
A
(
t
)
{\displaystyle A(t)}
be the generating function of that sequence and define
h
(
t
)
{\displaystyle h(t)}
from the equation
t
A
(
h
(
t
)
)
=
h
(
t
)
.
{\displaystyle tA(h(t))=h(t).}
Check that it is possible to solve the resulting equations for the coefficients of
h
;
{\displaystyle h;}
and since
a
0
≠
0
{\displaystyle a_{0}\neq 0}
one gets that
h
(
t
)
{\displaystyle h(t)}
has order 1. Let
d
(
t
)
{\displaystyle d(t)}
be the generating function of the sequence
(
d
0
,
0
,
d
1
,
0
,
d
2
,
0
,
.
.
.
)
.
{\displaystyle (d_{0,0},d_{1,0},d_{2,0},...).}
Then for the pair
(
d
(
t
)
,
h
(
t
)
)
{\displaystyle (d(t),h(t))}
we find
(
d
(
t
)
,
h
(
t
)
)
∗
(
A
(
t
)
,
t
)
=
(
d
(
t
)
A
(
h
(
t
)
)
,
h
(
t
)
)
=
(
d
(
t
)
h
(
t
)
/
t
,
h
(
t
)
)
.
{\displaystyle (d(t),h(t))*(A(t),t)=(d(t)A(h(t)),h(t))=(d(t)h(t)/t,h(t)).}
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
∗
1
{\displaystyle *_{1}}
. Since
d
(
t
)
{\displaystyle d(t)}
(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
∗
1
{\displaystyle *_{1}}
is a Riordan array.
◻
{\displaystyle \Box }
Clearly the
A
{\displaystyle A}
-sequence alone does not deliver all the information about a Riordan array. Besides the
A
{\displaystyle A}
-sequence
the
Z
{\displaystyle Z}
-sequence below has been studied and has been shown to be useful.
Theorem. Let
(
d
n
,
k
)
n
,
k
≥
0
{\displaystyle (d_{n,k})_{n,k\geq 0}}
be an infinite lower triangular array whose diagonal sequence
(
d
n
,
n
)
n
≥
0
{\displaystyle (d_{n,n})_{n\geq 0}}
does not contain zeroes.
Then there exists a unique sequence
Z
=
(
z
0
,
z
1
,
z
2
,
.
.
.
)
{\displaystyle Z=(z_{0},z_{1},z_{2},...)}
such that
Proof: By triangularity of the array, the equation claimed is equivalent to
d
n
+
1
,
0
=
∑
j
=
0
n
z
j
d
n
,
j
.
{\displaystyle d_{n+1,0}=\sum _{j=0}^{n}z_{j}d_{n,j}.}
For
n
=
0
,
{\displaystyle n=0,}
this equation is
d
1
,
0
=
z
0
d
0
,
0
{\displaystyle d_{1,0}=z_{0}d_{0,0}}
and, as
d
0
,
0
≠
0
,
{\displaystyle d_{0,0}\neq 0,}
it allows computing
z
0
{\displaystyle z_{0}}
uniquely. In general, if
z
0
,
z
1
,
.
.
.
,
z
n
−
1
{\displaystyle z_{0},z_{1},...,z_{n-1}}
are known, then
d
n
+
1
,
0
−
∑
j
=
0
n
−
1
z
j
d
n
,
j
=
z
n
d
n
,
n
{\displaystyle d_{n+1,0}-\sum _{j=0}^{n-1}z_{j}d_{n,j}=z_{n}d_{n,n}}
allows computing
z
n
{\displaystyle z_{n}}
uniquely.
◻
{\displaystyle \Box }