OFFSET
1,2
COMMENTS
In base 2 a(n) is the concatenation for i=1 to n of A005171(i).
LINKS
Michael S. Branicky, Table of n, a(n) for n = 1..3322 (terms 1..1000 from Harvey P. Dale)
FORMULA
a(n) = floor(k * 2^n) where k = 0.585317... = 1 - A051006. [Charles R Greathouse IV, Dec 27 2011]
From Ridouane Oudra, Aug 26 2019: (Start)
a(n) = 2^n - 1 - (1/2)*(pi(n) + Sum_{i=1..n} 2^(n-i)*pi(i)), where pi = A000720
EXAMPLE
a(2) = 2*1 = 2 as 2 is prime;
a(3) = 2*2 = 4 as 3 is prime;
a(4) = 2*4+1 = 9 as 4 is composite;
a(5) = 2*9 = 18 as 5 is prime.
MAPLE
f:=proc(n) option remember; if n=1 then RETURN(1); fi; if isprime(n) then 2*f(n-1) else 2*f(n-1)+1; fi; end; # N. J. A. Sloane
MATHEMATICA
nxt[{n_, a_}]:={n+1, If[PrimeQ[n+1], 2a, 2a+1]}; Transpose[NestList[nxt, {1, 1}, 40]][[2]] (* Harvey P. Dale, Jan 22 2015 *)
Array[FromDigits[#, 2] &@ Array[Boole[! PrimeQ@ #] &, #] &, 34] (* Michael De Vlieger, Nov 01 2016 *)
PROG
(Python)
from sympy import isprime, prime
def a(n): return int("".join(str(1-isprime(i)) for i in range(1, n+1)), 2)
print([a(n) for n in range(1, 35)]) # Michael S. Branicky, Jan 10 2022
(Python) # faster version for initial segment of sequence
from sympy import isprime
from itertools import count, islice
def agen(): # generator of terms
an = 0
for k in count(1):
an = 2 * an + int(not isprime(k))
yield an
print(list(islice(agen(), 34))) # Michael S. Branicky, Jan 10 2022
CROSSREFS
KEYWORD
nonn
AUTHOR
Pierre CAMI, Apr 19 2006
EXTENSIONS
Corrected by Omar E. Pol, Nov 08 2007
Corrections verified by N. J. A. Sloane, Nov 17 2007
STATUS
approved