%I #20 Jul 29 2023 06:39:59
%S 2,5,11,17,37,67,131,257,521,1033,2053,4099,8209,16417,32771,65537,
%T 133121,262147,524353,1048609,2097169,4194433,8388617,16777729,
%U 33554467,67239937,134250497,268435459,536903681,1073741827,2147483713
%N Smallest prime between 2^n and 2^(n+1), having a minimal number of 1's in binary representation.
%C A091935(n) = A000120(a(n)).
%C So far only a(25) and a(32) possess 4 1's in their binary representation.
%H Chai Wah Wu, <a href="/A091936/b091936.txt">Table of n, a(n) for n = 1..1000</a>
%t NextPrim[ n_] := Block[ {k = n + 1}, While[ !PrimeQ[ k], k++ ]; k]; p = 2; Do[ c = Infinity; While[ p < 2^n, b = Count[ IntegerDigits[ p, 2], 1]; If[ c > b, c = b; q = p]; p = NextPrim[ p]; If[ c < 4, p = NextPrim[ 2^n]; Continue[ ]]]; Print[ q], {n, 2, 32}] (* _Robert G. Wilson v_, Feb 18 2004 *)
%t b[ n_ ] := Min[ Select[ FromDigits[ #, 2 ] & /@ (Join[ {1}, #, {1} ] & /@ Permutations[ Join[ {1}, Table[ 0, {n - 2} ] ] ]), PrimeQ[ # ] & ] ]; c[ n_ ] := Min[ Select[ FromDigits[ #, 2 ] & /@ (Join[ {1}, #, {1} ] & /@ Permutations[ Join[ {1, 1}, Table[ 0, {n - 3} ] ] ]), PrimeQ[ # ] & ] ]; f[ n_ ] := If[ PrimeQ[ 2^n + 1 ], 2^n + 1, If[ PrimeQ[ b[ n ] ], b[ n ], c[ n ] ] ]; Table[ f[ n ], {n, 2, 32} ] (* _Robert G. Wilson v_ *)
%o (Python)
%o from sympy import isprime
%o from sympy.utilities.iterables import multiset_permutations
%o def A091936(n):
%o for i in range(n+1):
%o q = 2**n
%o for d in multiset_permutations('0'*(n-i)+'1'*i):
%o p = q+int(''.join(d),2)
%o if isprime(p):
%o return p # _Chai Wah Wu_, Apr 08 2020
%Y Cf. A091938, A019434.
%K nonn
%O 1,1
%A _Reinhard Zumkeller_, Feb 14 2004
%E More terms from _Robert G. Wilson v_, Feb 18 2004