login
A123572
The Kruskal-Macaulay function K_3(n).
3
0, 3, 5, 6, 6, 8, 9, 9, 10, 10, 10, 12, 13, 13, 14, 14, 14, 15, 15, 15, 15, 17, 18, 18, 19, 19, 19, 20, 20, 20, 20, 21, 21, 21, 21, 21, 23, 24, 24, 25, 25, 25, 26, 26, 26, 26, 27, 27, 27, 27, 27, 28, 28, 28, 28, 28, 28, 30, 31, 31, 32, 32, 32, 33, 33, 33, 33, 34, 34, 34, 34, 34
OFFSET
0,2
COMMENTS
Write n (uniquely) as n = C(n_t,t) + C(n_{t-1},t-1) + ... + C(n_v,v) where n_t > n_{t-1} > ... > n_v >= v >= 1. Then K_t(n) = C(n_t,t-1) + C(n_{t-1},t-2) + ... + C(n_v,v-1).
REFERENCES
D. E. Knuth, The Art of Computer Programming, Vol. 4, Fascicle 3, Section 7.2.1.3, Table 3.
MAPLE
lowpol := proc(n, t) local x::integer ; x := floor( (n*factorial(t))^(1/t)) ; while binomial(x, t) <= n do x := x+1 ; od ; RETURN(x-1) ; end: C := proc(n, t) local nresid, tresid, m, a ; nresid := n ; tresid := t ; a := [] ; while nresid > 0 do m := lowpol(nresid, tresid) ; a := [op(a), m] ; nresid := nresid - binomial(m, tresid) ; tresid := tresid-1 ; od ; RETURN(a) ; end: K := proc(n, t) local a ; a := C(n, t) ; add( binomial(op(i, a), t-i), i=1..nops(a)) ; end: A123572 := proc(n) K(n, 3) ; end: for n from 0 to 80 do printf("%d, ", A123572(n)) ; od ; # R. J. Mathar, May 18 2007
MATHEMATICA
lowpol[n_, t_] := Module[{x}, x = Floor[(n*t!)^(1/t)]; While[Binomial[x, t] <= n, x = x + 1]; x - 1];
c[n_, t_] := Module[{n0 = n, t0 = t, m, a = {}}, While[n0 > 0, m = lowpol[n0, t0]; a = Append[a, m]; n0 = n0 - Binomial[m, t0]; t0 = t0 - 1]; a];
K[n_, t_] := Module[{a}, a = c[n, t]; Sum[Binomial[a[[i]], t - i], {i, 1, Length[a]}]];
A123572[n_] := K[n, 3];
Table[A123572[n], {n, 0, 80}] (* Jean-François Alcover, Mar 22 2023, after R. J. Mathar *)
CROSSREFS
For K_i(n), i=1, 2, 3, 4, 5 see A000012, A003057, A123572, A123573, A123574.
Sequence in context: A077859 A342269 A364751 * A244953 A076819 A355848
KEYWORD
nonn,easy
AUTHOR
N. J. A. Sloane, Nov 12 2006
EXTENSIONS
More terms from R. J. Mathar, May 18 2007
STATUS
approved