A106828 Triangle T(n,k) read by rows: associated Stirling numbers of first kind (n >= 0 and 0 <= k <= floor(n/2)).
1, 0, 0, 1, 0, 2, 0, 6, 3, 0, 24, 20, 0, 120, 130, 15, 0, 720, 924, 210, 0, 5040, 7308, 2380, 105, 0, 40320, 64224, 26432, 2520, 0, 362880, 623376, 303660, 44100, 945, 0, 3628800, 6636960, 3678840, 705320, 34650, 0, 39916800, 76998240, 47324376, 11098780, 866250, 10395
Offset: 0
Examples
Rows 0 though 7 are: 1; 0, 0, 1; 0, 2, 0, 6, 3; 0, 24, 20, 0, 120, 130, 15; 0, 720, 924, 210;
References
- L. Comtet, Advanced Combinatorics, Reidel, 1974, p. 256.
- J. Riordan, An Introduction to Combinatorial Analysis, Wiley, 1958, p. 75.
Links
- Reinhard Zumkeller, Rows n = 0..124 of table, flattened
- Bishal Deb and Alan D. Sokal, Higher-order Stirling cycle and subset triangles: Total positivity, continued fractions and real-rootedness, arXiv:2507.18959 [math.CO], 2025. See pp. 5, 8.
- Feng-Zhen Zhao, Some Properties of Associated Stirling Numbers, Journal of Integer Sequences, Article 08.1.7, 2008.
Programs
-
Haskell
a106828 n k = a106828_tabf !! n !! k a106828_row n = a106828_tabf !! n a106828_tabf = map (fst . fst) $ iterate f (([1], [0]), 1) where f ((us, vs), x) = ((vs, map (* x) $ zipWith (+) ([0] ++ us) (vs ++ [0])), x + 1) -- Reinhard Zumkeller, Aug 05 2013
-
Maple
A106828 := (n,k) -> add(binomial(j,n-2*k)*combinat:-eulerian2(n-k,j),j=0..n-k): seq(print(seq(A106828(n,k),k=0..iquo(n,2))),n=0..9); # Peter Luschny, Apr 20 2011 (revised Jan 13 2016) # Second program, after David Callan in A008306: A106828 := proc(n, k) option remember; if k = 0 then k^n elif k = 1 then (n-1)! elif n <= 2*k-1 then 0 else (n-1)*(procname(n-1, k) + procname(n-2, k-1)) fi end: seq((seq(A106828(n, k), k = 0..iquo(n, 2))), n=0..12); # Peter Luschny, Aug 24 2021
-
Mathematica
Eulerian2[n_, k_] := Eulerian2[n, k] = If[k == 0, 1, If[k == n, 0, Eulerian2[n - 1, k] (k + 1) + Eulerian2[n - 1, k - 1] (2 n - k - 1)]]; T[n_, k_] := Sum[Binomial[j, n - 2 k] Eulerian2[n - k, j], {j, 0, n - k}]; Table[T[n, k], {n, 0, 12}, {k, 0, n/2}] (* Jean-François Alcover, Jun 13 2019 *)
-
PARI
E2(n, m) = sum(k=0, n-m, (-1)^(n+k)*binomial(2*n+1, k)*stirling(2*n-m-k+1, n-m-k+1, 1)); \\ A008517 T(n, k) = if ((n==0) && (k==0), 1, sum(j=0, n-k, binomial(j, n-2*k)*E2(n-k, j+1))); \\ Michel Marcus, Dec 07 2021
-
Python
from math import factorial def A106828(n, k): return k**n if k == 0 else factorial(n-1) if k == 1 else 0 if n <= 2*k - 1 else (n - 1)*(A106828(n-1, k) + A106828(n-2, k-1)) for n in range(14): print([A106828(n, k) for k in range(n//2 + 1)]) # Mélika Tebni, Dec 07 2021, after second Maple script.
-
Sage
# uses[bell_transform from A264428] # Computes the full triangle 0<=k<=n. def A106828_row(n): g = lambda k: factorial(k) if k>0 else 0 s = [g(k) for k in (0..n)] return bell_transform(n, s) [A106828_row(n) for n in (0..8)] # Peter Luschny, Jan 13 2016
Formula
T(n, k) = Sum_{j=0..n-k} binomial(j, n-2*k)*E2(n-k, j), where E2 are the second-order Eulerian numbers (A008517). - Peter Luschny, Jan 13 2016
Also the Bell transform of the sequence g(k) = k! if k>0 else 0. For the definition of the Bell transform see A264428. - Peter Luschny, Jan 13 2016
Extensions
Removed extra 0 in row 1 from Michael Somos, Jan 19 2011
Comments