login
The OEIS is supported by the many generous donors to the OEIS Foundation.

 

Logo
Hints
(Greetings from The On-Line Encyclopedia of Integer Sequences!)
A321620 The Riordan square of the Riordan numbers, triangle read by rows, T(n, k) for 0 <= k <= n. 40
1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 3, 2, 1, 1, 3, 5, 5, 3, 1, 1, 6, 13, 10, 7, 4, 1, 1, 15, 29, 26, 16, 9, 5, 1, 1, 36, 73, 61, 42, 23, 11, 6, 1, 1, 91, 181, 157, 103, 61, 31, 13, 7, 1, 1, 232, 465, 398, 271, 156, 83, 40, 15, 8, 1, 1, 603, 1205, 1040, 702, 419, 221, 108, 50, 17, 9, 1, 1 (list; table; graph; refs; listen; history; text; internal format)
OFFSET
0,12
COMMENTS
If gf is a generating function of the sequence a then by the 'Riordan square of a' we understand the integer triangle given by the Riordan array (gf, gf). This mapping can be seen as an operator RS: Z[[x]] -> Mat[Z].
For instance A039599 is the Riordan square of the Catalan numbers, A172094 is the Riordan square of the little Schröder numbers and A063967 is the Riordan square of the Fibonacci numbers. The Riordan square of the simplest sequence of positive numbers (A000012) is the Pascal triangle.
The generating functions used are listed in the table below. They may differ slightly from those defined elsewhere in order to ensure that RS(a) is invertible (as a matrix). We understand this as a kind of normalization.
---------------------------------------------------------------------------
Sequence a | RS(a) | gf(a)
---------------------------------------------------------------------------
Catalan | A039599 | (1 - sqrt(1 - 4*x))/(2*x).
1, Riordan | A321620 | 1 + 2*x/(1 + x + sqrt(1 - 2*x - 3*x^2)).
Motzkin | A321621 | (1 - x - sqrt(1 - 2*x - 3*x^2))/(2*x^2).
Fine | A321622 | 1 + (1 - sqrt(1 - 4*x))/(3 - sqrt(1 - 4*x)).
large Schröder | A321623 | (1 - x - sqrt(1 - 6*x + x^2))/(2*x).
little Schröder | A172094 | (1 + x - sqrt(1 - 6*x + x^2))/(4*x).
Lucas | A321624 | 1 + x*(1 + 2*x)/(1 - x - x^2).
swinging factorial | A321625 | (1 + x/(1 - 4*x^2))/sqrt(1 - 4*x^2).
ternary trees ||A109956|| u = sqrt(x*3/4); sin(arcsin(3*u)/3)/u.
central trinomial | A116392 | 1/sqrt(1 - 2*x - 3*x^2)
Bell | A154380 | Sum_{k>=0} x^k/Product_{j=1..k}(1 - j*x).
(2*n-1)!! | A321627 | 1/(1-x/(1-2*x/(1-3*x/(1-4*x/(1-5*x/...
powers of 2 | A038208 | 1/(1 - 2*x).
the all 1's seq. | A007318 | 1/(1 - x).
Fibonacci | A063967 | 1/(1 - x - x^2).
tribonacci | A187889 | 1/(1 - x - x^2 - x^3).
tetranacci | A353593 | 1/(1 - x - x^2 - x^3 - x^4).
Jacobsthal | A322942 | (2*x^2-1)/((x + 1)*(2*x - 1))
LINKS
Peter Luschny, The Riordan Square Transform, 2018.
FORMULA
Given a generating function g and an positive integer N compute the Taylor expansion at the origin t(k) = [x^k] g(x) for k in [0...N-1] and set T(n, 0) = t(n) for n in [0...N-1]. Then compute T(m, k) = Sum_{j in [k-1...m-1]} T(j, k - 1) t(m - j) for k in [1...N-1] and for m in [k...N-1]. The resulting (0, 0)-based lower triangular array is the Riordan square generated by g.
EXAMPLE
The triangle starts:
[ 0] 1
[ 1] 1 1
[ 2] 0 1 1
[ 3] 1 1 1 1
[ 4] 1 3 2 1 1
[ 5] 3 5 5 3 1 1
[ 6] 6 13 10 7 4 1 1
[ 7] 15 29 26 16 9 5 1 1
[ 8] 36 73 61 42 23 11 6 1 1
[ 9] 91 181 157 103 61 31 13 7 1 1
[10] 232 465 398 271 156 83 40 15 8 1 1
MAPLE
RiordanSquare := proc(d, n, exp:=false) local td, M, k, m, u, j;
series(d, x, n+1); td := [seq(coeff(%, x, j), j = 0..n)];
M := Matrix(n); for k from 1 to n do M[k, 1] := td[k] od;
for k from 1 to n-1 do for m from k to n-1 do
M[m+1, k+1] := add(M[j, k]*td[m-j+2], j = k..m) od od;
if exp then u := 1;
for k from 1 to n-1 do u := u * k;
for m from 1 to k do j := `if`(m = 1, u, j/(m-1));
M[k+1, m] := M[k+1, m] * j od od fi;
M end:
RiordanSquare(1 + 2*x/(1 + x + sqrt(1 - 2*x - 3*x^2)), 8);
MATHEMATICA
RiordanSquare[gf_, len_] := Module[{T}, T[n_, k_] := T[n, k] = If[k == 0, SeriesCoefficient[gf, {x, 0, n}], Sum[T[j, k-1] T[n-j, 0], {j, k-1, n-1}]]; Table[T[n, k], {n, 0, len-1}, {k, 0, n}]];
M = RiordanSquare[1 + 2x/(1 + x + Sqrt[1 - 2x - 3x^2]), 12];
M // Flatten (* Jean-François Alcover, Nov 24 2018 *)
PROG
(Sage) # uses[riordan_array from A256893]
def riordan_square(gf, len, exp=false):
return riordan_array(gf, gf, len, exp)
riordan_square(1 + 2*x/(1 + x + sqrt(1 - 2*x - 3*x^2)), 10)
# Alternatively, given a list S:
def riordan_square_array(S):
N = len(S)
M = matrix(ZZ, N, N)
for n in (0..N-1): M[n, 0] = S[n]
for k in (1..N-1):
for m in (k..N-1):
M[m, k] = sum(M[j, k-1]*S[m-j] for j in (k-1..m-1))
return M
riordan_square_array([1, 1, 0, 1, 1, 3, 6, 15, 36]) # Peter Luschny, Apr 03 2020
CROSSREFS
Row sums are A007971 and |A167022| shifted one place left.
Sequence in context: A304972 A152176 A152175 * A353157 A134520 A188316
KEYWORD
nonn,tabl
AUTHOR
Peter Luschny, Nov 15 2018
STATUS
approved

Lookup | Welcome | Wiki | Register | Music | Plot 2 | Demos | Index | Browse | More | WebCam
Contribute new seq. or comment | Format | Style Sheet | Transforms | Superseeker | Recents
The OEIS Community | Maintained by The OEIS Foundation Inc.

License Agreements, Terms of Use, Privacy Policy. .

Last modified March 28 18:04 EDT 2024. Contains 371254 sequences. (Running on oeis4.)