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.

A278567 Maximal coefficient (in absolute value) of cyclotomic polynomial C(N,x), where N = n-th number which is a product of exactly three distinct primes = A007304(n).

Original entry on oeis.org

1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 1, 1, 1, 1, 2, 1, 2, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 1, 1, 1, 3, 1, 1, 1, 2, 1, 2, 1, 2, 1, 1, 2, 1, 1, 1, 1, 1, 3, 1, 1, 1, 2, 1, 2, 1, 1, 1, 1, 2, 1, 2, 1, 1, 1, 2
Offset: 1

Views

Author

N. J. A. Sloane, Nov 26 2016

Keywords

Comments

E. Lehmer (1936) shows that this sequence is unbounded.

Examples

			The first 2 occurs in the famous C(105,x), which is x^48+x^47+x^46-x^43-x^42-2*x^41-x^40-x^39+x^36+x^35+x^34+x^33+x^32+x^31-x^28-x^26-x^24-x^22-x^20+x^17+x^16+x^15+x^14+x^13+x^12-x^9-x^8-2*x^7-x^6-x^5+x^2+x+1.
		

Crossrefs

See A278571 for smallest m such that a(m) = n.
See A278570 for another version.

Programs

  • Maple
    with(numtheory):
    b:= proc(n) option remember; local k;
          for k from 1+`if`(n=1, 0, b(n-1)) while
          bigomega(k)<>3 or nops(factorset(k))<>3 do od; k
        end:
    a:= n-> max(map(abs, [coeffs(cyclotomic(b(n), x))])):
    seq(a(n), n=1..120);  # Alois P. Heinz, Nov 26 2016
  • Mathematica
    f[n_] := Max[ Abs[ CoefficientList[ Cyclotomic[n, x], x]]]; t = Take[ Sort@ Flatten@ Table[Prime@i Prime@j Prime@k, {i, 3, 35}, {j, 2, i -1}, {k, j -1}], 105]; f@# & /@ t (* Robert G. Wilson v, Dec 09 2016 *)
  • Python
    from math import isqrt
    from sympy import primepi, primerange, integer_nthroot, cyclotomic_poly
    def A278567(n):
        def f(x): return int(n+x-sum(primepi(x//(k*m))-b for a,k in enumerate(primerange(integer_nthroot(x,3)[0]+1),1) for b,m in enumerate(primerange(k+1,isqrt(x//k)+1),a+1)))
        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
        return max(int(abs(x[1][0][0])) for x in cyclotomic_poly(bisection(f)).as_terms()[0]) # Chai Wah Wu, Aug 31 2024