OFFSET
1,12
COMMENTS
By convention a(1) = 0.
The Heinz number of an integer partition (y_1,...,y_k) is prime(y_1)*...*prime(y_k).
LINKS
Antti Karttunen, Table of n, a(n) for n = 1..65537
FORMULA
MATHEMATICA
nn=120;
ptns=Table[If[n===1, {}, Join@@Cases[FactorInteger[n]//Reverse, {p_, k_}:>Table[PrimePi[p], {k}]]], {n, nn}];
tris=Join@@Map[Tuples[IntegerPartitions/@#]&, ptns];
rmu[y_]:=rmu[y]=If[Length[y]===1, 1, -Sum[Times@@rmu/@t, {t, Select[tris, And[Length[#]>1, Sort[Join@@#, Greater]===y, SameQ@@Total/@#]&]}]];
rmu/@ptns
PROG
(PARI)
A056239(n) = { my(f); if(1==n, 0, f=factor(n); sum(i=1, #f~, f[i, 2] * primepi(f[i, 1]))); }
muifbalancedfactorization(v) = if(!#v, 1, my(pw=A056239(v[1]), m=-1); for(i=1, #v, if(A056239(v[i])!=pw, return(0), m *= A294080(v[i]))); (m));
A294080aux(n, m, facs) = if(1==n, muifbalancedfactorization(Vec(facs)), my(s=0, newfacs); fordiv(n, d, if((d>1)&&(d<=m), newfacs = List(facs); listput(newfacs, d); s += A294080aux(n/d, m, newfacs))); (s));
A294080(n) = if(1==n, 0, if(isprime(n), 1, A294080aux(n, n-1, List([]))));
\\ A memoized implementation:
map294080 = Map();
A294080(n) = if(1==n, 0, if(isprime(n), 1, if(mapisdefined(map294080, n), mapget(map294080, n), my(v=A294080aux(n, n-1, List([]))); mapput(map294080, n, v); (v)))); \\ Antti Karttunen, Sep 22 2018
CROSSREFS
KEYWORD
sign
AUTHOR
Gus Wiseman, Feb 07 2018
STATUS
approved