with(GraphTheory): with(combinat): OCP_STAR := proc(part) option remember; local mset; mset := convert(part, `multiset`); expand('k'*mul(binomial(('k'-1)^item[1]+item[2]-1, item[2]), item in mset)); end; Y := (part, kval) -> subs('k'=kval, OCP_STAR(part)); YSEQ := proc(mx, k) local n, part, res; res := []; for n from 0 to mx do part := firstpart(n); while type(part, `list`) do res := [op(res), Y(part, k)]; part := nextpart(part); od; od; res; end;