Papers
Topics
Authors
Recent
Gemini 2.5 Flash
Gemini 2.5 Flash
139 tokens/sec
GPT-4o
7 tokens/sec
Gemini 2.5 Pro Pro
46 tokens/sec
o3 Pro
4 tokens/sec
GPT-4.1 Pro
38 tokens/sec
DeepSeek R1 via Azure Pro
28 tokens/sec
2000 character limit reached

Formalizing zeta and L-functions in Lean (2503.00959v4)

Published 2 Mar 2025 in math.NT, cs.FL, and cs.LO

Abstract: The Riemann zeta function, and more generally the L-functions of Dirichlet characters, are among the central objects of study in number theory. We report on a project to formalize the theory of these objects in Lean's "Mathlib" library, including a proof of Dirichlet's theorem on primes in arithmetic progressions and a formal statement of the Riemann hypothesis

Summary

Formalizing Zeta and L-Functions in Lean: An Analytic Number Theory Perspective

This paper elaborates on a rigorous endeavor to formalize significant concepts in analytic number theory—particularly the Riemann zeta function and Dirichlet L-functions—within the Lean theorem prover's Mathlib library. Authored by David Loeffler and Michael Stoll, the work aims to integrate these mathematical constructs into a formal framework, enabling their precise manipulation in automated theorem proving environments.

Mathematical Foundation

The Riemann zeta function, denoted as ζ(s), is a keystone of analytic number theory, deeply intertwined with the distribution of prime numbers. The function, uniquely holomorphic except at s=1s = 1, is introduced alongside its well-established properties, such as Euler's product formula ζ(s)=p prime(1ps)1\zeta(s) = \prod_{p \text{ prime}} (1-p^{-s})^{-1} and the functional equation ζ(s)=2sπs1sin(πs2)Γ(1s)ζ(1s)\zeta(s) = 2^s\pi^{s-1}\sin\left(\frac{\pi s}{2}\right)\Gamma(1-s)\zeta(1-s). Building on this foundation, the authors extend their formalization to Dirichlet L-functions, L(x,s)L(x, s), associated with Dirichlet characters.

Formalization in Mathlib

In their contribution to Mathlib, the project formalizes several important properties and results related to zeta and L-functions, including:

  • Definitions and proofs of key properties, such as the non-vanishing of ζ(s) for Re(s)1\text{Re}(s) \geq 1 and Dirichlet's theorem on primes in arithmetic progressions.
  • Formal statements of conjectures like the Riemann Hypothesis.

The formalizations involve defining and verifying properties within the Lean language, ensuring their utility for further automated proofs and explorations in number theory.

Implementation of L-Series and Fourier Analysis

The implementation of L-series required significant changes to Mathlib to accommodate coercion issues inherent in arithmetic functions. By designing a framework where functions map positive natural numbers to complex numbers, the authors establish a coherent setup for handling L-series without code duplication issues.

Fourier analysis plays a crucial role in formalizing zeta functions, especially via the Fourier transform and Poisson Summation Formula. Such tools enable the authors to derive the meromorphic continuation and functional equations for these important number-theoretic functions.

Extension to Modular Form Theory

Beyond just zeta and L-functions, the paper presents an axiomatic system for extending these methods to modular forms. The authors introduce the concept of FE-pairs to generalize their results, setting the foundation for formalizing properties of L-functions associated with higher-weight modular forms.

Challenges and Pitfalls

The authors discuss pitfalls in the process of "totalizing" functions, notably addressing issues in the formalization of the Riemann Hypothesis where junk values might lead to trivializing a conjecture. This aspect emphasizes the need for precision in foundational setups to prevent logical errors in automated theorem proving.

Conclusion and Future Work

This paper contributes significantly to the intersection of formal methods and number theory. By formalizing critical elements in Mathlib, it lays the groundwork for future advances in verified mathematical computation and theorem proving. Planned extensions include proving a quantitative version of the Prime Number Theorem, further demonstrating the formal system's potential. This work represents a substantive move towards automated reasoning in number theory, promising enhanced computational techniques and deeper insights into classical problems.