Skip to content

Commit 77c66de

Browse files
authored
Add README for Riemann Zeta Function dataset
This README provides a comprehensive overview of the dataset, methodology, and usage instructions for the first 1,000 nontrivial zeros of the Riemann zeta function.
1 parent 29d3f17 commit 77c66de

1 file changed

Lines changed: 137 additions & 0 deletions

File tree

README.md

Lines changed: 137 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,137 @@
1+
# Certified First 1,000 Zeros of the Riemann Zeta Function
2+
3+
This repository contains the final certified dataset of the first **1,000 nontrivial zeros**
4+
of the Riemann zeta function
5+
\[
6+
\zeta\!\left(\tfrac12 + it\right),
7+
\]
8+
produced using a **dual-evaluator method**, a **hexagonal argument-principle contour**, strict
9+
**Krawczyk uniqueness isolation**, and an **automatic refinement pipeline** that corrects any
10+
multi-zero contours or weak contraction regions.
11+
12+
The goal is to provide a clean, reproducible, and verifiable reference dataset for research,
13+
analysis, numerical experiments, or independent verification.
14+
15+
---
16+
17+
## Contents
18+
data/
19+
zeros_1_to_1000_final.json # Final certified dataset
20+
21+
scripts/
22+
unified_zeta_framework_v2.5.py # Full certification engine
23+
zero_analysis_and_scaling.py # Spacing analysis + stability metrics
24+
merge_zero_certs.py # Utility to merge per-range JSONs
25+
These are the only files needed to reproduce the dataset from scratch.
26+
27+
---
28+
29+
## Method Summary
30+
31+
### **1. Dual ζ Evaluators (Consistency Check)**
32+
Each contour evaluation uses two independent ζ functions:
33+
34+
- `mpmath.zeta(s)`
35+
- Dirichlet η-series partial summation
36+
37+
The maximum disagreement (`max_evaluator_diff_on_contour`) confirms numerical stability.
38+
39+
---
40+
41+
### **2. Hexagonal Contour + Argument Principle**
42+
Each zero is enclosed inside a hexagonal contour.
43+
Winding numbers are computed for both evaluators:
44+
45+
- `wA_int = 1`
46+
- `wB_int = 1`
47+
48+
Any contour that encloses more than one zero (`w = 2`) automatically triggers refinement.
49+
50+
---
51+
52+
### **3. Wavelength-Limited Sampling**
53+
Contour sampling is governed by a Nyquist-style bound using the local phase speed of
54+
\[
55+
\frac{\zeta'}{\zeta},
56+
\]
57+
ensuring correct resolution of phase jumps and preventing aliasing.
58+
59+
---
60+
61+
### **4. Krawczyk Uniqueness Test**
62+
Each zero is validated with a 2D Krawczyk operator, verifying:
63+
64+
- `β < 1` (contraction)
65+
- `ρ ≤ r_box` (isolation)
66+
- exactly **one** zero exists in the box
67+
68+
If any condition fails, refinement is automatically applied.
69+
70+
---
71+
72+
### **5. Automatic Refinement**
73+
For any zero where the contour or Krawczyk test fails:
74+
75+
- contour radius is reduced
76+
- Krawczyk box is reduced
77+
- evaluator agreement rechecked
78+
- the full certification cycle repeats
79+
80+
This continues until the zero satisfies:
81+
82+
- `wA_int = wB_int = 1`
83+
- `β` safely below 1
84+
- `ρ ≤ r_box`
85+
- evaluator agreement is stable
86+
87+
---
88+
89+
## Dataset
90+
91+
The file:
92+
data/zeros_1_to_1000_final.json
93+
94+
contains, for each zero:
95+
96+
- `zero_index`
97+
- `approx_zero.t` (the height)
98+
- modulus bounds (`min_abs_zeta_on_contour`)
99+
- evaluator agreement (`max_evaluator_diff_on_contour`)
100+
- winding numbers (`wA`, `wB`, `wA_int`, `wB_int`)
101+
- full Krawczyk isolation fields (`beta`, `rho`, `r_box`, `success`)
102+
- contour geometry parameters
103+
104+
This dataset is ready for:
105+
106+
- visualization
107+
- GUE spacing experiments
108+
- analytic number theory research
109+
- replication or extension
110+
111+
---
112+
113+
## Usage
114+
115+
### Certify a new range:
116+
117+
```bash
118+
python scripts/unified_zeta_framework_v2.5.py --range 101 150
119+
120+
Analyze spacing statistics:
121+
python scripts/zero_analysis_and_scaling.py --analyze data/zeros_1_to_1000_final.json
122+
Merge multiple certificate files:
123+
python scripts/merge_zero_certs.py --output merged.json zeros_*.json
124+
125+
Authors
126+
127+
Kristin Nicholson
128+
Chance Nicholson
129+
130+
Both authors contributed to the methodology, numerical design,
131+
refinement system, and certification pipeline used to generate the
132+
final verified dataset of the first 1,000 nontrivial zeros of the
133+
Riemann zeta function.
134+
135+
License
136+
137+
MIT License — free for academic, commercial, and independent research use.

0 commit comments

Comments
 (0)