A296095 Integers represented by cyclotomic binary forms.
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
Keywords
Links
- Peter Luschny, Table of n, a(n) for n = 1..1000 (terms 1..519 from Michel Waldschmidt).
- Étienne Fouvry, Claude Levesque, and Michel Waldschmidt, Representation of integers by cyclotomic binary forms, arXiv:1712.09019 [math.NT], 2017.
Crossrefs
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
Comments