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.

A072103 Sorted perfect powers a^b for a, b > 1 with duplication.

Original entry on oeis.org

4, 8, 9, 16, 16, 25, 27, 32, 36, 49, 64, 64, 64, 81, 81, 100, 121, 125, 128, 144, 169, 196, 216, 225, 243, 256, 256, 256, 289, 324, 343, 361, 400, 441, 484, 512, 512, 529, 576, 625, 625, 676, 729, 729, 729, 784, 841, 900, 961, 1000, 1024, 1024, 1024, 1089
Offset: 1

Views

Author

Eric W. Weisstein, Jun 18 2002

Keywords

Comments

If b is the largest integer such that n=a^b for some a > 1, then n occurs d(b)-1 times in this sequence (where d = A000005 is the number of divisors function). (This includes the case where b=1 and n does not occur in the sequence.) - M. F. Hasler, Jan 25 2015

Examples

			(a,b) = (2,4) and (4,2) both yield 2^4 = 4^2 = 16, therefore 16 is listed twice.
Similarly, 64 is listed 3 times since (a,b) = (2,6), (4,3) and (8,2) all yield 64.
		

Crossrefs

Programs

  • Haskell
    import Data.Set (singleton, findMin, deleteMin, insert)
    a072103 n = a072103_list !! (n-1)
    a072103_list = f 9 3 $ Set.singleton (4,2) where
       f zz z s
         | xx < zz   = xx : f zz z (Set.insert (x*xx, x) $ Set.deleteMin s)
         | otherwise = zz : f (zz+2*z+1) (z+1) (Set.insert (z*zz, z) s)
         where (xx, x) = Set.findMin s
    -- Reinhard Zumkeller, Oct 04 2012
    
  • Maple
    N:= 2000: # to get all entries <= N
    sort([seq(seq(a^b, b = 2 .. floor(log[a](N))), a = 2 .. floor(sqrt(N)))]); # Robert Israel, Jan 25 2015
  • Mathematica
    nn=60;Take[Sort[#[[1]]^#[[2]]&/@Tuples[Range[2,nn],2]],nn] (* Harvey P. Dale, Oct 03 2012 *)
  • PARI
    is_A072103(n)=ispower(n)
    for(n=1,999,(e=ispower(n))||next;fordiv(e,d,d>1 && print1(n","))) \\ M. F. Hasler, Jan 25 2015
    
  • Python
    import numpy
    from math import isqrt
    upto = 1090
    A072103 = []
    for m in range(2,isqrt(upto)+1):
        k = 2
        while m**k < upto:
            A072103.append(m**k)
            k += 1
    print(sorted(A072103)) # Karl-Heinz Hofmann, Sep 16 2023

Formula

Sum_{i>=2} Sum_{j>=2} 1/i^j = 1.

Extensions

Offset corrected and examples added by M. F. Hasler, Jan 25 2015