Proof Atlas research program

Status: active research program. Established 15 October 2026 by the repository owner.

Goal

Develop a consistent, compositional geometric language that transforms Lean proofs into faithful, navigable visual representations, including massive proofs generated by AI. The language should let a person inspect assumptions, binding, constructions, lemma applications and proof structure at several scales, while retaining access to the original formal object. Visual proof construction with Lean checking is a longer-term objective.

The article reader is an application and evaluation case. Improving an article, drawing a theorem-specific diagram or completing a deployment does not complete this research goal.

Reading route

  1. Learn the notation. Constructor fields, scope references, folded regions and typing rules, with four interactive examples.
  2. Inspect a recorded proof. Use the Riccati bound as a worked case. Every selected source object keeps its exact compiled route.
  3. Check the evidence. A searchable index organized by kernel notation, scoped composition, typing, context interfaces and evaluation.

The SE(2) article reader is a separate application. The published structural result reports the corpus and article-coverage findings; it is not this program’s navigation index.

Current position

Layer Supported capability Remaining question
Kernel vocabulary Twelve constructor forms, ordered fields, levels and lexical references. How should richer payloads be presented consistently?
Scoped composition Exact cuts, reversible telescopes/application spines and shared storage. How broadly can paged delivery be provided without expanding the occurrence tree?
Typed constructions Recorded applications, introductions, local definitions and selected elimination cases. A general readable notation for arbitrary elimination remains incomplete.
Context interfaces Original binder/use links, explicit boundaries and recorded native context observations. Syntactic support is distinct from mathematical premise necessity.
Semantic abstraction and evaluation Finite structural and native checks, including a separately attributed AI-source sample. Semantic compression and improved human comprehension remain unmeasured.

Scientific questions

  1. Can a fixed vocabulary of visual primitives represent Lean’s kernel expressions and their binding, type and declaration relationships compositionally?
  2. Which abstractions reduce visual complexity while preserving explicit boundaries, assumptions and recoverability of the underlying formal terms?
  3. Does the same language work for small human-written examples and very large machine-generated proofs, without drawing or expanding every occurrence?
  4. Does the representation improve proof inspection, error localization and navigation? These require measured user tasks; graph size and browser checks alone do not answer them.

Required invariants

Research layers

  1. Kernel vocabulary: the twelve version-pinned Expr constructors, universe levels, ordered ports and scope/reference links.
  2. Structural composition: occurrence-aware scenes, sharing, exact cuts, navigation and reversible expansion against an immutable packet.
  3. Proof structure: recognizable introduction/elimination constructions, complete applications, hypotheses and conclusions. Classification must use checked term/type information rather than attractive labels.
  4. Semantic abstraction: reusable modules and mathematical interpretations with stated assumptions and independently checked correspondence where available.
  5. Source and elaboration: surface syntax, tactics, commands, macros and elaborator traces, attached through explicit provenance. Kernel expressions do not reconstruct missing tactic histories.
  6. Applications: article correspondence, proof auditing, generated-proof inspection and eventually visually constructed proofs checked by Lean.

Evaluation and evidence

Use synthetic adversarial controls, small kernel-checked examples, the published compiled corpus and its separately labelled working snapshot. Include shared terms used under different binders, shadowing, dependent domains, let bindings, projections, universe parameters, open contexts and extreme expansion ratios.

For large proofs record input packet hashes, displayed occurrence budget, frontier accounting, scope-link checks and bounded-memory traversal. Current large packets are scale tests; do not label them an AI-generated benchmark without recorded generation provenance. Add diverse independently sourced and AI-generated proofs when their provenance and publication rights are established.

Public packet checks establish serialized structural correspondence. Independent kernel replay, visual-language adequacy, semantic compression and human comprehension require their own evidence. The existing constructor catalogue and article-specific diagrams are useful foundations, not a completed general language.

Working rule

Prioritize general language rules and falsifiable tests over article-specific styling. Each iteration should identify a representation problem, implement or reject a rule, and retain its evidence and limitations. Keep the program active across application releases. Publish only significant supported positive or negative scientific results in the blog; keep routine software checks and operational records in technical evidence.

Current priorities: extend the compositional notation for elimination, broaden bounded source delivery and define measured tasks for tracing assumptions, finding premises and localizing errors. A release is one test of the language, not completion of the program.

Technical evidence

The implementation record is available in the searchable evidence index. Earlier links to individual rules continue to open their original sections there.