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.

A299928 Integers represented by a cyclotomic binary form f(x, y) where x and y are prime numbers and 0 < y < x.

Original entry on oeis.org

7, 13, 19, 29, 34, 37, 39, 49, 53, 55, 58, 61, 67, 74, 79, 91, 93, 97, 103, 109, 125, 127, 129, 130, 139, 146, 147, 163, 170, 173, 178, 194, 199, 201, 211, 217, 218, 219, 223, 229, 237, 247, 259, 273, 277, 283, 290, 291, 293, 298, 309, 313, 314, 327, 338, 349
Offset: 1

Views

Author

Peter Luschny, Feb 21 2018

Keywords

Comments

A cyclotomic binary form over Z is a homogeneous polynomial in two variables which has the form f(x, y) = y^EulerPhi(k)*CyclotomicPolynomial(k, x/y) where k is some integer >= 3. An integer n is represented by f if f(x,y) = n has an integer solution.

Examples

			There are exactly four ways to represent 13 by a cyclotomic binary form f(x,y) if we require x > y > 0. In one case, x and y are prime.
13 = f(2, 1) where f(x, y) = x^4 - x^2*y^2 + y^4,
13 = f(3, 1) where f(x, y) = x^2 + x*y + y^2,
13 = f(3, 2) where f(x, y) = x^2 + y^2,
13 = f(4, 3) where f(x, y) = x^2 - x*y + y^2.
		

References

  • Trygve Nagell, Sur les représentations de l’unité par les formes binaires biquadratiques du premier rang, Arkiv för Mat. 5 (6), (1965), 477-521, (p. 517).

Crossrefs

Cf. A299929 (represented primes), A293654, A296095, A299214, A299498, A299733, A299930, A299956, A299964.

Programs

  • Julia
    using Nemo
    function isA299928(n)
        R, z = PolynomialRing(ZZ, "z")
        K = Int(floor(5.383*log(n)^1.161)) # Bounds from
        M = Int(floor(2*sqrt(n/3)))  # Fouvry & Levesque & Waldschmidt
        N = QQ(n)
        P(u) = (p for p in u:M if isprime(ZZ(p)))
        for k in 3:K
            e = Int(eulerphi(ZZ(k)))
            c = cyclotomic(k, z)
            for y in P(2), x in P(y+1)
                N == y^e*subst(c, QQ(x, y)) && return true
            end
        end
        return false
    end
    A299928list(upto) = [n for n in 1:upto if isA299928(n)]
    println(A299928list(350))