|
Papers:
List Papers;
(with Abstracts);
Curriculum (in Italian):
long version ;
short version;
in English:
long version.
Google Scholar profile.
ResearchGate page.
Orcid ID.
Scopus Author ID.
Web of Science Researcher ID,
Mathematical Reviews page,
Zentralblatt page,
IRIS-CINECA bibliometric parameters (italian ASN) [2023].
English C1 badge.
Computation of the Euler-Kronecker constants for prime cyclotomic fields
(and some related problems)
A. Languasco
In this page I collect some links concerning the computation of the
Euler-Kronecker constants for prime cyclotomic fields,
the maximum over non trivial characters
for the logarithmic derivative at 1 of Dirichlet L-functions
modulo q (q odd prime up to 10^6)
and the generalised Euler constants in arithmetic progressions.
In a recent paper [1], I introduced a faster method to compute the
Euler-Kronecker constants for prime cyclotomic fields and, as a by-product,
I also applied it to estimate the maximum of the absolute value
of the logarithmic derivative at 1 of Dirichlet L-functions with prime modulus
and to evaluate the generalised Euler constants in arithmetic progressions.
In particular in [1], using such an improved algorithm, I established that
𝔊9109334831 = -0.248739...
and
𝔊9854964401 = -0.096465...
thus getting a two new negative values for 𝔊q;
remark also that 𝔊9109334831 is the new minimal known
value.
The previous record was obtained in 2014 by Ford, Luca and Moree
in [2] and was 𝔊964477901 = -0.182374...
I describe here the Pari/GP scripts and
the C programs used.
More detailed instructions on how to use the C programs are here:
How-it-works.txt.
I have to state the obvious
fact that if you wish to use some of the softwares below for your own research,
you should acknowledge the author and cite the relevant paper in which the program
was used first. In other words, you can use them but you have to
cite the paper of mine that contains such programs.
If you are wondering why I am stating something so trivial, please have a look at P0 here:
A.Languasco-Programs
Pari/GP scripts
Euler-Kronecker constants computation:
EK-direct-final.gp:
Pari/GP
script. It can be used via
gp2c.
The function to be run is:
global_eulerkronecker_direct (r1,r2,defaultprecision).
Input: 2< r1 < r2, two integers; defaultprecision is the number of digits requested.
Output: 𝔊q and 𝔊q+ for every odd prime
q such that r1≤q≤r2 and the running times.
Comment: it uses the lfun command of Pari/GP and the Conrey
description of Dirichlet characters. Examples on how to use the function
and computational results are collected towards the end of the file.
EK-T-final.gp:
Pari/GP
script. It can be used via
gp2c.
The function to be run is:
global_eulerkroneckerT (r1,r2,defaultprecision,flag).
Input: 2< r1 < r2, two integers; defaultprecision is the number of digits requested; flag
(defalult =0): if nonzero computes also the Euler generalised constant γ0(a,q)
and γ1(a,q), 1≤a≤q.
Output: 𝔊q and 𝔊q+ for every odd prime q
such that r1≤q≤r2 and the running times.
Comments: it computes first the needed values of ψ and T at the a/q points,
see [1], and then obtain 𝔊q and 𝔊q+ with a trivial implementation of the sum over a, 1≤a≤q-1.
Examples on how to use the function
and computational results are collected towards the end of the file.
EK-S-DIF-final.gp:
Pari/GP
script. It can be used via
gp2c.
The function to be run is:
global_eulerkroneckerS_DIF (r1,r2,defaultprecision).
Input: 2< r1 < r2, two integers; defaultprecision is the number of digits requested.
Output: 𝔊q and 𝔊q+ for every odd prime q
such that r1≤q≤r2 and the running times.
Comments: it computes first the values of log(Γ) and the decimated in frequency
values of S at the a/q points, see [1], and then obtain 𝔊q and 𝔊q+ with a trivial implementation of the sum
over a, 1≤a≤q-1. Examples on how to use the function
and computational results are collected towards the end of the file.
Generalised Euler constants in arithmetic progressions:
Gen-Euler-constants.gp:
Pari/GP
script. It can be used via
gp2c.
The function to be run is:
gk(k,r1,r2,defaultprecision).
Input: k≥1 is an integer,r1 ≤ r2 two integers; defaultprecision is the number of digits
requested.
Output: γk(a,q) for every q such that r1≤q≤r2 and 1≤a≤q.
Comments: it uses the values of T
at the a/q points and then obtain γk(a,q)
as described in [1]. Examples on how to use the function
and computational results are collected towards the end of the file.
Greedy sequence of prime offsets:
greedy_seq.gp:
Pari/GP
script. It can be used via
gp2c.
The function to be run is:
greedy()
whose output is the first 2088 terms of
the greedy sequence of prime offsets.
Such values are
used to evaluate which candidates (q prime) can have small, possibly negative,
values of 𝔊q. An exhaustive search for every prime q up to 10^(10) were performed
to towards the end a list of q with evalutation greater than 1.2; for very few primes
such a condition holds.
Maximum over non trivial characters
for the logarithmic derivative at 1 of Dirichlet L-functions
modulo q:
Max-direct-final.gp:
Pari/GP
script. It can be used via
gp2c.
The function to be run is:
max_direct (r1,r2,defaultprecision).
Input: 2< r1 < r2, two integers; defaultprecision is the number of digits requested.
Output: the value Mq (distinguishing between even and odd characters)
for every odd prime q such that r1≤q≤r2 and the running times.
Comment: it uses the lfun command of Pari/GP and the Conrey
description of Dirichlet characters. Examples on how to use the function
and computational results are collected towards the end of the file.
Max-S-final.gp:
Pari/GP
script. It can be used via
gp2c.
The function to be run is:
maxS_DIF (r1,r2,defaultprecision).
Input: 2< r1 < r2, two integers; defaultprecision is the number of digits requested.
Output: the value Mq (distinguishing between even and odd characters)
for every odd prime q such that r1≤q≤r2 and the running times.
Comments: it computes first the values of log(Γ) and the decimated in frequency
values of S at the a/q points, see [1], and then obtain Mq with a trivial implementation of the sum
over a, 1≤a≤q-1. Examples on how to use the function
and computational results are collected towards the end of the file.
Max-T-final.gp:
Pari/GP
script. It can be used via
gp2c.
The function to be run is:
maxT (r1,r2,defaultprecision).
Input: 2< r1 < r2, two integers; defaultprecision is the number of digits requested.
Output: the value Mq (distinguishing between even and odd characters)
for every odd prime q such that r1≤q≤r2 and the running times.
Comments: it computes first the needed values of ψ and T at the a/q points,
see [1], and then obtain Mq with a trivial implementation of the sum
over a, 1≤a≤q-1. Examples on how to use the function
and computational results are collected towards the end of the file.
C programs
Examples on how to use the following programs and the results obtained
with them are contained in the directory:
results.
Towards the end of each file are inserted the compilation instructions
for some of the machines used for performing the actual computations.
Precomputations:
EKmain.c:
C program.
input: an odd prime q.
output: the ascii file primroot.res contains q and g, a primitive root mod q.
m_precpsi.c:
C program. Computes the needed values of ψ(a/q), a =gj mod q, g=primroot,
for j in a given interval [x,y]. Saves the results on an ASCII file.
input: the file primroot.res (reads q and g), 0≤ x < y ≤ q-2: integers.
output: the ascii file precψ--x-y.res contains q in its first line and then,
line by line, the values of ψ(gj/q), x≤j≤y.
DIFm_precS.c:
C program. Computes the needed decimated in frequency values of -(S(a/q)+S(1-a/q)),
a =gj mod q, g=primroot, 1-a/q = gj+m/q, m=(q-1)/2,
for j in a given interval [x,y]. Saves the results on an ASCII file.
input: the file primroot.res (reads q and g), 0≤ x < y ≤ q-2: integers.
output: the ascii file precomp_S-DIF--x-y.res contains q in its first line and then,
line by line, the decimated in frequency values of S. i.e.
the values of -(S(gj/q)+S(1-gj/q)), m=(q-1)/2, x≤j≤y.
m_precT.c:
C program. Computes the needed values of -T(a/q), a =gj mod q, g=primroot,
for j in a given interval [x,y]. Saves the results on an ASCII file.
input: the file primroot.res (reads q and g), 0≤ x < y ≤ q-2: integers.
output: the ascii file precT--x-y.res contains q in its first line and then,
line by line, the values of -T(gj/q), x≤j≤y.
FFT step:
(using the FFTW library):
All the following programs use the FFTW-guru64 interface (which also allows to transform
sequences having dimension larger
than 231-1).
Euler-Kronecker constants computation:
EK-S-fftwl.c:
C program.
It computes 𝔊q+ and 𝔊q via FFT; it needs the fftw library.
It's the long double precision version. Values of log(Γ) are computed
using the internal function of the C programming language.
Uses the decimated in frequency values for S and the sequence gk mod q.
input: the ascii files primroot.res, precomp_S-DIF.res.
output: the values 𝔊q+ and 𝔊q and their difference
together with the running times.
EK-T-fftwl.c:
C program.
It computes 𝔊q+ and 𝔊q via FFT; it needs the fftw library.
It's the long double precision version. Double precision values of ψ are computed
using the GSL library.
input: the ascii files primroot.res, precomp_T.res.
output: the values 𝔊q+ and 𝔊q and their difference
together with the running times.
An alternative version of EK-T-fftwl.c (which uses the ψ function values generated by
the program m_precpsi previously described; precomputed and stored on an external file
as for T and S) is also available on request together with the quadruple precision
versions of all the previously mentioned programs.
Maximum over non trivial characters
for the logarithmic derivative at 1 of Dirichlet L-functions
modulo q:
Max-S-fftwl.c:
C program.
It computes Mq via FFT; it needs the fftw library.
It's the long double precision version. Values of log(Γ) are computed
using the internal function of the C programming language.
Uses the decimated in frequency values for S and the sequence gk mod q.
input: the ascii files primroot.res, precomp_S-DIF.res.
output: the value Mq (distinguishing between even and odd characters) and the running times.
Max-T-fftwl.c:
C program.
It computes Mq via FFT; it needs the fftw library.
It's the long double precision version. Double precision values of ψ are computed
using the GSL library.
input: the ascii files primroot.res, precomp_T.res.
output: the value Mq (distinguishing between even and odd characters) and the running times.
Results
The results presented in [1] can be retrieved as follows.
The results for 𝔊q+, 𝔊q and Mq
for q up to 30011 are contained towards the end of the each gp scripts listed before.
The results for 𝔊q+ and 𝔊q for q from 40009 up to 75743411
were obtained with the C programs (and the FFTW
library) and are collected as .zip files in the directory
results.
The results for 𝔊q+, 𝔊q and Mq
for every prime between 3 and 10^6 were obtained with the
C programs (and the FFTW library) on the cluster of the Math. Dept. of the University of
Padova; they can be found in a csv file here:
results;
the analysis on this file were performed using a python3-pandas
script (also included there).
In the directory
plots you can find the scatter
plots of the normalised results of 𝔊q+, 𝔊q
and Mq for every prime between 3 and 10^6.
The results for 𝔊q+ and 𝔊q with q≥ 193894451 were obtained with the C programs
(and the FFTW library) on the cluster of the Math. Dept. or
on the C.A.P.R.I. (Calcolo ad Alte Prestazioni per la Ricerca e l'Innovazione) infrastructure of the University of Padova.
They involve huge files to store the needed values for T, S (and ψ; ascii files of about
20GB for S and 40 GB T and ψ for q= 964477901, for instance) and hence cannot be here included. We can just
insert a .txt file with the output of the final fft-programs.
References
Some of the papers connected with this project are the following.
[1] A. Languasco -
Efficient computation of the Euler-Kronecker constants for prime cyclotomic fields
- Research in Number Theory 7 (2021), no. 1, Paper no. 2.
[2] K. Ford; F. Luca; P. Moree -
Values of the Euler phi-function not divisible by a given odd prime,
and the distribution of Euler-Kronecker constants for cyclotomic fields
- Math. Comp. 83 (2014), 1457-1476.
[3] P. Moree -
Irregular Behaviour of Class Numbers and Euler-Kronecker
Constants of Cyclotomic Fields: The Log Log Log Devil at Play, in
Irregularities in the Distribution of Prime Numbers. From the Era of Helmut
Maier's Matrix Method and Beyond
(J. Pintz and M.Th. Rassias, eds.),
Springer, 2018, pp. 143-163.
[4] A. Languasco, L. Righi -
A fast
algorithm to compute the Ramanujan-Deninger
gamma function and some number-theoretic applications
- Mathematics of Computation 90 (2021), 2899--2921.
Ultimo aggiornamento: 28.09.2024: 10:46:27
|