cp's OEIS Frontend

This is a front-end for the Online Encyclopedia of Integer Sequences, made by Christian Perfect. The idea is to provide OEIS entries in non-ancient HTML, and then to think about how they're presented visually. The source code is on GitHub.

A052180 Last filtering prime for n-th prime p: find smallest prime factor of each of the composite numbers between p and next prime; take maximal value.

Original entry on oeis.org

2, 2, 3, 2, 3, 2, 3, 5, 2, 5, 3, 2, 3, 7, 5, 2, 5, 3, 2, 7, 3, 5, 7, 3, 2, 3, 2, 3, 11, 3, 7, 2, 11, 2, 5, 7, 3, 13, 5, 2, 11, 2, 3, 2, 11, 13, 3, 2, 3, 5, 2, 13, 11, 7, 5, 2, 5, 3, 2, 17, 13, 3, 2, 3, 17, 5, 11, 2, 3, 5, 19, 7, 13, 3, 5, 17, 3, 13, 7, 2, 7, 2, 19, 3, 5, 11, 3, 2, 3, 11, 13, 3, 17
Offset: 2

Views

Author

Labos Elemer, Feb 05 2000

Keywords

Comments

A000879(n) is the least index i such that a(i) = prime(n). - Labos Elemer, May 14 2003

Examples

			For n=9, n-th prime is 23, composites between 23 and next prime are 24 25 26 27 28, smallest prime divisors are 2 5 2 3 2; maximal value is 5, so a(9)=5.
		

Crossrefs

Programs

  • Haskell
    a052180 n = a052180_list !! (n-2)
    a052180_list = f [4..] where
       f ws = (maximum $ map a020639 us) : f vs where
         (us, _:vs) = span  ((== 0) . a010051) ws
    -- Reinhard Zumkeller, Dec 27 2012
    
  • Mathematica
    ffi[x_] := Flatten[FactorInteger[x]];
    lf[x_] := Length[FactorInteger[x]];
    ba[x_] := Table[Part[ffi[x], 2*w-1], {w, 1, lf[x]}];
    mi[x_] := Min[ba[x]];
    Table[Max[Table[mi[ba[w]], {w, Prime[j]+1, -1+Prime[j+1]}]], {j, 2, 256}]
    (* Second program: *)
    mpf[{a_,b_}] := Max[FactorInteger[#][[1,1]]& /@ Range[a+1,b-1]];
    mpf/@ Partition[ Prime[Range[2,100]],2,1] (* Harvey P. Dale, Apr 30 2013 *)
  • PARI
    a(n) = {my(p = prime(n), amax = 0); forcomposite(c = p, nextprime(p+1), amax = max(factor(c)[1,1], amax);); amax;} \\ Michel Marcus, Apr 21 2018
    
  • Python
    from sympy import prime, nextprime, primefactors
    def a(n):
      p = prime(n); q = nextprime(p)
      return max(min(primefactors(m)) for m in range(p+1, q))
    print([a(n) for n in range(2, 95)]) # Michael S. Branicky, Feb 02 2021

Formula

a(n) = Max_{j=1+prime(n)..prime(n+1)-1} A020639(j) where A020639(j) is the least prime dividing j.