cp's OEIS Frontend

This is a front-end for the Online Encyclopedia of Integer Sequences, made by Christian Perfect. The idea is to provide OEIS entries in non-ancient HTML, and then to think about how they're presented visually. The source code is on GitHub.

A302041 An omega analog for a nonstandard factorization based on the sieve of Eratosthenes (A083221).

Original entry on oeis.org

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, 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, 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
Offset: 1

Views

Author

Antti Karttunen, Mar 31 2018

Keywords

Crossrefs

Cf. A302040 (positions of terms < 2).
Cf. A253557 (a similar analog for bigomega), A302050, A302051, A302052, A302039, A302055 (other analogs).
Differs from A302031 for the first time at n=59, where a(59) = 1, while A302031(59) = 2.

Programs

  • PARI
    \\ Assuming A250469 and its inverse A268674 have been precomputed, then the following is reasonably fast:
    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));
    A302041(n) = if(1==n, 0,1+A302041(A302044(n)));
    
  • PARI
    up_to = 65537;
    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; };
    A020639(n) = if(n>1, if(n>n=factor(n, 0)[1, 1], n, factor(n)[1, 1]), 1); \\ From A020639
    v078898 = ordinal_transform(vector(up_to,n,A020639(n)));
    A078898(n) = v078898[n];
    A000265(n) = (n/2^valuation(n, 2));
    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)); };
    A302041(n) = if(1==n, 0,1+A302041(A302044(n)));
    
  • PARI
    \\ Or, using also some of the code from above:
    A003961(n) = my(f = factor(n)); for (i=1, #f~, f[i, 1] = nextprime(f[i, 1]+1)); factorback(f); \\ From A003961
    A055396(n) = if(1==n,0,primepi(A020639(n)));
    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)));
    A302041(n) = omega(A250246(n));

Formula

a(1) = 0; for n > 1, a(n) = 1 + a(A302044(n)).
a(n) = A001221(A250246(n)).
a(n) = A069010(A252754(n)).