Year-end appeal: Please make a donation to the OEIS Foundation to support ongoing development and maintenance of the OEIS. We are now in our 61st year, we have over 378,000 sequences, and we’ve reached 11,000 citations (which often say “discovered thanks to the OEIS”).
%I #15 May 12 2024 11:46:45
%S 2,3,5,7,17,11,13,19,29,23,43,41,31,37,47,67,61,71,73,53,59,79,89,83,
%T 283,223,227,127,107,101,103,109,139,131,137,157,151,181,191,193,113,
%U 163,167,197,97,397,307,317,311,211,241,251,257,277,271,281,881,811,821,421,401,409,419,439
%N a(n) = smallest prime not occurring earlier having in decimal representation to its predecessor Levenshtein distance = 1.
%C The sequence is a permutation of the prime numbers.
%H Eric Angelini, <a href="https://cinquantesignes.blogspot.com/2024/04/prime-padlock.html">Prime combination lock</a>, Personal blog, April 2024.
%e The Levenshtein distance = 1 between 2 and 3, 3 and 5, 5 and 7, 7 and 17, 17 and 11, 11 and 13, etc.
%e No smaller prime than 17 was possible for a(5).
%t a[1]=2;a[n_]:=a[n]=(k=2;While[MemberQ[Array[a,n-1],k]|| EditDistance[ToString@k, ToString@a[n-1]]!=1,k=NextPrime@k];k);Array[a,68]
%o (Python)
%o from sympy import isprime
%o from itertools import islice
%o from Levenshtein import distance as Ld
%o def agen(): # generator of terms
%o an, aset, mink = 2, {2}, 3
%o while True:
%o yield an
%o s, k = str(an), mink
%o while k in aset or Ld(s, str(k)) != 1 or not isprime(k): k += 1
%o an = k
%o aset.add(k)
%o while mink in aset or not isprime(mink): mink += 1
%o print(list(islice(agen(), 70))) # _Michael S. Branicky_, Apr 29 2024
%Y Cf. A000040, A118763, A372408.
%K base,nonn
%O 1,1
%A _Eric Angelini_ and _Giorgos Kalogeropoulos_, Apr 29 2024