login
A370983
Triangle read by rows: T(n, k) = (n + k - 1)! / (k!*(n - k)!) if k > 0 and T(n, 0) = 0^n.
2
1, 0, 1, 0, 2, 3, 0, 3, 12, 20, 0, 4, 30, 120, 210, 0, 5, 60, 420, 1680, 3024, 0, 6, 105, 1120, 7560, 30240, 55440, 0, 7, 168, 2520, 25200, 166320, 665280, 1235520, 0, 8, 252, 5040, 69300, 665280, 4324320, 17297280, 32432400
OFFSET
0,5
COMMENTS
A signed version of Catalan's triangle (version A128899) can be generated as the scaled inverse of this triangle. The scaled inverse of T is the inverse I of T post-processed by I(n, k) -> I(n, k)/I(n, n).
FORMULA
Assume n > 0 and k > 0 for the next four formulas:
T(n, k) = ((-1)^k / n) * Product_{j=0..k-1} ((j - n)*(j + n)/(j + 1)).
T(n, k) = binomial(n, k) * Pochhammer(n, k) / n.
T(n, k) = A370706(n, k) / n.
T(n, k) = A370707(n, k) / (n*k!).
EXAMPLE
Triangle starts:
[0] 1;
[1] 0, 1;
[2] 0, 2, 3;
[3] 0, 3, 12, 20;
[4] 0, 4, 30, 120, 210;
[5] 0, 5, 60, 420, 1680, 3024;
[6] 0, 6, 105, 1120, 7560, 30240, 55440;
[7] 0, 7, 168, 2520, 25200, 166320, 665280, 1235520;
MAPLE
T := (n, k) -> `if`(k = 0, k^n, (n + k - 1)! / (k!*(n - k)!)):
seq(seq(T(n, k), k = 0..n), n = 0..9);
A370983 := (n, k) -> local j; ifelse(n = 0, 1, ifelse(k = 0, 0,
(-1)^k*mul((j - n) * (j + n) / (j + 1), j = 0..k - 1) / n)):
MATHEMATICA
T[n_, k_] := If[n == 0, 1, If[k == 0, 0, (n + k - 1)! / (k! * (n - k)!)]];
Table[T[n, k], {n, 0, 8}, {k, 0, n}] // Flatten
PROG
(SageMath)
def A370983(n, k):
if k > n: return 0
if n == 0: return 1
if k == 0: return 0
return binomial(n, k) * rising_factorial(n, k) // n
for n in range(7): print([A370983(n, k) for k in range(n + 1)])
(SageMath) # Added for the sake of reference only.
# For example ScaledInv(A370983, 7) gives the first seven rows of A128899.
def ScaledInv(T, dim): # We assume T(n, n) != 0 for all n.
M = matrix(QQ, dim, T).inverse()
for n in range(dim):
c = M[n][n]
M[n] = [M.row(n)[k] / c for k in range(dim)]
return M
(Python)
from math import prod
def T(n, k):
if n == 0: return 1
if k == 0: return 0
return (-1)**k * prod((j - n) * (j + n) / (j + 1) for j in range(k)) / n
for n in range(7): print([T(n, k) for k in range(n + 1)])
CROSSREFS
Cf. A006963 (main diagonal), A001813 (subdiagonal), A371028 (row sums).
Sequence in context: A261719 A383583 A137663 * A257740 A161628 A244119
KEYWORD
nonn,tabl
AUTHOR
Peter Luschny, Mar 07 2024
STATUS
approved