Skip to content
leodemoura.github.io·

🚨Lean Kernel Fixes Critical Bug After Collatz Conjecture Disproof

A critical bug in Lean's kernel was exposed by a disproof of the Collatz conjecture

TL;DR

The Lean theorem prover's kernel had a soundness bug that allowed a false proof of the Collatz conjecture. The issue was fixed within hours, but highlights the importance of independent verification tools.

A critical soundness bug in the Lean theorem prover's kernel was exposed when a repository claiming to disprove the Collatz conjecture surfaced on July 25. The bug allowed for false proofs due to flawed handling of nested inductive types. It was quickly identified and fixed by Kiran Gopinathan, who reduced the disproof to a small proof of False and opened issue #14576. Lean's FRO team swiftly pushed a fix one hour later, ensuring that users relying on independent kernel checks update both their kernel and verification tools like nanoda. This incident underscores the importance of robust verification processes in formal systems.

Key Points

1

A soundness bug (#14576) was reported and fixed in Lean's kernel during July 27-28, 2023

2

The bug allowed false proofs due to flawed handling of nested inductive types (issue #14576)

3

Lean's FRO team pushed a fix one hour after the report (#14577) and merged it with improvements

4

Regression tests for the exploit are now included in the Kernel Arena, ensuring future safety

5

Experts are being supported to find further bugs and develop new verified kernels

Why It Matters

If you're using Lean's kernel or its verification tools like nanoda, update immediately. The bug could have led to false proofs if not caught. This highlights the critical importance of independent checks in formal systems.

leancollatz-conjecturesoundness-bugtheorem-prover

Frequently Asked Questions

Why does this matter?

If you're using Lean's kernel or its verification tools like nanoda, update immediately. The bug could have led to false proofs if not caught. This highlights the critical importance of independent checks in formal systems.

What happened?

The Lean theorem prover's kernel had a soundness bug that allowed a false proof of the Collatz conjecture. The issue was fixed within hours, but highlights the importance of independent verification tools.

Comments

Subscribe to join the conversation...

Be the first to comment

Enjoyed this article?

Get it daily. 7am. Free. Reads in 5 minutes.

Join 2,518 builders reading daily.

Also get