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.

A319705 Filter sequence which for primes p records a distinct value for each distinct multiset formed from the lengths of 1-runs in its binary representation [A286622(p)], and for all other numbers assigns a unique number.

Original entry on oeis.org

1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 11, 13, 14, 15, 5, 16, 11, 17, 18, 19, 20, 21, 22, 23, 24, 25, 20, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 33, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 38, 48, 49, 50, 51, 52, 53, 54, 42, 55, 56, 57, 58, 59, 11, 60, 61, 62, 20, 63, 33, 64, 65, 66, 67, 68, 42, 69, 70, 71, 38, 72, 73, 74, 75, 76, 38, 77, 78, 79, 80, 81, 82, 83, 11, 84, 85, 86, 38
Offset: 1

Views

Author

Antti Karttunen, Sep 26 2018

Keywords

Comments

Restricted growth sequence transform of function f defined as f(n) = A278222(n) when n is a prime, otherwise -n.
After its initial term 3, Fermat primes (A019434) gives the positions of 5 in this sequence, while the Mersenne primes (A000668) are each assigned to their own singleton equivalence class.
For all i, j:
a(i) = a(j) => A305900(i) = A305900(j),
a(i) = a(j) => A286622(i) = A286622(j),
a(i) = a(j) => A305795(i) = A305795(j).

Crossrefs

Programs

  • 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; };
    A005940(n) = { my(p=2, t=1); n--; until(!n\=2, if((n%2), (t*=p), p=nextprime(p+1))); t };
    A046523(n) = { my(f=vecsort(factor(n)[, 2], , 4), p); prod(i=1, #f, (p=nextprime(p+1))^f[i]); };  \\ From A046523
    A278222(n) = A046523(A005940(1+n));
    A319705aux(n) = if(isprime(n),A278222(n),-n);
    v319705 = rgs_transform(vector(up_to,n,A319705aux(n)));
    A319705(n) = v319705[n];