%I #37 Apr 28 2022 13:39:09
%S 0,3,16,15,454,22,446,108,4260,75,170053,100,34393,9357,27982,362,
%T 14979714,685,3062899,59131,1599447,1372,1052029701,10484,7028048,
%U 98336,69058060,3926
%N Total number of left truncatable primes (without zeros) in base n.
%C Approximation of a(b) by (PARI) code: l(b)=c=b*(b-1)/log(b)/eulerphi(b);\ return(floor((primepi(b)-omega(b))*exp(c)/c)); - _Robert Gerbicz_, Nov 02 2008
%C a(24) = 1052029701 based on strong BPSW pseudoprimes. Other terms up to a(29) use proved primes. - _Martin Fuller_, Nov 24 2008
%H I. O. Angell and H. J. Godwin, <a href="http://dx.doi.org/10.1090/S0025-5718-1977-0427213-2">On Truncatable Primes</a>, Math. Comput. 31, 265-267, 1977.
%H Michael S. Branicky, <a href="/A076623/a076623.py.txt">String-based Python Program</a>
%H Martin Fuller, <a href="/A076623/a076623_1.txt">Table of n, a(n) for n= 2..53</a>, with question marks where unknown
%H Hans Havermann, <a href="http://chesswanks.com/num/LTPs/">A076623 Decomposed</a>
%H <a href="/index/Tri#tprime">Index entries for sequences related to truncatable primes</a>
%p Lton := proc(L,b) add( op(i,L)*b^(i-1),i=1..nops(L)) ; end proc:
%p A076623rec := proc(L,b) local a,d,Lext,p ; a := 0 ; for d from 1 to b-1 do Lext := [op(L),d] ; p := Lton(Lext,b) ; if isprime(p) then a := a+1 ; a := a+procname(Lext,b) ; end if; end do: a ;end proc:
%p A076623 := proc(b) A076623rec([],b) ; end proc:
%p for b from 2 do print(b,A076623(b)) ; end do: # _R. J. Mathar_, Jun 01 2011
%o (PARI)
%o f(b)=ct=0;A=[0];n=-1;L=1;while(L,n++;B=vector(L*b);M=0;\
%o for(i=1,L,for(j=1,b-1,x=A[i]+j*b^n;if(isprime[x],M++;B[M]=x;ct++)));\
%o L=M;A=vector(L,i,B[i]));return(ct) \\ _Robert Gerbicz_, Oct 31 2008
%o (Python) # works for all n; link has faster string-based version for n < 37
%o from sympy import isprime, primerange
%o from sympy.ntheory.digits import digits
%o def fromdigits(digs, base):
%o return sum(d*base**i for i, d in enumerate(digs))
%o def a(n):
%o prime_lists, an = [(p,) for p in primerange(1, n)], 0
%o while len(prime_lists) > 0:
%o an += len(prime_lists)
%o candidates = set(p+(d,) for p in prime_lists for d in range(1, n))
%o prime_lists = [c for c in candidates if isprime(fromdigits(c, n))]
%o return an
%o print([a(n) for n in range(2, 12)]) # _Michael S. Branicky_, Apr 27 2022
%Y Cf. A024779, A024780, A024781, A024782, A024783, A024784, A024785, A076586, A103443, A103463.
%K nonn,base,more
%O 2,2
%A _Martin Renner_, Oct 22 2002, Nov 03 2002, Sep 24 2007, Feb 20 2008, Apr 20 2008
%E a(12) corrected from 170051 to 170053 by _Martin Fuller_, Oct 31 2008
%E a(18) corrected by _Robert Gerbicz_, Nov 02 2008
%E a(24)-a(29) from _Martin Fuller_, Nov 24 2008
%E Entries in a-file corrected by _N. J. A. Sloane_, Jun 02 2011
|