This is part of an undergraduate research project at University of Toronto, Math Department that
aims to verify the non-existence of Landau-Siegel zero in the region
Let
Landau proved that there is a constant
where
If such a zero exists, then it is necessarily real and the associated character
Such a zero, if it exists, is called a Landau–Siegel zero or an exceptional zero.
Running this program on Compute Canada's Nibi clusters, we computationally verified that Landau–Siegel zeros do not
exist for any primitive quadratic character of modulus
Theorem 1.
Let
with
To build and run the computational verification code, you will need the following system dependencies:
- FLINT (Fast Library for Number Theory) ≥ 2.9
- CMake ≥ 3.20 (for building the project)
- MPI (Message Passing Interface, e.g. OpenMPI or MPICH) for parallel execution
Make sure these are installed and available in your system path.
After installing the requirements and building the project, you can run the computations as follows.
Run 'misc/precompute_kronecker.c' to generate chi'txt. After the file is generated, move it to the /input dirctory.
Edit src/CMakeLists.txt to choose the version of main program to run (either main.c, main_by_file.c, or main_test_ind.c).
From the repository root:
mkdir build
cd build
cmake ..
cmake --build .From the repository root use the following mpi command to run, change 10 to desired number of MPI processes.
mpirun -np 10 ./build/src/mpiTestIf one wants to run the verification on a list of input.txt and store it in /input
dirctory.
All source code is stored in the directory /src. All input files are stored in /input dirctory.
/test dirctory contains all unit tests for this project and /misc conatins all other helping code and scripts.
By Rick Lu, Asif Zaman, and Haonan Zhao