login
Triangle T(n, k) = Product_{j=1..k} Product_{i=0..j-1} ( 1 - (n-k+1)*(3*i-2) ) with T(n, 0) = 1 and T(n, n) = n!, read by rows.
6

%I #18 Feb 26 2021 05:49:14

%S 1,1,1,1,5,2,1,7,-25,6,1,9,-98,-875,24,1,11,-243,-15092,398125,120,1,

%T 13,-484,-98415,46483360,3441790625,720,1,15,-845,-404624,1076168025,

%U 4151893715200,-743856998828125,5040,1,17,-1350,-1263275,11501032576,458947996781625,-14092191572383232000,-4983748910023583984375,40320

%N Triangle T(n, k) = Product_{j=1..k} Product_{i=0..j-1} ( 1 - (n-k+1)*(3*i-2) ) with T(n, 0) = 1 and T(n, n) = n!, read by rows.

%C Row sums are: 1, 2, 8, -11, -939, 382922, 3488175820, -739704029345313, -4997840642636470626461, ...

%H G. C. Greubel, <a href="/A156730/b156730.txt">Rows n = 0..30 of the triangle, flattened</a>

%F Let the square array t(n, k) be given by t(n, k) = Product_{j=1..n} Product_{i=0..j-1} ( 1 - (k+1)*(3*i -2) ) with t(n, 0) = n!. The number triangle, T(n, k), is the downward antidiagonals, i.e. T(n, k) = t(k, n-k).

%F T(n, k) = (-3*(n-k+1))^binomial(k+1, 2)*Product_{j=1..k} Pochhammer( -(2*(n-k) + 3)/(3*(n-k+1)), j) with T(n, 0) = 1 and T(n, n) = n!. - _G. C. Greubel_, Feb 25 2021

%e Triangle begins as:

%e 1;

%e 1, 1;

%e 1, 5, 2;

%e 1, 7, -25, 6;

%e 1, 9, -98, -875, 24;

%e 1, 11, -243, -15092, 398125, 120;

%e 1, 13, -484, -98415, 46483360, 3441790625, 720;

%e 1, 15, -845, -404624, 1076168025, 4151893715200, -743856998828125, 5040;

%t (* First program *)

%t t[n_, k_]= If[k==0, n!, Product[1 -(3*i-2)*(k+1), {j,n}, {i,0,j-1}]];

%t Table[t[k, n-k], {n,0,10}, {k,0,n}]//Flatten (* modified by _G. C. Greubel_, Feb 25 2021 *)

%t (* Second program *)

%t T[n_, k_, p_, q_]:= If[k==0, 1, If[k==n, n!, (-p*(n-k+1))^Binomial[k+1,2]*Product[ Pochhammer[(q*(n-k+1) -1)/(p*(n-k+1)), j], {j, k}]]];

%t Table[T[n,k,3,-2], {n, 0, 10}, {k, 0, n}]//Flatten (* _G. C. Greubel_, Feb 25 2021 *)

%o (Sage)

%o @CachedFunction

%o def T(n,k,p,q):

%o if (k==0): return 1

%o elif (k==n): return factorial(n)

%o else: return (-p*(n-k+1))^binomial(k+1, 2)*product( rising_factorial( (q*(n-k+1)-1)/(p*(n-k+1)), j) for j in (1..k))

%o flatten([[T(n,k,3,-2) for k in (0..n)] for n in (0..12)]) # _G. C. Greubel_, Feb 24 2021

%o (Magma)

%o function T(n,k,p,q)

%o if k eq 0 then return 1;

%o elif k eq n then return Factorial(n);

%o else return (&*[1 - (n-k+1)*(p*m+q): m in [0..j-1], j in [1..k]]);

%o end if; return T;

%o end function;

%o [T(n,k,3,-2): k in [0..n], n in [0..12]]; // _G. C. Greubel_, Feb 25 2021

%Y Cf. A156693, A156699, A156722, A156725, A156727.

%K sign,tabl

%O 0,5

%A _Roger L. Bagula_, Feb 14 2009

%E Edited by _G. C. Greubel_, Feb 25 2021