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.

A075772 Difference between the n-th perfect power and the closest perfect power.

Original entry on oeis.org

3, 3, 1, 1, 7, 2, 2, 4, 4, 13, 15, 17, 19, 4, 3, 3, 16, 25, 20, 9, 9, 13, 13, 33, 19, 18, 18, 39, 41, 28, 17, 17, 47, 49, 51, 53, 55, 57, 59, 39, 24, 24, 65, 67, 69, 35, 35, 38, 75, 77, 79, 47, 36, 36, 85, 87, 23, 23, 68, 10, 10, 12, 95, 97, 99, 101, 40, 40, 65, 107, 100, 11, 11
Offset: 1

Views

Author

Neil Fernandez, Oct 09 2002

Keywords

Comments

Let {b(n)} be the sequence of perfect powers (A001597); then a(n) = min { b(n)-b(n-1), b(n+1)-b(n) }.

Examples

			The perfect powers are 1, 4, 8, 9, 16, 25, 27, 32, 36, 49, 64, 81, 100, 121, etc. The 7th is 27. This is 2 larger than the 6th (25) and 5 smaller than the 8th (32). So a(7)=2.
		

Crossrefs

Programs

  • Mathematica
    pp = {-2, 1}; Do[ If[ !PrimeQ[n] && Apply[GCD, Last[ Transpose[ FactorInteger[n]]]] > 1, pp = Append[pp, n]], {n, 2, 10^4}]; Table[ Min[pp[[n + 1]] - pp[[n]], pp[[n + 2]] - pp[[n + 1]]], {n, 1, 75}]
    perfPQ[n_]:=GCD@@FactorInteger[n][[All,2]]>1;Join[{3,3},Min[ Differences[ #]]&/@Partition[Select[Range[5000],perfPQ],3,1]] (* Harvey P. Dale, May 04 2021 *)
  • PARI
    for(n=L=3+P=-2,99,ispower(n)&&print1(min(-P+P=L,-L+L=n)",")) \\ Note: ispower(1)=0. - M. F. Hasler, May 08 2018
    
  • Python
    from sympy import mobius, integer_nthroot
    def A075772(n):
        if n == 1: return 3
        def f(x): return int(n-2+x+sum(mobius(k)*(integer_nthroot(x,k)[0]-1) for k in range(2,x.bit_length())))
        def bisection(f,kmin=0,kmax=1):
            while f(kmax) > kmax: kmax <<= 1
            while kmax-kmin > 1:
                kmid = kmax+kmin>>1
                if f(kmid) <= kmid:
                    kmax = kmid
                else:
                    kmin = kmid
            return kmax
        a = bisection(f,n-1,n-1)
        b = bisection(lambda x:f(x)+1,a,a)
        return min(b-a,bisection(lambda x:f(x)+2,b,b)-b) # Chai Wah Wu, Sep 09 2024

Formula

a(n) = min A053289({n, n-1}\{0}), where A053289(n) = A001597(n+1) - A001597(n). - M. F. Hasler, May 08 2018

Extensions

More terms from Robert G. Wilson v and John W. Layman, Oct 10 2002