🤖 AI Summary
This work addresses performance bottlenecks, development friction, and limited scalability that have emerged in the long-term use of the Carnap proof-assistant framework. To overcome these challenges, we propose a bottom-up redesign centered on a high-performance verification kernel, mm0-zig, implemented in Zig and based on the Metamath Zero format, coupled with a newly developed bytecode compiler for the Aufbau language (abc). This integrated architecture substantially enhances system performance and maintainability while enabling rich interactive capabilities on the web. A functional prototype has been successfully deployed, delivering a more efficient, stable, and interactive online theorem-proving experience to over 45,000 students worldwide.
📝 Abstract
The first part of this paper provides an experience report, recounting the design and long-term maintenance of the Carnap proof assistant framework used cumulatively by over 45,000 students worldwide over the last decade. We cover the good, the bad, and the ugly: what worked well, what didn't work, and what added friction to development and maintenance over time.
These insights motivate a bottom-up redesign of the Carnap framework, which is the topic of the paper's second part. Briefly, the new design combines a new high-performance verifier kernel (mm0-zig) targeting Mario Carneiro's metamath zero format, and the Aufbau Bytecode Compiler, (abc), a new proof compiler that can serve as a backend for richly interactive proof-authoring experiences on the web.