forked from kedlaya/root-unitary
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathREADME
43 lines (32 loc) · 1.83 KB
/
README
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
This package implements a search strategy for root-unitary polynomials
(polynomials with all roots on the unit circle) described in:
K.S. Kedlaya, Search techniques for root-unitary polynomials, in
Computational Arithmetic Geometry, Contemporary Mathematics 463,
American Mathematical Society, 2008, 71-82;
plus some additional improvements described in:
K.S. Kedlaya and A.V. Sutherland, A census of zeta functions of
quartic K3 surfaces over F_2, preprint (2015).
There are currently six source files:
-- prescribed_roots.sage: Sage code for user interaction
-- prescribed_roots_pyx.spyx: Cython intermediate layer wrapping C code
-- all_roots_in_interval.c: C code, using FLINT library, to test whether
a polynomial has its roots in a given interval (Sturm's theorem)
-- all_roots_in_interval.h: associated header file
-- power_sums.c: C code, using FLINT library, to enumerate the tree based on
Sturm's theorem and additional bounds computed from power sums
-- power_sums.h: associated header file
From a Sage prompt, type
sage: load("prescribed_roots.sage")
and everything should compile automatically.
There is one test script in this directory:
-- search-test.sage: Run computations from the 2008 paper
The scripts in the k3-scripts directory generate certain lists associated to
K3 surfaces. See the README file in that directory for more information.
The k3-quartic-f2 directory contains scripts and data files associated to
smooth quartic K3 surfaces over F_2. See the README file in that directory
and the paper "A census of zeta functions..." for more information.
POSSIBLE TODO LIST:
-- Improve parallel computation in the current Cython model.
-- Port from Sage (based on Python) to Nemo (based on Julia).
-- Add some floating-point computations to isolate roots, thus reducing
the dependence on Sturm's theorem.