What is the Lean proof assistant?

Definition

Lean combines a formal language, elaborator, tactic framework, libraries and a small kernel. Definitions, executable programs and theorems can live in the same environment, allowing software properties and mathematical results to be stated and proved precisely.

Lean proofs ultimately produce proof terms that the kernel checks independently. Humans or automated systems can search for proof steps, but an accepted result must still satisfy the kernel's logical rules.

Acronyms and aliases

Lean variantLean theorem prover variant

Frequently asked questions

Can Lean verify software as well as mathematics?

Yes. Lean can express programs and their properties in one language, allowing developers to prove that implementations satisfy formal specifications.

Why is Lean useful for artificial intelligence-generated code?

Artificial intelligence can generate implementations and proof attempts, while Lean's kernel independently checks whether the final proof term is valid.

Videos explaining Lean proof assistant