%I #15 Apr 02 2018 21:20:39
%S 0,1,1,1,1,2,1,1,1,2,1,2,1,2,2,1,1,2,1,2,1,2,1,2,1,2,2,2,1,3,1,1,2,2,
%T 2,2,1,2,2,2,1,2,1,2,1,2,1,2,1,2,2,2,1,3,1,2,2,2,1,3,1,2,2,1,2,3,1,2,
%U 2,3,1,2,1,2,2,2,2,3,1,2,2,2,1,2,2,2,3,2,1,2,1,2,1,2,2,2,1,2,2,2,1,3,1,2,2
%N An omega analog for a nonstandard factorization based on the sieve of Eratosthenes (A083221).
%H Antti Karttunen, <a href="/A302041/b302041.txt">Table of n, a(n) for n = 1..65537</a>
%H <a href="/index/Si#sieve">Index entries for sequences generated by sieves</a>
%F a(1) = 0; for n > 1, a(n) = 1 + a(A302044(n)).
%F a(n) = A001221(A250246(n)).
%F a(n) = A069010(A252754(n)).
%o (PARI)
%o \\ Assuming A250469 and its inverse A268674 have been precomputed, then the following is reasonably fast:
%o A302044(n) = if(1==n,n,my(k=0); while((n%2), n = A268674(n); k++); n = (n/2^valuation(n, 2)); while(k>0, n = A250469(n); k--); (n));
%o A302041(n) = if(1==n, 0,1+A302041(A302044(n)));
%o (PARI)
%o up_to = 65537;
%o ordinal_transform(invec) = { my(om = Map(), outvec = vector(length(invec)), pt); for(i=1, length(invec), if(mapisdefined(om,invec[i]), pt = mapget(om, invec[i]), pt = 0); outvec[i] = (1+pt); mapput(om,invec[i],(1+pt))); outvec; };
%o A020639(n) = if(n>1, if(n>n=factor(n, 0)[1, 1], n, factor(n)[1, 1]), 1); \\ From A020639
%o v078898 = ordinal_transform(vector(up_to,n,A020639(n)));
%o A078898(n) = v078898[n];
%o A000265(n) = (n/2^valuation(n, 2));
%o A302044(n) = { my(c = A000265(A078898(n))); if(1==c,1,my(p = prime(-1+primepi(A020639(n))+primepi(A020639(c))), d = A078898(c), k=0); while(d, k++; if((1==k)||(A020639(k)>=p),d -= 1)); (k*p)); };
%o A302041(n) = if(1==n, 0,1+A302041(A302044(n)));
%o (PARI)
%o \\ Or, using also some of the code from above:
%o A003961(n) = my(f = factor(n)); for (i=1, #f~, f[i, 1] = nextprime(f[i, 1]+1)); factorback(f); \\ From A003961
%o A055396(n) = if(1==n,0,primepi(A020639(n)));
%o A250246(n) = if(1==n,n,my(k = 2*A250246(A078898(n)), r = A055396(n)); if(1==r, k, while(r>1, k = A003961(k); r--); (k)));
%o A302041(n) = omega(A250246(n));
%Y Cf. A001221, A069010, A250246, A252754, A302044.
%Y Cf. A302040 (positions of terms < 2).
%Y Cf. A253557 (a similar analog for bigomega), A302050, A302051, A302052, A302039, A302055 (other analogs).
%Y Differs from A302031 for the first time at n=59, where a(59) = 1, while A302031(59) = 2.
%K nonn
%O 1,6
%A _Antti Karttunen_, Mar 31 2018