OFFSET
0,3
COMMENTS
Call two numbers equivalent if they have the same prime factorization exponents (in the same order). This sequence enumerates the equivalence classes.
From Antti Karttunen, Jun 13 2018: (Start)
After a(0) = 0, this is the restricted growth sequence transform of A071364. The latter sequence is an "ordered variant" of A046523, and because A101296 is the rgs-transform of A046523, it follows that for all i, j: a(i) = a(j) => A101296(i) = A101296(j).
(End)
LINKS
Antti Karttunen, Table of n, a(n) for n = 0..100000 (terms 0..10000 from T. D. Noe)
S. Whealton, Prime Factor Configuration Pattern Numbers.
EXAMPLE
12 = 2^2*3^1 has exponents {2,1}, and is the first number with that pattern, so its value is one more than the largest previous value; a(12) = 6. Contrast that with 18 = 2^1*3^2 having exponents {1,2}, which is different from {2,1}, so a(18) is not equal to a(12). - Franklin T. Adams-Watters, Aug 01 2012
MATHEMATICA
fList = {{0}}; Join[{0, 1}, Table[e = Transpose[FactorInteger[n]][[2]]; pos = Position[fList, e]; If[pos == {}, AppendTo[fList, e]; Length[fList], pos[[1, 1]]], {n, 2, 100}]] (* T. D. Noe, Aug 01 2012 *)
PROG
(PARI) a(n)=local(vn); if(n<1, return(0)); vn=factor(n)[, 2]; for(i=1, n, if(vn==factor(i)[, 2], return(#Set(vector(i, j, factor(j)[, 2])))))
(PARI)
up_to = 100000;
rgs_transform(invec) = { my(om = Map(), outvec = vector(length(invec)), u=1); for(i=1, length(invec), if(mapisdefined(om, invec[i]), my(pp = mapget(om, invec[i])); outvec[i] = outvec[pp] , mapput(om, invec[i], i); outvec[i] = u; u++ )); outvec; };
A071364(n) = { my(f = factor(n)); for (i=1, #f~, f[i, 1] = prime(i)); factorback(f); }; \\ From A071364
v077462 = rgs_transform(vector(up_to, n, A071364(n)));
A077462(n) = if(!n, n, v077462[n]); \\ Antti Karttunen, Jun 13 2018
CROSSREFS
KEYWORD
nonn,easy
AUTHOR
Michael Somos, Nov 07 2002
STATUS
approved