The Sphere Packing Project | Post 1 - The Story
The Sphere Packing Project maintainers tell the story of the project, up to the recent autoformalisation.
The Sphere Packing Project maintainers tell the story of the project, up to the recent autoformalisation.
This is the final post in our simproc series.
In our first two posts, we gave an informal introduction to the concept of a simproc,
and a brief overview of the inner workings of the simp tactic.
The aim of this final post is to build on this by demonstrating how Lean users can write their own simprocs.
It often happens in formalisation that a type of interest is a subobject of another type of interest. For example, the unit circle in the complex plane is naturally a submonoid1.
What is the best way of defining this unit circle on top of Complex?
This blog post examines the pros and cons of the available designs.
This is the second blog post in a series of three. In the first blog post, we introduced the notion of a simproc, which can be thought of as a form of "modular" simp lemma. In this sequel, we give a more detailed exposition of the inner workings of the simp tactic in preparation of our third post, where we will see how to write new simprocs.
This is a brief report on the CMI HIMR Summer School on Formalizing Class Field Theory, held at the Mathematical Institute, University of Oxford on 21–25 July, 2025.
This is a report on the Simons Foundation's 2025 MPS (Mathematics and Physical Sciences) Workshop on Lean, held in New York City on June 16 - 25, 2025.
A post for beginners on the different ways to search for theorems in mathlib, inspired by this talk from Jireh Loreaux.
This February saw the birth of the Toric project, whose aim is to build the theory of toric varieties following Toric Varieties by Cox, Little and Schenck.
We soon discovered that toric varieties contained tori, and that Mathlib didn't.
This blog post is a double announcement:
Two significant results about abelian categories have recently been added to mathlib. The first is that any Grothendieck abelian category has enough injectives, and it follows from a general construction known as the small object argument. The second is the Freyd-Mitchell theorem which states that any abelian category admits a fully faithful exact functor to a category of modules.
Lean v4.6.0 (back in February 2024!) added support for custom simplification procedures, aka simprocs. This blog post is the first in a series of three aimed at explaining what a simproc is, what kind of problems can be solved with simprocs, and what tools we have to write them. Here is the second blog post.