login
Triangle of triangular numbers, read by rows, constructed like this: Given a sequence t, start row 0 with t(0). Compute row n for n > 0 by reversing row n-1 and prepending t(n). The sequence t is here chosen as the triangular numbers.
0

%I #20 May 30 2020 05:06:23

%S 0,1,0,3,0,1,6,1,0,3,10,3,0,1,6,15,6,1,0,3,10,21,10,3,0,1,6,15,28,15,

%T 6,1,0,3,10,21,36,21,10,3,0,1,6,15,28,45,28,15,6,1,0,3,10,21,36,55,36,

%U 21,10,3,0,1,6,15,28,45,66,45,28,15,6,1,0,3,10,21,36,55

%N Triangle of triangular numbers, read by rows, constructed like this: Given a sequence t, start row 0 with t(0). Compute row n for n > 0 by reversing row n-1 and prepending t(n). The sequence t is here chosen as the triangular numbers.

%F T(n, k) = Pochhammer(2*k - 1 - n, 2) / 2!.

%F Row n is generated by the quadratic polynomial 2*x^2 - (2*n+5)*x + t(n+2), where t(n) are the triangular numbers, evaluated at x = k + 1.

%F T(n, k) = (2*k-1-n)*(2*k-n)/2. - _Michel Marcus_, May 29 2020

%e Triangle starts:

%e 0;

%e 1, 0;

%e 3, 0, 1;

%e 6, 1, 0, 3;

%e 10, 3, 0, 1, 6;

%e 15, 6, 1, 0, 3, 10;

%e 21, 10, 3, 0, 1, 6, 15;

%e 28, 15, 6, 1, 0, 3, 10, 21;

%e 36, 21, 10, 3, 0, 1, 6, 15, 28;

%e 45, 28, 15, 6, 1, 0, 3, 10, 21, 36;

%e 55, 36, 21, 10, 3, 0, 1, 6, 15, 28, 45;

%e 66, 45, 28, 15, 6, 1, 0, 3, 10, 21, 36, 55;

%e 78, 55, 36, 21, 10, 3, 0, 1, 6, 15, 28, 45, 66;

%p T := (n,k) -> pochhammer(2*k - 1 - n, 2)/2:

%p seq(seq(T(n,k), k=0..n), n=0..11);

%o (Python)

%o def T(num_rows):

%o t, s = 1, 1

%o L, R = [0], [0]

%o for n in range(1, num_rows):

%o R.reverse()

%o R.insert(0, t)

%o L.extend(R)

%o t, s = t+s+1, s+1

%o return L

%o print(T(12))

%o (PARI) T(n, k) = (2*k-1-n)*(2*k-n)/2;

%o tabl(nn) = for (n=0, nn, for (k=0, n, print1(T(n,k), ", ")); print); \\ _Michel Marcus_, May 29 2020

%Y Row sums give the triangular pyramidal numbers A000292.

%Y Cf. A000217 (triangular numbers), A112367, A181940.

%K nonn,tabl

%O 0,4

%A _Peter Luschny_, May 29 2020