MerLean-Prover · Chapter 02
A proof plan that can be revised
The shared object is a dependency graph of mathematical statements. Planning edits that graph, Lean implements a statement, and independent checks decide what should happen next.
From a prime-order element to a normal subgroup
In the non-2-transitive branch, the public proof chooses an element of order and sets . Separate helpers establish that this subgroup acts regularly and that conjugating by any stays in . The latter step uses the Müller affine-conjugation result in the recorded plan.
The normality argument below shows how a substantial imported lemma and a short algebraic deduction fit together. The affine-conjugation hypothesis carries the hard part; the calculation does not prove that hypothesis.
It suffices to control conjugation of a generator
This elementary implication is the normality step used by the closed BurnsideDichotomyCore proof. It applies to any group and element once the displayed conjugation hypothesis is available.
Proof / derivation
Every element of is for some integer . Conjugation respects integer powers, and a subgroup is closed under those powers, so the displayed identity gives .
Apply the same inclusion to to obtain . Conjugating it by gives . The two inclusions prove normality.
MerLean-Prover, arXiv:2605.26959v2 (27 May 2026) · Appendix C, cyclicSubgroup_normal
Follow the published Burnside proof plan
The recorded run starts with six nodes: the target and five helpers. A helper passes compilation but fails the Faithfulness check, so the plan is repaired. Later, exhausted proof attempts trigger new decompositions, and a Math check catches a helper missing a necessary hypothesis.
The plan expands through 12 and 21 nodes to 32. Its node set stabilizes by frame 51, and the original target closes at frame 63. The replay below pairs documented milestones with selected neighborhoods of the final published dependency graph. It does not reconstruct the graph at each frame or run a live Lean session.
Follow the plan, inspect the dependencies
Documented milestones beside the final dependency graph. This is a curated replay, not a complete event log: intermediate node statuses are unreported here. All 32 published node identifiers are available; full statements are shown only where Appendix C provides them. Short labels describe identifiers, not complete lemma signatures.
Burnside's prime-degree theorem
Let G ≤ Sym(Ω) act transitively on a finite set Ω with |Ω| = p prime. Then G is 2-transitive, or there exists N ◁ G acting regularly on Ω. Regular means transitive with trivial point stabilizers: Stab_N(x) = {1} for every x ∈ Ω.
Read the target in Lean
import Mathlib.GroupTheory.GroupAction.MultipleTransitivity
import FormalQualBench.BurnsidePrimeDegreeTheorem.Auxiliary.BurnsideDichotomyCore
namespace BurnsidePrimeDegreeTheorem
open MulAction
theorem MainTheorem
{α : Type*} [Fintype α]
{G : Subgroup (Equiv.Perm α)}
(htrans : IsPretransitive G α)
(hp : (Fintype.card α).Prime) :
IsMultiplyPretransitive G α 2 ∨
∃ N : Subgroup G, N.Normal ∧ IsPretransitive N α ∧
∀ a : α, MulAction.stabilizer N a = ⊥ := by
classical
rcases Classical.em (IsMultiplyPretransitive G α 2) with h2 | hNot2
· exact Or.inl h2
· haveI : IsPretransitive G α := htrans
exact Or.inr (burnside_dichotomy_core hp hNot2)
end BurnsidePrimeDegreeTheoremStart with six statements
The first plan has the anchored theorem #1 and five prerequisites #2–#6. Four prerequisites are subsequently closed, leaving the dichotomy core #2 as the hard step.
A dependency neighborhood
An arrow A → B means statement A uses prerequisite B in the final displayed graph. It does not indicate execution order or when that dependency was added. Milestones change the highlight, not the graph. Scroll across the diagram on small screens.
Burnside's prime-degree theorem
Thm_MainTheoremLet G ≤ Sym(Ω) act transitively on a finite set Ω with |Ω| = p prime. Then G is 2-transitive, or there exists N ◁ G acting regularly on Ω. Regular means transitive with trivial point stabilizers: Stab_N(x) = {1} for every x ∈ Ω.
The anchored target. Appendix C records its closure at frame 63; its proof handles the 2-transitive case immediately and delegates the other case to node #2.
Inspect the published Lean excerpt
import Mathlib.GroupTheory.GroupAction.MultipleTransitivity
import FormalQualBench.BurnsidePrimeDegreeTheorem.Auxiliary.BurnsideDichotomyCore
namespace BurnsidePrimeDegreeTheorem
open MulAction
theorem MainTheorem
{α : Type*} [Fintype α]
{G : Subgroup (Equiv.Perm α)}
(htrans : IsPretransitive G α)
(hp : (Fintype.card α).Prime) :
IsMultiplyPretransitive G α 2 ∨
∃ N : Subgroup G, N.Normal ∧ IsPretransitive N α ∧
∀ a : α, MulAction.stabilizer N a = ⊥ := by
classical
rcases Classical.em (IsMultiplyPretransitive G α 2) with h2 | hNot2
· exact Or.inl h2
· haveI : IsPretransitive G α := htrans
exact Or.inr (burnside_dichotomy_core hp hNot2)
end BurnsidePrimeDegreeTheoremBrowse all 32 nodes in the published plan
What the final check certifies
The agent checks guide search; they are not substitutes for Lean’s kernel. The benchmark accepts a solve only after the plan closes, the original target signature is preserved, the project builds, and the target’s transitive axiom dependencies pass the audit.
The audit follows dependencies, so moving an unproved claim into a helper does not hide it. The permitted standard axioms are made explicit below; this is not a claim that the proof uses no axioms whatsoever.
The reported axiom policy
The paper uses a transitive #print axioms audit. It excludes unfinished placeholders and user-introduced axioms from the proof closure. The original Lean signature is checked separately; natural-language-to-Lean conversion is outside this evaluation.
MerLean-Prover, arXiv:2605.26959v2 (27 May 2026) · §§2, 4
Last updated
