%I #29 Mar 09 2023 08:40:15
%S 5,11,13,17,19,23,29,47,59,61,67,71,79,97,103,113,131,191,193,199,223,
%T 227,239,241,251,257,263,271,383,449,463,479,487,499,503,509,769,911,
%U 967,991,1009,1019,1021,1031,1039,1087,1151,1279,1543,1567,1663,1823
%N Primes whose base-2 representation is a block of 1's, followed by a block of 0's, followed by a block of 1's.
%C The n-th prime is a term iff A100714(n) = 3. - Joseph Biberstine (jrbibers(AT)indiana.edu), Dec 11 2004
%C A019434 \{3} is a subsequence, since the base-2 representation of a Fermat prime 2^(2^k)+1 > 3 is a single 1, followed by a block of 2^k-1 0's, followed by a last single 1. - _Bernard Schott_, Mar 07 2023
%H Michael S. Branicky, <a href="/A082554/b082554.txt">Table of n, a(n) for n = 1..10000</a>
%H Eric Weisstein's World of Mathematics, <a href="http://mathworld.wolfram.com/Run-LengthEncoding.html">Run-Length Encoding</a>.
%e 1987 = 11111000011_2, which is a block of 5 1's, followed by a block of 4 0's, followed by a block of 2 1's, so 1987 is a term.
%e a(3)=17 is a term because it is the 3rd prime whose binary representation splits into exactly three runs: 17_10 = 10001_2 splits into {{1}, {0,0,0}, {1}}.
%t Select[Table[Prime[k], {k, 1, 500}], Length[Split[IntegerDigits[ #, 2]]] == 3 &]
%o (PARI) decomp(s)=if(s%2==0,return(1),); k=1; while(k==1,k=s%2; s=floor(s/2)); if(s==0,return(1),); while(k==0,k=s%2; s=floor(s/2)); while(k==1,k=s%2; s=floor(s/2)); return(s)
%o forprime(i=1,2000,if(decomp(i)==0,print1(i,", ")))
%o (Python)
%o from sympy import isprime
%o from itertools import count, islice
%o def agen(): yield from filter(isprime, ((1<<k)-(1<<j)+(1<<i)-1 for k in count(1) for j in range(k-1, 1, -1) for i in range(1, j)))
%o print(list(islice(agen(), 52))) # _Michael S. Branicky_, Feb 25 2023
%Y Cf. A100714, A000040. Primes in A043570.
%Y Cf. A019434.
%K nonn,base
%O 1,1
%A _Randy L. Ekl_, May 03 2003
|