Baldur

Generates whole-function Isabelle/HOL proofs and uses the prover error message to repair broken proofs.

Read the paper

The loop

  1. Proposes

    A language model generates a complete Isabelle/HOL proof script for a target theorem.

  2. Judged by

    The Isabelle proof assistant executes the script and returns an error message when the proof fails.

  3. Steers

    A repair model conditions on the statement, the whole failed proof and the Isabelle error message to synthesize a corrected proof.

Headline result

Proved 47.9% of theorems in the Isabelle Archive of Formal Proofs benchmark (65.7% when combined with Thor Sledgehammer).

What this does not prove

Single-round error repair struggles on deep multi-lemma obligations where the initial proof sketch chooses the wrong induction variable.

How it generalizes the harness

The Isabelle/HOL kernel acts as the formal oracle whose error messages drive whole-proof synthesis and repair.

Classification

Classification of Baldur
What it proposesProof
Generative modelMinerva-based proof generation and repair LLMs
Algorithmic authorityIsabelle/HOL proof assistant and Sledgehammer ATP
FeedbackVerifier errors
What gets updatedPrompt context
When it runsAt inference time
ValidityFormal (machine-checked)
EvidenceExperiments reported
LineageOriginal system