login
Triangle T(n, k) = c(n, q)/c(k, q) if k <= floor(n/2), otherwise c(n, q)/c(n-k, q), where c(n, q) = Product_{j=1..n} (1 - q^j) and q = 2, read by rows.
4

%I #12 Dec 05 2022 04:44:10

%S 1,1,1,1,-3,1,1,-7,-7,1,1,-15,105,-15,1,1,-31,465,465,-31,1,1,-63,

%T 1953,-29295,1953,-63,1,1,-127,8001,-248031,-248031,8001,-127,1,1,

%U -255,32385,-2040255,63247905,-2040255,32385,-255,1,1,-511,130305,-16548735,1042570305,1042570305,-16548735,130305,-511,1

%N Triangle T(n, k) = c(n, q)/c(k, q) if k <= floor(n/2), otherwise c(n, q)/c(n-k, q), where c(n, q) = Product_{j=1..n} (1 - q^j) and q = 2, read by rows.

%H G. C. Greubel, <a href="/A174387/b174387.txt">Rows n = 0..50 of the triangle, flattened</a>

%F T(n, k) = c(n, q)/c(k, q) if k <= floor(n/2), otherwise c(n, q)/c(n-k, q), where c(n, q) = Product_{j=1..n} (1 - q^j) and q = 2.

%F T(n, n-k) = T(n, k).

%e Triangle begins as:

%e 1;

%e 1, 1;

%e 1, -3, 1;

%e 1, -7, -7, 1;

%e 1, -15, 105, -15, 1;

%e 1, -31, 465, 465, -31, 1;

%e 1, -63, 1953, -29295, 1953, -63, 1;

%e 1, -127, 8001, -248031, -248031, 8001, -127, 1;

%e 1, -255, 32385, -2040255, 63247905, -2040255, 32385, -255, 1;

%e 1, -511, 130305, -16548735, 1042570305, 1042570305, -16548735, 130305, -511, 1;

%t c[n_, q_]= Product[1-q^i, {i,n}];

%t T[n_, k_, q_]= If[Floor[n/2]>=k, c[n,q]/c[n-k,q], c[n,q]/c[k,q]];

%t Table[T[n,k,2], {n,0,12}, {k,0,n}]//Flatten

%t (* Second program *)

%t T[n_, k_, q_]= With[{QP=QPochhammer}, If[k<=Floor[n/2], QP[q,q,n]/QP[q,q, n-k], QP[q,q,n]/QP[q,q,k]]];

%t Table[T[n, k, 2], {n,0,15}, {k,0,n}]//Flatten (* _G. C. Greubel_, Dec 04 2022 *)

%o (Magma)

%o QPochhammer:= func< n,a,q | n eq 0 select 1 else (&*[1-a*q^j: j in [0..n-1]]) >;

%o T:= func< n,k,q | k le Floor(n/2) select QPochhammer(n,q,q)/QPochhammer(n-k,q,q) else QPochhammer(n,q,q)/QPochhammer(k,q,q) >;

%o A174387:= func< n,k | T(n,k,2) >;

%o [A174387(n,k): k in [0..n], n in [0..15]]; // _G. C. Greubel_, Dec 04 2022

%o (SageMath)

%o from sage.combinat.q_analogues import q_pochhammer

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

%o if ((n//2)>k-1): return q_pochhammer(n,q,q)/q_pochhammer(n-k,q,q)

%o else: return q_pochhammer(n,q,q)/q_pochhammer(k,q,q)

%o def A174387(n,k): return T(n,k,2)

%o flatten([[A174387(n,k) for k in range(n+1)] for n in range(16)]) # _G. C. Greubel_, Dec 04 2022

%Y Triangles of q: A000012 (q=0), this sequence (q=2), A174388 (q=3), A174389 (q=4).

%K sign,tabl

%O 0,5

%A _Roger L. Bagula_, Mar 18 2010

%E Edited by _G. C. Greubel_, Dec 04 2022