login
A317792
Number of non-isomorphic multiset partitions, using normal multisets, of normal multisets of size n.
0
1, 1, 3, 6, 15, 31, 73, 154, 345, 742, 1627, 3499
OFFSET
0,3
COMMENTS
A multiset is normal if it spans an initial interval of positive integers, and strongly normal if it has weakly decreasing multiplicities. Neither condition is necessarily preserved under isomorphism. For example, {{2},{1,1,1,2}} is isomorphic to {{1},{1,2,2,2}}, but only the latter has normal blocks, while only the former has strongly normal multiset union.
EXAMPLE
Non-isomorphic representatives of the a(4) = 15 normal multiset partitions:
{1111}, {1112}, {1122}, {1123}, {1234},
{1}{111}, {1}{112}, {1}{122}, {1}{123}, {11}{11}, {11}{12}, {12}{12},
{1}{1}{11}, {1}{1}{12},
{1}{1}{1}{1}.
MATHEMATICA
sps[{}]:={{}}; sps[set:{i_, ___}]:=Join@@Function[s, Prepend[#, s]&/@sps[Complement[set, s]]]/@Cases[Subsets[set], {i, ___}];
mps[set_]:=Union[Sort[Sort/@(#/.x_Integer:>set[[x]])]&/@sps[Range[Length[set]]]];
sysnorm[{}]:={}; sysnorm[m_]:=If[Union@@m!=Range[Max@@Flatten[m]], sysnorm[m/.Rule@@@Table[{(Union@@m)[[i]], i}, {i, Length[Union@@m]}]], First[Sort[sysnorm[m, 1]]]]; sysnorm[m_, aft_]:=If[Length[Union@@m]<=aft, {m}, With[{mx=Table[Count[m, i, {2}], {i, Select[Union@@m, #>=aft&]}]}, Union@@(sysnorm[#, aft+1]&/@Union[Table[Map[Sort, m/.{par+aft-1->aft, aft->par+aft-1}, {0, 1}], {par, First/@Position[mx, Max[mx]]}]])]];
allnorm[n_]:=Function[s, Array[Count[s, y_/; y<=#]+1&, n]]/@Subsets[Range[n-1]+1];
Table[Length[Union[sysnorm/@Select[Join@@mps/@allnorm[n], And@@(Union[#]==Range[Max@@#]&)/@#&]]], {n, 6}]
KEYWORD
nonn,more
AUTHOR
Gus Wiseman, Aug 07 2018
EXTENSIONS
a(10)-a(11) from Robert Price, Sep 15 2018
STATUS
approved