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.

A296095 Integers represented by cyclotomic binary forms.

Original entry on oeis.org

3, 4, 5, 7, 8, 9, 10, 11, 12, 13, 16, 17, 18, 19, 20, 21, 25, 26, 27, 28, 29, 31, 32, 34, 36, 37, 39, 40, 41, 43, 45, 48, 49, 50, 52, 53, 55, 57, 58, 61, 63, 64, 65, 67, 68, 72, 73, 74, 75, 76, 79, 80, 81, 82, 84, 85, 89, 90, 91, 93, 97, 98, 100, 101, 103, 104, 106, 108, 109, 111, 112, 113, 116, 117, 121, 122
Offset: 1

Views

Author

Michel Waldschmidt, Feb 14 2018

Keywords

Comments

Possibly a subsequence of A000401. - C. S. Davis, May 10 2025
All terms divisible by 11 appear to be either of the form 11^2*A383784(n) for n>1 or x^4 + u*x^3*y + x^2*y^2 + u*x*y^3 + y^4 for x>y>0 and u={-1, 1}. - C. S. Davis, May 14 2025

Crossrefs

Complement of A293654.
Supersequence of A383784(n) for n>3, according to Proposition 6.2 of Fouvry et al.

Programs

  • Julia
    using Nemo
    function isA296095(n)
        n < 3 && return false
        R, z = PolynomialRing(ZZ, "z")
        N = QQ(n)
        # Bounds from Fouvry, Levesque and Waldschmidt
        logn = log(n)^1.161
        K = Int(floor(5.383*logn))
        M = Int(floor(2*(n/3)^(1/2)))
        k = 3
        while true
            c = cyclotomic(k, z)
            e = Int(eulerphi(ZZ(k)))
            if k == 7
                K = Int(ceil(4.864*logn))
                M = Int(ceil(2*(n/11)^(1/4)))
            end
            for y in 2:M, x in 1:y
                N == y^e*subst(c, QQ(x,y)) && return true
            end
            k += 1
            k > K && break
        end
        return false
    end
    A296095list(upto) = [n for n in 1:upto if isA296095(n)]
    println(A296095list(2040)) # Peter Luschny, Feb 28 2018
  • Maple
    with(numtheory): for n from 3 to 1000 do F[n] := expand(y^phi(n)*cyclotomic(n, x/y)) od: for m to 1000 do for n from 3 to 50 do for x from -50 to 50 do for y from -50 to 50 do if `and`(F[n] = m, max(abs(x), abs(y)) > 1) then print(m); m := m+1; n := 3; x := -50; y := -50 end if end do end do end do end do;
  • Mathematica
    isA296095[n_]:=
    If[n<3, Return[False],
    logn = Log[n]^1.161;
    K = Floor[5.383*logn];
    M = Floor[2*(n/3)^(1/2)];
    k = 3;
    While[True,
       If[k==7,
          K = Ceiling[4.864*logn];
          M = Ceiling[2*(n/11)^(1/4)]
       ];
       For[y=2, y<=M, y++,
          p[z_] = y^EulerPhi[k]*Cyclotomic[k,z];
          For[x=1, x<=y, x++, If[n==p[x/y], Return[True]]]
       ];
       k++;
       If[k>K, Break[]]
    ];
    Return[False]
    ];
    Select[Range[122], isA296095] (* Jean-François Alcover, Feb 20 2018, translated from Peter Luschny's Sage script, updated Mar 01 2018 *)
  • Sage
    def isA296095(n):
        if n < 3: return False
        logn = log(n)^1.161
        K = floor(5.383*logn)
        M = floor(2*(n/3)^(1/2))
        k = 3
        while True:
            if k == 7:
                K = ceil(4.864*logn)
                M = ceil(2*(n/11)^(1/4))
            for y in (2..M):
                p = y^euler_phi(k)*cyclotomic_polynomial(k)
                for x in (1..y):
                    if n == p(x/y): return True
            k += 1
            if k > K: break
        return False
    def A296095list(upto):
        return [n for n in (1..upto) if isA296095(n)]
    print(A296095list(122)) # Peter Luschny, Feb 28 2018