%I #13 Mar 30 2023 09:14:38
%S 0,5,9,12,14,15,15,19,22,24,25,25,28,30,31,31,33,34,34,35,35,35,39,42,
%T 44,45,45,48,50,51,51,53,54,54,55,55,55,58,60,61,61,63,64,64,65,65,65,
%U 67,68,68,69,69,69,70,70,70,70,74,77,79,80,80,83,85,86,86,88,89,89,90
%N The Kruskal-Macaulay function K_5(n).
%C 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).
%D D. E. Knuth, The Art of Computer Programming, Vol. 4, Fascicle 3, Section 7.2.1.3, Table 3.
%p 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: A123574 := proc(n) K(n,5) ; end: for n from 0 to 80 do printf("%d, ",A123574(n)) ; od ; # _R. J. Mathar_, May 18 2007
%t lowpol[n_, t_] := Module[{x}, x = Floor[(n*t!)^(1/t)]; While[Binomial[x, t] <= n, x = x + 1]; x - 1];
%t 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];
%t K[n_, t_] := Module[{a}, a = c[n, t]; Sum[Binomial[a[[i]], t - i], {i, 1, Length[a]}]];
%t A123574[n_] := K[n, 5];
%t Table[A123574[n], {n, 0, 69}] (* _Jean-François Alcover_, Mar 30 2023, after _R. J. Mathar_ *)
%Y For K_i(n), i=1, 2, 3, 4, 5 see A000012, A003057, A123572, A123573, A123574.
%K nonn,easy
%O 0,2
%A _N. J. A. Sloane_, Nov 12 2006
%E More terms from _R. J. Mathar_, May 18 2007