Implementation to compute graded rings of Hilbert modular forms in Magma.
Explanations about the Magma source code in each directory.
This project builds on the current Hilbert modular form implementation in Magma. The source code in ModFrmHil connects this work to the current implementation.
The ModFrmHilD
class represents the additional functionality we are adding to ModFrmHil
.
The D
in this name stands for Dartmouth where this project originated.
Source code to compute formulas for Hilbert series of Hilbert modular surfaces.
Package specification files, or spec
files, help organize imports in various places.
Package specification documentation: http://magma.maths.usyd.edu.au/magma/handbook/text/24#181.
Example computations that are run during CI via run_tests.m
.
These examples can also be executed individually using
magma Tests/filename.m
These files are similar to files in Tests, but not run during CI.
Scripts should include calling information in a comment at the top of the file. For example, we can run generate_hs.m
using the following command.
magma -b D:=13 ambient:=SL gamma:=Gamma0 scripts/generate_kposs.m
These scripts are then used to generate data for https://github.com/edgarcosta/hilbertmodularsurfacesdata which ultimately ends up on https://teal.lmfdb.xyz/HilbertModularSurface/Q/. These can be run using the following command.
A=GL;G=Gamma0;t=kposs;name=${A}_${G}_lt3000_cut5000_${t}; time parallel --joblog data/joblog/${name}.txt --results data/results/${name} --eta -j 64 magma -b cut:=5000 D:={} ambient:=$A gamma:=$G scripts/generate_${t}.m ::: {1..3000} > data/${name}.txt
TODO: explain how to call counts_and_timings.m
This is unfinished work to verify computed equations against equations in the literature.
Examples that may or may not run successfully, but have code or comments that may be useful or informative. Once a file has been polished and appropriate for public consumption it can be moved to Examples or Tests.