Lean 4
Hacker ApprovedThe most recommended of 8 proof assistants
A proof assistant and full functional language that pairs well with AI, whose small trusted kernel makes proofs highly reliable; critics cite slow checking and quirky general-purpose use.
A proof assistant and full functional language that pairs well with AI, whose small trusted kernel makes proofs highly reliable; critics cite slow checking and quirky general-purpose use.
368 people gave an opinion
- recommend it
- 268
- criticize it
- 100
- approval share
- 73%
Recommended in 13 of 13 months
- November 2025: recommended
- December 2025: recommended
- January 2026: recommended
- February 2026: recommended
- March 2026: recommended
- April 2026: recommended
- May 2026: recommended
- June 2026: recommended
- July 2026: recommended
- August 2026: recommended
- September 2026: recommended
- October 2026: recommended
- November 2026: recommended (month in progress)
Owned for 1 year
Median of the 6 owners who said how long they have had it.
Each square is one year.
Why it carries the badge
- 268 people recommend itNeeds 10 or more, met.
- 2.7 recommenders for every criticNeeds 2 to 1 or better, met.
- Recommended in 13 of 13 monthsNeeds 4 or more, met.
The same three rules apply to every product, and the badge can’t be bought. How the badge works
What people say about it
The reasons people give, with the number of comments that give each one. Open a reason to read what they said.
Why people recommend it
Each mark is one comment
Trustworthy machine-checked proofs
“The drudgery of mechanically applying logical rules is pushed onto the Lean kernel which is trusted, while the Human can concentrate on semantic correctness”
Comment from 10 Oct 2026 in “What mathematicians should know about the Lean Theorem Prover: reliability & AI” “A Lean proof has a much higher probability of being correct (in my opinion) than any published (either preprint or peer-reviewed) paper”
Comment from 8 Oct 2026 in “Navier–Stokes Lost in Translation” “the "core" of Lean is a somewhat "simple" core that does simple things to check the proof, so it's quite rare to find meaningful bugs”
Comment from 1 Nov 2026 in “Mathematics has changed. Let's act like it” - Comment from 21 Jul 2026 in “Human mathematicians are being outcounterexampled”
- Comment from 8 Sep 2026 in “On the Navier–Stokes Millennium Prize Problem”
- Comment from 6 Sep 2026 in “Finite time blowup for an averaged three-dimensional Navier-Stokes equation (2014)”
Works well with AI assistants
“I use Lean and occasionally some other languages with expressive type systems, and like you I've found it to be a pretty great experience for working with LLMs”
Comment from 10 Jul 2026 in “Scarf has moved away from Haskell” “Let the LLM solve the nitty gritty details of proof, but use the higher-level theorem formation as the vessel for doing great things.”
Comment from 9 Dec 2025 in “If you're going to vibe code, why not do it in C?” “the quick feedback loop between the AI prose and the Lean verification errors and warnings ensures that its logically consistent”
Comment from 20 Jul 2026 in “Claude Fable produced a counterexample to the Jacobian Conjecture” - Comment from 1 Dec 2025 in “Advent of Code 2025”
- Comment from 11 Sep 2026 in “More questions about whether researchers can trust OpenAI with unpublished math”
- Comment from 16 Oct 2026 in “Beni: A typed functional language for the browser, with no async/await”
- Comment from 10 Jan 2026 in “AI solves Erdos problem #728 (Terence Tao mathstodon post)”
Full general-purpose programming language
“Lean 4 is a language supporting verification, and it's also a full programming language, so you can write your proofs/theorems in the same language that you program in.”
Comment from 17 Dec 2025 in “Dafny: Verification-Aware Programming Language” “Lean feels like it could legitimately become a successor to Haskell as the go to functional programming language for software development.”
Comment from 27 Apr 2026 in “"Why not just use Lean?"” “One of the things I like about Lean is precisely that it's an ordinary, Haskell-style functional programming language”
Comment from 4 Mar 2026 in “When AI Writes the Software, Who Verifies It?” - Comment from 20 Aug 2026 in “The Case Against Formal Verification, 50 Years Later”
- Comment from 6 Oct 2026 in “Why Common Lisp is now the best programming language”
- Comment from 6 Oct 2026 in “Why Common Lisp is now the best programming language”
Powerful dependent type system
“it's type system is insanely powerful, indexed dependant inductive and quotient types allow the realization of "making invalid states unrepresentable"”
Comment from 16 Aug 2026 in “The Case Against Formal Verification, 50 Years Later” “It's dependent-types / theorem-proving-oriented type-system combined with AI assistants makes it the language of the future IMO.”
Comment from 1 Dec 2025 in “Advent of Code 2025” “LEAN is a functional programming language with a type system strong enough to express cutting-edge mathematics”
Comment from 20 Aug 2026 in “The Case Against Formal Verification, 50 Years Later” - Comment from 29 Oct 2026 in “Lasm: Write formally verified web apps in Lean, deploy to Node, serverless, edge”
What people warn about
Each mark is one comment
Slow, unpredictable proof checking
“Caching only works until you change a deeply nested constant. Then you must wait 2 hours as Lean re-checks every transitive dependency”
Comment from 18 Sep 2026 in “Bend 2 and the Vibe-Coding Trap” “The slowness is relatively unpredictable, too: sometimes changing a 'rewrite' to a 'with' can increase memory usage tenfold.”
Comment from 27 Apr 2026 in “"Why not just use Lean?"” “Lean is apparently so slow that for Fermat's Last Theorem proof verification runs only 1 order of magnitude faster”
Comment from 10 Sep 2026 in “OpenAI’s Navier-Stokes release included a Lean 4 formal proof” Quirky outside of mathematics
“using Lean to model things humans care about (business logic, user interfaces, physical environments, dynamic regulations) quickly hits a dead end”
Comment from 21 Feb 2026 in “Lean 4: How the theorem prover works and why it's the new competitive edge in AI” “It's a great language for math, perhaps the best choice right now. But as a general purpose language it's incredibly quirky.”
Comment from 14 Apr 2026 in “Lean proved this program correct; then I found a bug” “Lean is line noise. It's like assembly language for math, which is great, but not what humans should be using day to day.”
Comment from 25 Dec 2025 in “Litex: Formal math for everyone – set theory examples with Lean comparison” Kernel and runtime bugs exist
“The core of Lean got a lot less correct when a well-meaning AI system probed Lean for corner cases (bugs) that would "prove" a false conjecture.”
Comment from 19 Aug 2026 in “Mathematics in the Age of AI” “The main bug found was actually in the lean runtime, affecting all proofs using scalar arrays where the size of the array is not bounded.”
Comment from 14 Apr 2026 in “Lean proved this program correct; then I found a bug” “the Lean kernel has a lot of fancy features that aren't yet perfectly understood from a type-theoretic perspective”
Comment from 16 Aug 2026 in “A SAT Attack on Tarski's High School Algebra Problem” Weak libraries for program reasoning
“Lean's just a little bit too focused on talking about results to tidily talk about how those results are computed.”
Comment from 24 Sep 2026 in “Book review: Is parallel programming hard, and, if so, what can you do about it?” “the main downside with Lean is that libraries for reasoning about program logic are comparatively less developed”
Comment from 3 Oct 2026 in “Anatomy of a Lean proof for software engineers” “Using LEAN or Coq requires you to basically convert your code to LEAN/Coq before you can start proving anything”
Comment from 23 Feb 2026 in “Lean 4: How the theorem prover works and why it's the new competitive edge in AI”
Other proof assistants people recommend
The four most recommended other proof assistants, with the same counts for each, so you can compare like for like. The tick on each bar marks the 2 to 1 line the badge needs.
See all 8 proof assistants, rankedWhat people said
40 of the 494 comments that mention it, newest first. Each links to the original comment.
“the "core" of Lean is a somewhat "simple" core that does simple things to check the proof, so it's quite rare to find meaningful bugs”
“Lean is one of the most popular languages that allow for formal verification, and to me is incredibly powerful”
“There is often value in actually reading the Lean proof script (especially with the IDE support like jump to definition).”
“proving that the ownership rules are sound with Lean, something I would maybe never be able to do without AI”
“The drudgery of mechanically applying logical rules is pushed onto the Lean kernel which is trusted, while the Human can concentrate on semantic correctness”
“It's still faster than doing it all by hand but paper in -> lean out in no way ensures a correspondence between the two.”
“A Lean proof has a much higher probability of being correct (in my opinion) than any published (either preprint or peer-reviewed) paper”
“a mathematician friend of mine has been building a game engine with it. very neat stuff, anything is possible!”
“It's a nice programming language, and it lets you really hack on commands, macros, syntax, and elaboration.”
“the main downside with Lean is that libraries for reasoning about program logic are comparatively less developed”
“Lean's just a little bit too focused on talking about results to tidily talk about how those results are computed.”
“Caching only works until you change a deeply nested constant. Then you must wait 2 hours as Lean re-checks every transitive dependency”
“The tools ground the AI in reality and allow them to make progress without going in hallucinated directions.”
“Lean is apparently so slow that for Fermat's Last Theorem proof verification runs only 1 order of magnitude faster”
“The fact that it's being released alongside a Lean proof from Day 1 is super helpful for verifying that it's correct.”
“The surface of bugs in Lean is infinitely smaller than the human error involeved in a committee of peer reviewers.”
“LEAN is a functional programming language with a type system strong enough to express cutting-edge mathematics”
“The core of Lean got a lot less correct when a well-meaning AI system probed Lean for corner cases (bugs) that would "prove" a false conjecture.”
“it's type system is insanely powerful, indexed dependant inductive and quotient types allow the realization of "making invalid states unrepresentable"”
“the Lean kernel has a lot of fancy features that aren't yet perfectly understood from a type-theoretic perspective”
“Being able to confidently do this is why proof assistants like Lean are really not just another programming language.”
“the quick feedback loop between the AI prose and the Lean verification errors and warnings ensures that its logically consistent”
“I use Lean and occasionally some other languages with expressive type systems, and like you I've found it to be a pretty great experience for working with LLMs”
“It does speak to the benefits of using lean in that you don't need to be clever about the different examples you test.”
“The slowness is relatively unpredictable, too: sometimes changing a 'rewrite' to a 'with' can increase memory usage tenfold.”
“Lean feels like it could legitimately become a successor to Haskell as the go to functional programming language for software development.”
“Lean documents how to write the cat utility in its own docs and generally has a much better, more modern tooling experience”
“It's a great language for math, perhaps the best choice right now. But as a general purpose language it's incredibly quirky.”
“The main bug found was actually in the lean runtime, affecting all proofs using scalar arrays where the size of the array is not bounded.”
“best in class functional programming language, but ... its perfectability is kinda hamstrung by baking non-constructive axioms into the standard library”
“One of the things I like about Lean is precisely that it's an ordinary, Haskell-style functional programming language”
“Using LEAN or Coq requires you to basically convert your code to LEAN/Coq before you can start proving anything”
“using Lean to model things humans care about (business logic, user interfaces, physical environments, dynamic regulations) quickly hits a dead end”
“It’s far easier for Lean because the human has to read very little compared to generating whole programs.”
“Lean is line noise. It's like assembly language for math, which is great, but not what humans should be using day to day.”
“Lean 4 is a language supporting verification, and it's also a full programming language, so you can write your proofs/theorems in the same language that you program in.”
“the lean prover community has a joint project to formalize the proof of Fermat’s Last Theorem, which is a lot of work but is progressing”
“Let the LLM solve the nitty gritty details of proof, but use the higher-level theorem formation as the vessel for doing great things.”
“I would think Lean and other formal languages are the real gold standard. But none of them really have enough training data for LLMs to be any good at them.”
“It's dependent-types / theorem-proving-oriented type-system combined with AI assistants makes it the language of the future IMO.”
Counts come from 1,795,640 Hacker News comments, November 2025 to November 2026. How we count. Report a mistake.