|
11 | 11 |
|
12 | 12 | \usepackage[]{minted} |
13 | 13 | \newcommand{\lean}[1]{\mintinline{lean}{#1}} |
| 14 | +\usepackage{xspace} |
14 | 15 |
|
15 | 16 | \DeclarePairedDelimiter{\abs}{\lvert}{\rvert} |
16 | 17 | \newcommand*{\ud}{\, \mathrm{d}} |
|
19 | 20 | \newcommand{\nnreal}{\real_{\ge0}} |
20 | 21 | \newcommand{\ennreal}{\overline{\real_{\ge0}}} |
21 | 22 |
|
| 23 | +\newcommand{\mathlib}{\texttt{Mathlib}\xspace} |
| 24 | + |
22 | 25 | % These options can be changed later; these may be personal preferences. |
23 | 26 | \hypersetup{ |
24 | 27 | bookmarks,bookmarksopen,bookmarksnumbered, |
25 | 28 | colorlinks = true, |
26 | 29 | linkcolor = blue, |
27 | 30 | citecolor = red, |
28 | | - urlcolor = grey, |
| 31 | + urlcolor = gray, |
29 | 32 | breaklinks |
30 | 33 | } |
31 | 34 | % maxbibnames: List all authors in the bibliography for up to 5 authors. Use up to 4 names for determining the label. Choose alphabetical style. |
@@ -124,6 +127,19 @@ \section{Introduction}\label{sec:intro} |
124 | 127 | \subsection{Brief history of Carleson's theorem and significance}\label{subsec:history} |
125 | 128 |
|
126 | 129 | \subsection{Overview of the formalization project}\label{subsec:overview} |
| 130 | +% TODO: I assume that the classical and generalized Carleson theorems will already be mentioned in the previous subsection, so that I can cite them here. |
| 131 | +The goal of the Carleson project was to formalize the proof of the metric space Carleson theorem [ref], proven in \cite{ThieleCarlesonPreprint}, as well as the proof of the classical Carleson theorem [ref] as a corollary of this more general result. |
| 132 | + |
| 133 | +The original reference \cite{ThieleCarlesonPreprint} was written as a traditional paper for experts in harmonic analysis, but its formalization was since the beginning envisioned as a large scale collaborative project. This posed a problem, since there are not many experts in formalization that are also experts in harmonic analysis, so most of the potential contributors to the formalization would not have the required expertise to fill in the gaps that are considered routine arguments in a harmonic analysis paper. |
| 134 | + |
| 135 | +To address this challenge, before the formalization started, the authors of \cite{ThieleCarlesonPreprint} wrote a much more detailed document \cite{CarlesonBlueprint} intended as a blueprint for the formalization, which was modified as needed while the formalization process was taking place (see \S\ref{sec:blueprint}). |
| 136 | + |
| 137 | +The Carleson formalization project was publicly announced and opened to contributors in June 2024, and it was completed in July 2025. The core authors of the formalization are the 14 authors of this paper, and other smaller contributions were made by the 14 people listed in the acknowledgements section. This makes the Carleson project one of the largest scale formalization efforts up to date. |
| 138 | + |
| 139 | +The formalization was written in Lean 4, making extensive use of Lean's mathematical library, \mathlib. The code was developed in a public GitHub repository\footnote{\url{https://github.com/fpvandoorn/carleson}}, with an associated website\footnote{\url{https://florisvandoorn.com/carleson/}} that also linked to HTML and PDF versions of the blueprint. Coordination among project collaborators took place using the Lean community Zulip chat\footnote{\url{https://leanprover.zulipchat.com}}. For more details, see \S\ref{sec:org}. |
| 140 | + |
| 141 | +%TODO: update stats before submitting |
| 142 | +The project comprises around 38,000 lines of Lean code (not including spaces or comments), of which around 12,000 are intended to be upstreamed to the \mathlib library, a process that is still ongoing. Pull requests into \mathlib coming from this project are marked with the \lean{carleson} tag; at the time of writing this article, this includes 90 merged pull requests and 11 more under review. |
127 | 143 |
|
128 | 144 | \subsection{Related work}\label{subsec:rel_work} |
129 | 145 | \begin{itemize} |
@@ -236,6 +252,7 @@ \subsection{Lessons learned}\label{subsec:blueprint_lessons} |
236 | 252 | \section{Design decisions}\label{sec:design} |
237 | 253 | \subsection{Treatment of constants}\label{subsec:constants} |
238 | 254 |
|
| 255 | + |
239 | 256 | \subsection{The \texttt{ProofData} pattern}\label{subsec:proof_data} |
240 | 257 |
|
241 | 258 | \subsection{Working with real numbers}\label{subsec:real} |
|
0 commit comments