Xena Project
xenaproject.wordpress.com · Personal blog · on HN since 2018
Kevin Buzzard, a mathematician at Imperial College London, writes about formalising mathematics in the Lean proof assistant and AI's role in maths.
What HN saysHN commenters point to it for Lean formalisation projects and discussion of AI doing maths, and some note the author's access to free AI subscriptions.
74HN people shared it
45linked it in comments
41stories submitted
1.7Kstory points
3 months agolast shared
2018people per year2026
Most-shared posts
- 1Half a year of the Liquid Tensor Experiment: developments14 people · 22 points · first shared 2021 · 1 comments on HN
- 2Division by zero in type theory: a FAQ13 people · 121 points · first shared 2020 · 82 comments on HN
- 3Homepage6 people · first shared 2019
- 4Fermat's Last Theorem – how it’s going5 people · 443 points · first shared 2024 · 210 comments on HN
- 5A mathematical formalisation challenge by Peter Scholze5 people · 79 points · first shared 2020 · 24 comments on HN
- 6Formalization of Erdős Problems4 people · 10 points · first shared 2025 · 1 comments on HN
- 7Human mathematicians are being outcounterexampled4 people · 9 points · first shared 2026 · discussion on HN
- 8Can AI do maths yet? Thoughts from a mathematician3 people · 390 points · first shared 2024 · 350 comments on HN
- 9Lean in 20243 people · 3 points · first shared 2024 · discussion on HN
- 10Does anyone know a proof of fermats last theorem3 people · first shared 2019
- 11Formalising Mathematics: An Introduction2 people · 211 points · first shared 2021 · 116 comments on HN
- 12Where is the fashionable mathematics?2 people · 85 points · first shared 2020 · 64 comments on HN
- 13Beyond the Liquid Tensor Experiment2 people · 52 points · first shared 2022 · 10 comments on HN
- 14Think of a Number2 people · 40 points · first shared 2025 · 8 comments on HN
- 15Lean is better for proper maths than all the other theorem provers2 people · 11 points · first shared 2020 · 1 comments on HN
What HN people wrote when they linked it
danabramov · 2025-04-09
Haha thanks, I know it's not everyone's cup of tea but I appreciate kind words, and GEB is too obvious of an inspiration. I would highly recommend Terence Tao's Analysis textbook. It's maybe a bit too rigorous/formal (and maybe doesn't quite describe discovery because it develops very standard theory) but it builds in a very pleasant way. If you're interested in Lean, some of Kevin Buzzard's writing at https://xenaproject.wordpress.com/ is similarly pleasant (e.g. https://xenaproject.wordpress.com/2021/04/18/induction-on-equality/).
C-x_C-f · 2022-03-07
The website mentions some good courses, personally I love Richard Borcherds' YouTube channel[1] for both undergraduate and graduate courses. No frills, exceptionally clear, (mostly) bite-sized lectures that cover a good range of material (especially in geometry).
Something that might interest HN's demographic is Kevin Buzzard's Xena Project[2], centered around proof systems (in Lean). The natural numbers game [3] is particularly fun IMHO. I don't know if it counts as learning materials per se but it's certainly instructive.
[1] https://www.youtube.com/channel/UCIyDqfi_cbkp-RU20aBF-MQ/playlists
[2] https://xenaproject.wordpress.com/
[3] https://www.ma.imperial.ac.uk/~buzzard/xena/natural_number_game/
Ericson2314 · 2021-10-12
Yes, "computers that do the stuff", and "communication method that can be verified up to self-consistency" are best not conflated.
I like thinking about https://hapgood.us/2015/10/17/the-garden-and-the-stream-a-technopastor… and https://xenaproject.wordpress.com/
Historically, desk jobs meant producing and computing streams of documents, and the integration was mostly informal, in our heads. Now, we can collaborate directly rather than shitting out the derivative of what we actually want. This is a huge new capability to enable way better collaboration.
We've seen in programming, but seeing it in an existing discipline like (pure) math would better demonstrate it's ability to supercede existing methods rather than just live along side them as the weird new thing. From pure math, I hope it hits applied math and the sciences next, bridging the shitty-python--LaTeX--thinking divide and getting us more reproducible and trustworthy experimental analysis. Many cool things after that.
wrsh07 · 2026-07-23
Note, in posts like the following, the author indicates they are able to get free subscriptions from OpenAI
As an aside, there's this idea in math that when you create a new field you shouldn't solve all the easy problems - you need to entice other people to learn about the field!
I expect there's some element of that here. It's much better for OpenAI and Anthropic if their users are the ones discovering and writing up the results of the AI solving hard math. Look at the high school and college age students who have become ai power users and potentially learned how to use git to contribute ai generated solutions
(Related: I believe Terry has also gotten all of the subscriptions gifted to him)
https://xenaproject.wordpress.com/2026/07/20/human-mathematicians-are-…
BlackFingolfin · 2025-06-18
A follow up post is at https://xenaproject.wordpress.com/2025/03/16/think-of-a-number-an-upda…
trealira · 2023-12-06
This isn't about Terry Tao specifically, but proof assistants can help you manage a proof when it's gotten too big or complex to manage in your head without making mistakes.
There was this project to use Lean to prove a theorem of Peter Scholze's (Scholze is a well-respected professor and a famous mathemtician). Apparently, it was so big and complex that he could barely keep it in his head, so after writing the proof, he and Kevin Buzzard formalized it with Lean.
https://www.quantamagazine.org/lean-computer-program-confirms-peter-sc…
Then, 6 months later, he was interviewed, where he talks about using Lean for proving his theorem:
https://xenaproject.wordpress.com/2021/06/05/half-a-year-of-the-liquid…
And the experiment was finished in 2022. Announcement: https://leanprover-community.github.io/blog/posts/lte-final/
practal · 2022-05-29
The threshold is mathematicians opting to use these tools themselves for their work. There are not many mathematicians using them so far.
A nice example is the recent formalisation in Lean of some ideas by Peter Scholze: https://xenaproject.wordpress.com/2021/06/05/half-a-year-of-the-liquid…
That's great stuff, which shows what can in principle be done with this technology. But why is a team necessary to formalise Scholze's ideas? Note that Scholze himself doesn't touch Lean. In my opinion, the threshold is reached when Scholze himself sits down DURING the development of his ideas to interact with the proof assistant and develop+verify his ideas.
zmgsabst · 2022-02-02
Mathematics is having a replication crisis and people pay so little attention they don’t know.
That replication crisis has led to efforts in formal verification such as HoTT, Lean, etc.
https://homotopytypetheory.org/
https://xenaproject.wordpress.com/2021/06/05/half-a-year-of-the-liquid…
3PS · 2021-09-10
It's not out of the question for research-level math to be formalized in proof assistants. Most notably, a landmark paper by Peter Scholze (a Fields medalist) was, at his request, formalized in Lean. Or at least, the important part was formalized in about 6 months. See [1] for the post where Scholze asks for help in formalizing the proof and explains why he thinks it's important - in this case it was a very gnarly proof of a theorem that could hopefully be used as a black box by other mathematicians. See [2] for Scholze's thoughts after the project succeeded, 6 months later.
[1] https://xenaproject.wordpress.com/2020/12/05/liquid-tensor-experiment/
[2] https://xenaproject.wordpress.com/2021/06/05/half-a-year-of-the-liquid…
bmitc · 2021-07-04
Thanks for the article/interview. I am intrigued to find Peter Scholze’s own words calling this a “human experience”.
https://xenaproject.wordpress.com/2021/06/05/half-a-year-of-the-liquid…
This is actually a great article that helps to show that humans are still very much involved in convincing each other, using machines to aid to that effect.
Regarding downvotes, you can’t even downvote someone you’ve replied to or they’ve replied to you on Hacker News.
foxes · 2021-07-04
I think the proof assistants are getting very powerful, eg:
https://xenaproject.wordpress.com/2021/06/05/half-a-year-of-the-liquid…
State of the art research explored with lean. I think a certain level of hand wavy romanticism is fine for a HN comment if it can inspire people to be interested in the field. I also would prefer to be corrected in a reasonable discussion than a silent chilling downvote.
mathgenius · 2021-07-04
This is just not accurate.
"I find it absolutely insane that interactive proof assistants are now at the level that within a very reasonable time span they can formally verify difficult original research." Peter Scholze [1].
[1] https://xenaproject.wordpress.com/2021/06/05/half-a-year-of-the-liquid…
deadbeef57 · 2021-06-19
See also [1] for a follow-up blogpost that is less technical.
[1]: https://xenaproject.wordpress.com/2021/06/05/half-a-year-of-the-liquid…
lvh · 2021-06-19
I recommend the following post, by the author of the proof, for deeper context. Especially near the end, they talk about some of the things they're trying to accomplish with it in plain(ish) English.
https://xenaproject.wordpress.com/2020/12/05/liquid-tensor-experiment/
delhanty · 2019-10-10
Mainly for my own reference when I return to this story with more time, links to Professor Kevin Buzzard's project Xena [0][1]
>Basically, Lean can understand mathematics, and can check that it doesn't have any mistakes in. Most of the files here are Lean verifications of various pieces of undergraduate level mathematics.
>Some of the lean files are in a library called Xena. One could imagine Xena as currently studying mathematics at Imperial College London.
[0] https://github.com/kbuzzard/xena
[1] https://xenaproject.wordpress.com/
MaysonL · 2019-10-10
A few links found by following up:
https://xenaproject.wordpress.com
http://wwwf.imperial.ac.uk/~buzzard/one_off_lectures/msr.pdf
http://aitp-conference.org/2019/slides/KB.pdf
https://galois.com/blog/2018/07/the-lean-theorem-prover-
past-present-and-future/
https://florisvandoorn.com
https://florisvandoorn.com/talks/JMM2019formalabstracts.pdf
https://sites.google.com/site/thalespitt/
https://jiggerwit.wordpress.com/2014/05/21/27-formal-proof-projects/
https://jiggerwit.wordpress.com/2016/10/18/elliptic-curve-addition-wit…
https://arxiv.org/abs/1610.05278
robinhouston · 2019-09-29
There’s a great discussion of this on Buzzard’s blog.
https://xenaproject.wordpress.com/2019/09/27/does-anyone-know-a-proof-…
Read the comments too.
DoctorOetker · 2025-07-31
> In any case, to my knowledge, no cipher has ever unconditionally been proven secure except the one time pad.
Essentially yes.
> We just have a bunch of conditional security proof that are correct if the underlying assumptions (e.g. factoring primes is hard) are correct.
Again correct.
regarding Wiles proof of FLT: you may enjoy reading:
https://xenaproject.wordpress.com/2024/12/11/fermats-last-theorem-how-…
I understand you for now lack the information I possess, but from my perspective I can absolutely confirm that FLT is correct, since I have a concise proof of it, which even interested highschoolers would be able to follow.
Even in a world where multiple formalized proofs will exist: who's opinion on the security of modern cryptographic protocols would you be more willing to follow:
those cryptographers who fail to prove FLT on their own, which is 99.999% of cryptographers today
a group of mathematicians that together painstakingly formalize a huge detour to prove it,
or a person who proved FLT on their own, thereby proving Fermat could have done the same, in stark contrast to Wiles who argues that Fermat couldn't have possessed such a proof "since not enough mathematics had developed yet in his era in order to prove it" so to speak?
suppose you find yourself lost in the streets of Tokyo, and ask a Prophessor of Geography how to get to destination X and someone who overhears the conversation the same? The person who overheard the conversation claims…
kmacdough · 2025-04-03
Computers can and should help along the way, but Dijkstra's argument is that a) much of the challenge of human ideas is discovered in the act of converting from natural to formal language and b) that this act, in and of itself, is what trains our formal logical selves.
So he's contesting not only the idea that programs should be specified in natural language, but also the idea that removing our need to understand the formal language would increase our ability to build complex systems.
It's worth noting that much of the "translation" is not translation, but fixing the logical ambiguities, inconsistencies and improper assumptions. Much of it can happen in natural language, if we take Dijkstra seriously, precisely because programmers at the table who have spent their lives formalizing.
There are other professions which require significant formal thinking, such as math. But also, the conversion of old proofs into computer proofs has lead us to discover holes and gaps in many well accepted proofs. Not that much has been overturned, but we still do t have a complete proof for Fermats last theorem [1].
[1] https://xenaproject.wordpress.com/2024/12/11/fermats-last-theorem-how-…
creata · 2023-12-03
> I feel like a proof assistant is amongst the worst places to have something like this
It's one of the best places! You know how in programming, your code looks like this?
func my_function(inputs) -> output
{ do something }
In theorem proving, it's almost the same:
theorem my_theorem(assumptions) -> conclusion
{ prove something }
But there's a single crucial difference: in programming, the "do something" is really important, whereas in Lean, the "prove something" isn't important at all: as long as the typechecker is happy with it, everyone can forget about it once it's written.
So as long as your assumptions and conclusion don't involve any division by zero, it doesn't matter what goes on inside the proof.
Regarding division by zero, you sort of have three options:
* Output an error / checked null when there's division by zero.
* Require a proof that the denominator is nonzero before you're even allowed to use division.
* Allow division by zero, making it return some nonsense. Then, add an assumption that the denominator is nonzero to all your theorems about division.
The first two options (especially the second one) make the definition of functions that involve division horrifically messy. (Idk, it might be easier if Lean had exceptions, but that also sounds messy.) I think that's why Lean goes with the third option.
https://xenaproject.wordpress.com/2020/07/05/division-by-zero-in-type-…
FabHK · 2021-06-19
TIL: Fields medallists ask questions on MathOverflow... [1]
This has me in awe about the depth of mathematics, the pace of progress, the miracle of specialisation. I have a degree in an applied-math-y adjacent field, and understand nothing. (And, btw, I was astonished how knowledgable some commenters right here were, and then realised that we have the (co-)authors of the results themselves here! gotta love HN.)
With that said, here some (non-mathematical) snippets I found interesting (apart from the great word "sheafification"):
> Why do I want a formalization?
> — I spent much of 2019 obsessed with the proof of this theorem, almost getting crazy over it. In the end, we were able to get an argument pinned down on paper, but I think nobody else has dared to look at the details of this, and so I still have some small lingering doubts.
> — while I was very happy to see many study groups on condensed mathematics throughout the world, to my knowledge all of them have stopped short of this proof. (Yes, this proof is not much fun…)
> — I have occasionally been able to be very persuasive even with wrong arguments. (Fun fact: In the selection exams for the international math olympiad, twice I got full points for a wrong solution. Later, I once had a full proof of the weight-monodromy conjecture that passed the judgment of some top mathematicians, but then it turned out to contain a fatal mistake.)
> — I think this may be my most important theorem to date. (It does not really…
jcburnham · 2021-06-08
I think the same problems manifest in math, but to a different degree and in a different way. We do have some expectation of universal mathematics literacy, or at least math is a required subject in most schools around the world.
But I don't think that math education is generally very successful at teaching people math, as described in Lockhart's Lament: https://www.maa.org/sites/default/files/pdf/devlin/LockhartsLament.pdf
My suspicion is that a big part of the issue is the way math is presented early on is really tedious and boring to a lot of people, in a way that could be addressed by theorem provers. I think something like the Xena Project https://xenaproject.wordpress.com/what-is-the-xena-project/ is potentially an interesting development in that regard (though more for undergraduate math than grade school math).
I also don't think this is anyone's "fault" really. I'm more interested in figuring out what might make things better than assigning blame. Nor do I think I personally can fix it single-handedly with a new programming language. If Yatima can move the ball forward a little bit by eventually contributing to a few people learning and falling in love with programming and math, that's more than enough for me.
spekcular · 2021-03-05
> The FOM folk are in general incredibly bearish on proof assistants, so of course they don't care. If you only care about an 'ultimate' foundation that is the best fit to evaluate other systems, rather than a foundation that is amenable to actively working with it, of course you have no reason to care about HoTT.
> If you share their opinion, alright, but I personally find this incredibly myopic.
I want to distinguish between two senses of "foundation of mathematics":
1) An ontologically minimal language to formalize mathematical reasoning and facilitate proving things about (in)consistency, provability, and relative theory strength, and generally doing metamathematics.
2) A language to actually carry out the details of formalizing mathematics, perhaps jointly by humans and computers, in the sense of the Xena Project and proof assistants.
Here is a claim which might annoy you, but really ought to be uncontroversial: the correct meaning of the term "foundation of mathematics" is the first one. This is what it has meant for about a hundred years, at least, and what someone working professionally in the reverse mathematics/set theory/model theory/logic communities will understand the phrase to mean if you use it in conversation with them.
Now, given this, and given you agree that ZFC does a better job at function (1) above, I think this explains why the FOM people (and more generally those in the communities I listed) find it strange when HoTT is suggested as a…
p0llard · 2019-09-29
I'll have to work through this when I get the time.
I started teaching myself Haskell for fun about a year and a half ago, and ended up going down a rabbit hole of formal logic, set theory, mathematical foundations etc. which I did not expect at all; I'm currently spending some time looking at algebraic topology to give me a grounding to go into homotopy type theory.
For anyone else with an interests in this area, I'd strong urge you to look at some of the work from Kevin Buzzard (Imperial College), perhaps better known as an algebraic number theorist, who leads the Xena [1] Project, which started as an attempt to completely formalise all the problem sheets for one of the undergraduate maths modules at Imperial in Lean. There's also a GitHub repo [2] with a lot of work to build on.
Adam Chlipala (MIT) also teaches a course in formal program verification in Coq based on his book [3] which is a valuable resource.
1: https://xenaproject.wordpress.com/
2: https://github.com/kbuzzard/xena
3: http://adam.chlipala.net/frap/
kkylin · 2026-07-20
Related & of interest: https://xenaproject.wordpress.com/2026/07/20/human-mathematicians-are-…
unexpectedtrap · 2026-04-13
Who said that it should be a compile time error? That’s just a convention, and this is definitely not a bad one. No one is going to like the need to pass each time a proof that `a ≥ b` for every `a - b` invocation. Taking into account that this proof will most likely be an implicit argument, that would be a really annoying thing to use.
On the other hand, array indices by default do require such a proof, i.e., this code produces a compile time error:
def x := #[1, 2, 3, 4]
#check x[7]
Kevin Buzzard even wrote a blog post about a similar question about division by zero: https://xenaproject.wordpress.com/2020/07/05/division-by-zero-in-type-…
somecontext · 2026-01-10
See https://xenaproject.wordpress.com/2025/12/05/formalization-of-erdos-pr… for a blog post about that.
zodiac · 2025-12-27
Here’s a good document defending the merits of this design. https://xenaproject.wordpress.com/2020/07/05/division-by-zero-in-type-…
jhanschoo · 2025-08-03
In addition to other comments, see https://xenaproject.wordpress.com/2024/12/11/fermats-last-theorem-how-…
In particular, note that a key lemma of crystalline cohomology rests on a mistake. Experts think that it is fixable by virtue that results have depended on it for a long time and no issue was found, but it is not fixed.