REVIEW 3 major objections 5 minor 6 references
A Graphical Interface for Category Theory Proofs in Coq
T0 review · 3 major / 5 minor · reviewed 2026-08-15 · deepseek-v4-flash
Pith's one-line read A Coq plugin turns category-theory proof goals into interactive commutative diagrams and lets users advance proofs by manipulating those diagrams.
desk verdict A coherent tool paper: the pushout-based lemma matching is genuinely new, but the soundness question is real and the paper would be stronger with one explicit statement of how Coq's kernel bounds the damage. read the letter →
The pith
A machine-rendered reading of the paper's core claim, the machinery that carries it, and where it could break.
The reading
What carries the argument
The central object is the graph extracted from a Coq proof state, together with the pattern graph extracted from a first-order lemma about categories. The operation that carries lemma application is the pushout of a partial matching: the interface unifies the Coq terms on matched objects as the user selects them, then takes the union of the lemma graph and the goal graph and merges the matched objects, producing the new proof state by gluing the two diagrams together.
What would settle it
Record the full Coq proof term the plugin produces for a nontrivial category-theory proof and check it with Coq's kernel; a single accepted proof whose generated term fails type-checking, or a lemma application that creates a goal not derivable from the matched hypotheses, would refute the claim.
Extended reading notes
Core claim
The paper claims that a Coq plugin can read a proof goal whose conclusion is an equality between morphisms, extract a graph whose nodes are objects, whose edges are morphisms, and whose faces are equalities, and then let the user manipulate that graph, splitting and merging edges, decomposing faces, and applying lemmas, where each manipulation refines the underlying Coq proof state. In particular, applying a lemma is done by matching its extracted graph pattern against the goal graph and computing the pushout of the two graphs modulo the matching; the result becomes the new goal graph, and any remaining proof obligations are returned to Coq as new goals.
Load-bearing premise
The load-bearing premise is that gluing the lemma's diagram to the goal's diagram, after unifying the matched terms, yields exactly the proof obligations of a correct Coq refinement.
Editorial extensions
If this is right
- A user can complete a categorical proof, including instantiating existential variables, without leaving the diagram, because merging matched objects unifies the underlying Coq terms.
- The textual script language makes every graphical interaction replayable: the same file re-runs the proof without reopening the interface when it succeeds.
- The uniform lemma-application mechanism covers backward reasoning, forward reasoning, exact application, and cut, all through the same pushout operation.
- Because the plugin talks to the interface through a small protocol, the same interface could be reused by other proof assistants with a modest porting effort.
Reading between the lines
- If the pushout operation is sound, the same mechanism could generalize from categories to any theory whose proof states admit a graph-like structure, turning lemma application into a generic diagrammatic rewriting step.
- The plugin's soundness is ultimately a claim about the correspondence between graph unification and Coq's dependent type checker; a testable extension is to instrument every plugin step to emit the generated Coq refinement and verify it with the kernel.
- For teaching, the web version suggests a further step: an exercise author could choose which lemmas are visible, turning the diagram editor into a puzzle environment where students build proofs by matching shapes.
Signed reviews
Editorial analysis
A structured set of objections, weighed in public.
Referee Report
Summary. The paper presents a Coq plugin that renders a proof goal as a commutative diagram when the goal is an equality between morphisms in a category, using the UniMath library. The user can manipulate the diagram through operations such as splitting, merging, decomposing, composing, and normalizing edges, and can apply lemmas by matching a graph pattern extracted from the lemma statement, unifying terms via Coq, and then computing a pushout of the two graphs. The paper also describes a replayable textual script language for proof interactions and a split architecture in which a Rust interface communicates with a Coq plugin through a custom protocol, with a web version reported as in progress. The central claim is that interactive diagrammatic proof is feasible inside a generic proof assistant, with the graph operations producing valid Coq refinements.
Significance. If the implementation is correct, the tool is a useful educational artifact and a concrete step toward context-specific proof assistants layered over generic ones. The paper gives a worked example, explains the graph model and the main operations, and honestly discusses several limitations, including the restriction to a first-order fragment and the inability to apply lemmas under a term. The strengths are the concrete demonstration, the public repository, and the replayable script language. However, the paper does not supply a soundness theorem, a test suite, or a user study, so the significance is currently that of a feasibility demonstration rather than a verified or empirically evaluated system.
major comments (3)
- [§4.3] The central correctness claim of the paper is that the pushout-based lemma application produces a valid new proof state, but no soundness argument is given. The text states that 'the pushout of the matching is computed and the result is the new proof state,' yet it does not state a correspondence theorem between graph nodes, edges, and faces and Coq terms, nor does it prove that the pushout is logically equivalent to Coq's apply or refine. Since Section 4.4 explicitly restricts the supported fragment and admits that lemmas cannot be applied under a term, the graph representation is not a complete account of the Coq context, so soundness is not self-evident. A silent divergence from Coq's unification or refinement semantics in a corner case (for example, with existential quantifiers or partial matches) would make the tool unsound in a way that defeats its purpose. Please provide a precise statement of the correspondence, or at least a substantial automated test suite covering partial matches, existential lemmas, and nested terms; without this, the main claim that the user can progress proofs safely remains unverified.
- [§3] The proof-progressing operations described in Section 3, especially 'Merging' and 'Solving,' are specified only informally. For example, the solver 'attempts to construct an equality proof from the other equalities present, using the structure of the graph,' but the paper does not say what Coq term or tactic is generated when the solver succeeds. The same applies to 'Decomposition,' which 'refines the equality to reduce it to proof obligations for all the atomic planar regions.' Because these operations change the Coq proof state, the reader cannot judge whether they are guaranteed to produce well-typed refinements. Please specify the underlying proof-term construction or tactic for each operation that modifies the Coq state, or state which of them are intended only as heuristics whose outputs are checked by Coq before being accepted.
- [§5.1] The scope of the tool is narrower than the title and abstract suggest. The architecture description in Section 5.1, step ➋, says the plugin constructs the graph 'if it is an equality between morphisms,' and the concrete example in Section 2.1 is an equality goal. The abstract, however, announces 'a graphical interface for category theory proofs' without this qualification. This discrepancy should be corrected, either by narrowing the stated contribution to equality goals in the first-order fragment or by clearly stating the supported class of goals in the abstract and introduction; otherwise the central claim is broader than what is demonstrated.
minor comments (5)
- [§1] There is a typo in the last paragraph of the introduction: 'We well begin' should be 'We will begin.'
- [§2.2] The scripting language example in Figure 4 contains the command 'succeed,' but the paper never explains its meaning or when it is generated. A brief description of each command in the script language would help readers understand the replay mechanism.
- [§4.2] The treatment of existential quantifiers in lemmas would benefit from a precise Coq term. The paper says 'an existential quantifier is a dependent pair' and that references can be substituted by 'the first projection of the lemma,' but the standard Coq ex type lives in Prop and does not have a first projection in the same sense as sigT. Please specify the exact Coq representation used (for example, sigT or a UniMath-specific dependent sum) so that this step can be checked.
- [§5.2] The web version is described as motivating a substantial asynchronous rewrite, but the paper states that it cannot yet provide a link and that the asynchronous version is still in progress. Marking this section more explicitly as future work would make the status of the web version clearer.
- [Appendix A] The appendix lists the original screenshots but does not explicitly state which screenshots correspond to Figures 2 and 3. Adding a short mapping would make the appendix more useful to readers who want to compare the synthetic figures with the actual interface.
Circularity Check
No circularity: the paper is a tool implementation report with no fitted parameters, no predictions derived from fitted inputs, and no load-bearing self-citation chain.
full rationale
The paper reports a Coq plugin that extracts a commutative-diagram graph from a proof state, lets the user manipulate it, and reconstructs Coq refinements from those manipulations. Its central claims are existence and design claims about the tool, not derived quantities or empirical predictions. There are no fitted constants, no data subsets used to predict closely related quantities, and no uniqueness theorem imported from the authors' prior work. The only citations are to other tools and background references (Actema, Lean widgets, Lafont's diagram editor, string diagrams, topos theory unification), and none of these is invoked as a load-bearing justification for a derived result. The skeptical concern that the pushout-based lemma application in Section 4.3 is not accompanied by a formal soundness proof against Coq's refine is a correctness-risk concern about unverified behavior, not a circularity: the paper does not define its pushout operation in terms of the proof states it is supposed to produce, nor does it fit the operation to a dataset and then call the fit a prediction. The design is self-contained as an implementation description, so the appropriate circularity score is 0.
Assumptions & free parameters
assumptions (3)
- domain assumption The UniMath library correctly implements precategory axioms, including identity and composition, as used to build graphs from Coq goals.
- domain assumption Graph extraction and pushout computation preserve the logical content of the Coq proof state.
- ad hoc to paper The restriction of supported lemmas to first-order formulas over categorical types is sufficient for the intended teaching use cases.
Cite this review
Pith. "Pith review of A Graphical Interface for Category Theory Proofs in Coq." pith.science (2026). https://pith.science/paper/63TZHC7K
@misc{pith2026250513473,
author = {Pith},
title = {Pith review of: A Graphical Interface for Category Theory Proofs in Coq},
year = {2026},
howpublished = {\url{https://pith.science/paper/63TZHC7K}},
note = {Machine review of arXiv:2505.13473}
}
read the original abstract
The importance of category theory in recent developments in both mathematics and in computer science cannot be overstated. However, its abstract nature makes it difficult to understand at first. Graphical languages have been developed to help manage this abstraction, but they have not been used in proof assistants, most of which are text-based. We believe that a graphical interface for categorical proofs integrated in a generic proof assistant would allow students to familiarize themselves with diagrammatic reasoning on concrete proofs that they are already familiar with. We present an implementation of a Coq plugin that enables both visualization and interactions with Coq proofs in a graphical manner.
Figures
Figures from the paper (5 more)
Reference graph
Works this paper leans on
-
[1]
Edward Ayers (2021): A Tool for Producing Verified, Explainable Proofs. doi:10.17863/CAM.81869. Avail- able at https://www.repository.cam.ac.uk/handle/1810/334452. Publisher: Apollo - University of Cambridge Repository
-
[2]
Baez & Mike Stay (2010): Physics, Topology, Logic and Computation: A Rosetta Stone
John C. Baez & Mike Stay (2010): Physics, Topology, Logic and Computation: A Rosetta Stone . arXiv:0903.0340 [quant-ph] 813, pp. 95–172, doi:10.1007/978-3-642-12821-9_2. Available at http:// arxiv.org/abs/0903.0340. ArXiv: 0903.0340
arXiv 2010
-
[3]
In: Leibniz International Proceedings in Informatics , 52, pp
Krzysztof Bar, Aleks Kissinger & Jamie Vicary (2016): Globular: an online proof assistant for higher-dimensional rewriting. In: Leibniz International Proceedings in Informatics , 52, pp. 34:1–34:11, doi:10.23638/LMCS-14(1:8)2018
-
[4]
The unification of Mathematics via Topos Theory
Olivia Caramello (2010): The unification of Mathematics via Topos Theory , doi:10.48550/arXiv.1006.3930. Available at http://arxiv.org/abs/1006.3930. ArXiv:1006.3930 [math]
work page Pith review arXiv doi:10.48550/arxiv.1006.3930 2010
-
[5]
Pablo Donato, Pierre-Yves Strub & Benjamin Werner (2022): A drag-and-drop proof tactic. In: Proceedings of the 11th ACM SIGPLAN International Conference on Certified Programs and Proofs , ACM, Philadelphia PA USA, pp. 197–209, doi:10.1145/3497775.3503692. Available at https://dl.acm.org/doi/10.1145/ 3497775.3503692
-
[6]
Ambroise Lafont (2024): A diagram editor to mechanise categorical proofs . Available at https://hal. science/hal-04407118. L. Chabassier 41 A Screenshots Since the graphical framework we used only has a black theme, and we did not take the time to create another lighter theme, we replaced the screenshots in the main body of the paper by figures made in- d...
work page 2024
Reviewed August 15, 2026 · model on record in the stance chip above.
Discussion (0). Continue with ORCID to comment.