I have made a number of contributions to Lean's mathematical library mathlib and beyond. Here is a broad overview; all my (merged and pending) contributions can be found on GitHub. This page was last updated on: October 27th, 2025
I have made a number of contributions to mathlib's differential geometry, relating to a few linked themes.
Building on Sébastien Gouezel's definition of Riemannian manifolds, we define affine connections on a vector bundle.
      We prove the classification of affine connections over a trivial bundle and are working on defining the induced Ehresman connection.
      We also prove the existence and uniqueness of the Levi-Civita connection (on a Riemannian manifold), also known as the fundamental theorem of Riemannian geometry.
      The proof of uniqueness is complete; existence is close to completion.
      This project comprises about 7000 lines of code so far: about 3000 have been merged already, the remainder is awaiting mathlib review or will eventually be merged. This project is where the metaprogramming work on elaborators originated.
The basic prerequisites are already merged into mathlib; about 1000 lines are still unmerged (since they require a nice definition of embedded submanifolds).
I have proven the reflexivity and symmetry, but not (yet) transitivity of the bordism relation (as this would require the collar neighbourhood theorem and gluing of manifolds, both of which are a significant amount of work).
The correct definition of smooth embeddings (suitable for Banach manifolds with corners) is different from the standard textbook definition, but reduces to it in finite dimensions over a complete field.
      This project is work in progress (at 2000-3000 lines already); it will include proofs that compositions of immersions/smooth embeddings are smooth embeddings, as well as various standard constructions.
      A clean definition of "smooth manifold with boundary but no corners" will use this, so this is necessary for merging my bordism theory work above.
This is a cornerstone of differential topology (and a special case of the Sard-Smale theorem, which features in my PhD research a lot). I have formalised the reduction from manifolds to normed spaces; Yury Kudryashov and I are now slowly working on Moreira's generalisation of Sard's theorem (on normed spaces). Some contributions include sigma-compact sets, nowhere dense and meagre sets, a theory of local diffeomorphisms and the measure zero filter on a manifold.
While I have written several hundred lines of new code for the Carleson project, my biggest contribution has been of a different kind: generalising Jim Portegies' proof of the Marcinkiewicz real interpolation theorem to also apply to functions into the extended non-negative real numbers $\overline{\mathbb{R}}$. To encompass both the standard setting and this one, we invented a new abstraction of ENormed spaces (which includes normed spaces and $\overline{\mathbb{R}}$). I generalised Jim's proof to this setting (rewriting and cleaning up about 5000 lines of Lean code). This work also included generalising many definitions and lemmas from mathlib that were used; this resulted in about 2500 lines of code modified in mathlib.
I have made various contributions to different kinds of meta-programming tasks
I have helped to create mathlib's new review and triage dashboard. After Johan Commelin wrote an initial prototype, I jumped in and became the main author. As of September 2025, the overall code comprises 4500 lines of Python code, as well as 1000 lines of shell scripts, graphql queries etc. I have authored about 90% of these.
  The dashboard provides an overview of all incoming contributions requests to mathlib, allows tracking their overall status and helps to find an appropriate reviewer for each of them. It has changed how many maintainers and reviewers work. Maintaining and further improving this tool is one of the focuses of the new mathlib initiative, and I am very grateful Bryan Chen is now maintaining it.