login
A048890
Primes that yield a different prime when rotated by 180 degrees.
6
19, 61, 109, 199, 601, 661, 1019, 1061, 1091, 1109, 1181, 1601, 1609, 1669, 1699, 1811, 1901, 1999, 6011, 6091, 6101, 6199, 6619, 6661, 6689, 6691, 6899, 6991, 10061, 10069, 10091, 10691, 10861, 10909, 11069, 11681, 11909, 16001, 16619, 16661
OFFSET
1,1
COMMENTS
Also called invertible primes. [Lekraj Beedassy, Jan 03 2009]
LINKS
C. K. Caldwell, The Prime Glossary, strobogrammatic [Lekraj Beedassy, Jan 03 2009]
MATHEMATICA
lst = {}; fQ[n_] := Block[{allset = {0, 1, 6, 8, 9}, id = IntegerDigits@n}, rid = Reverse[id /. {6 -> 9, 9 -> 6}]; Union@ Join[id, allset] == allset && PrimeQ@ FromDigits@ rid && rid != id]; Do[ If[ PrimeQ@n && fQ@n, AppendTo[lst, n]], {n, 16900}]; lst (* Robert G. Wilson v, Feb 27 2007 *)
PROG
(Haskell)
import Data.List (unfoldr)
a048890 n = a048890_list !! (n-1)
a048890_list = filter f a000040_list where
f x = all (`elem` [0, 1, 6, 8, 9]) ds && x' /= x && a010051 x' == 1
where x' = foldl c 0 ds
c v 6 = 10*v + 9; c v 9 = 10*v + 6; c v d = 10*v + d
ds = unfoldr d x
d z = if z == 0 then Nothing else Just $ swap $ divMod z 10
-- Reinhard Zumkeller, Nov 18 2011
(Python)
from itertools import product
from sympy import isprime
A048890_list = []
for d in product('01689', repeat=6):
s = ''.join(d)
p = int(s)
if p > 0:
q = int(s[::-1].rstrip('0').translate(''.maketrans('69', '96')))
if p != q and isprime(q) and isprime(p):
A048890_list.append(p) # Chai Wah Wu, Sep 13 2021
CROSSREFS
KEYWORD
base,nonn,easy,nice
EXTENSIONS
Better definition and more terms from Robert G. Wilson v, Feb 27 2007
STATUS
approved