OFFSET
1,2
COMMENTS
If n = 1 let e(n) be the leaf symbol "o". Given a positive integer n > 1 we construct a unique free pure symmetric multifunction (with empty expressions allowed) e(n) (as can be represented in functional programming languages such as Mathematica) with one atom by expressing n as a power of a number that is not a perfect power to a product of prime numbers: n = rad(x)^(prime(y_1) * ... * prime(y_k)) where rad = A007916. Then e(n) = e(x)[e(y_1), ..., e(y_k)]. For example, e(21025) = o[o[o]][o] because 21025 = rad(rad(1)^prime(rad(1)^prime(1)))^prime(1). The a(n) is the number of ways to partition e(n) into disjoint subexpressions such that all leaves are covered by exactly one of them.
FORMULA
If n = rad(x)^(Product_i prime(y_i)^z_i) where rad = A007916 then a(n) = 1 + a(x) * Product_i a(y_i)^z_i.
EXAMPLE
441 is the e-number of o[o,o][o] which has antichain covers {o[o,o][o]}, {o[o,o], o}, {o, o, o, o}}, corresponding to the leaf-colorings 1[1,1][1], 1[1,1][2], 1[2,3][4], so a(441) = 3.
MATHEMATICA
nn=20000;
radQ[n_]:=If[n==1, False, GCD@@FactorInteger[n][[All, 2]]==1];
rad[n_]:=rad[n]=If[n==0, 1, NestWhile[#+1&, rad[n-1]+1, Not[radQ[#]]&]];
Clear[radPi]; Set@@@Array[radPi[rad[#]]==#&, nn];
a[n_]:=If[n==1, 1, With[{g=GCD@@FactorInteger[n][[All, 2]]}, 1+a[radPi[n^(1/g)]]*Product[a[PrimePi[pr[[1]]]]^pr[[2]], {pr, If[g==1, {}, FactorInteger[g]]}]]];
Array[a, 100]
CROSSREFS
KEYWORD
nonn
AUTHOR
Gus Wiseman, Aug 19 2018
STATUS
approved