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.

A097942 Highly totient numbers: each number k on this list has more solutions to the equation phi(x) = k than any preceding k (where phi is Euler's totient function, A000010).

Original entry on oeis.org

1, 2, 4, 8, 12, 24, 48, 72, 144, 240, 432, 480, 576, 720, 1152, 1440, 2880, 4320, 5760, 8640, 11520, 17280, 25920, 30240, 34560, 40320, 51840, 60480, 69120, 80640, 103680, 120960, 161280, 181440, 207360, 241920, 362880, 483840, 725760, 967680
Offset: 1

Views

Author

Alonso del Arte, Sep 05 2004

Keywords

Comments

If you inspect PhiAnsYldList after running the Mathematica program below, the zeros with even-numbered indices should correspond to the nontotients (A005277).
Where records occur in A014197. - T. D. Noe, Jun 13 2006
Cf. A131934.

Examples

			a(4) = 8 since phi(x) = 8 has the solutions {15, 16, 20, 24, 30}, one more solution than a(3) = 4 for which phi(x) = 4 has solutions {5, 8, 10, 12}.
		

Crossrefs

A subsequence of A007374.

Programs

  • Maple
    HighlyTotientNumbers := proc(n) # n > 1 is search maximum
    local L, m, i, r; L := NULL; m := 0;
    for i from 1 to n do
      r := nops(numtheory[invphi](i));
      if r > m then L := L,[i,r]; m := r fi
    od; [L] end:
    A097942_list := n -> seq(s[1], s = HighlyTotientNumbers(n));
    A097942_list(500); # Peter Luschny, Sep 01 2012
  • Mathematica
    searchMax = 2000; phiAnsYldList = Table[0, {searchMax}]; Do[phiAns = EulerPhi[m]; If[phiAns <= searchMax, phiAnsYldList[[phiAns]]++ ], {m, 1, searchMax^2}]; highlyTotientList = {1}; currHigh = 1; Do[If[phiAnsYldList[[n]] > phiAnsYldList[[currHigh]], highlyTotientList = {highlyTotientList, n}; currHigh = n], {n, 2, searchMax}]; Flatten[highlyTotientList]
  • PARI
    { A097942_list(n) = local(L, m, i, r);
      m = 0;
      for(i=1, n,
    \\ from Max Alekseyev, http://home.gwu.edu/~maxal/gpscripts/
       r = numinvphi(i);
       if(r > m, print1(i,", "); m = r) );
    } \\ Peter Luschny, Sep 01 2012
  • Sage
    def HighlyTotientNumbers(n) : # n > 1 is search maximum.
        R = {}
        for i in (1..n^2) :
            r = euler_phi(i)
            if r <= n :
                R[r] = R[r] + 1 if r in R else 1
        # print R.keys()   # A002202
        # print R.values() # A058277
        P = []; m = 1
        for l in sorted(R.keys()) :
            if R[l] > m : m = R[l]; P.append((l,m))
        # print [l[0] for l in P] # A097942
        # print [l[1] for l in P] # A131934
        return P
    A097942_list = lambda n: [s[0] for s in HighlyTotientNumbers(n)]
    A097942_list(500) # Peter Luschny, Sep 01 2012
    

Extensions

Edited and extended by Robert G. Wilson v, Sep 07 2004