Towards a Scalable Proof Engine: A Performant Prototype Rewriting Primitive for Coq
Name
10817_2024_Article_9705.pdf
Size
1.73 MB
Format
Adobe PDF
Checksum (MD5)
dd3e7845edbcc523a5e2234f3ad907b3
Author(s) • • • •
Gross, Jason
Erbsen, Andres
Philipoom, Jade
Agrawal, Rajashree
Chlipala, Adam
Date Issued
August 14, 2024
Journal
Journal of Automated Reasoning
Publisher
Springer Netherlands
Citation
Gross, J., Erbsen, A., Philipoom, J. et al. Towards a Scalable Proof Engine: A Performant Prototype Rewriting Primitive for Coq. J Autom Reasoning 68, 19 (2024).
Version
Final published version
Abstract
We address the challenges of scaling verification efforts to match the increasing complexity and size of systems. We propose a research agenda aimed at building a performant proof engine by studying the asymptotic performance of proof engines and redesigning their building blocks. As a case study, we explore equational rewriting and introduce a novel prototype proof engine building block for rewriting in Coq, utilizing proof by reflection for enhanced performance. Our prototype implementation can significantly improve the development of verified compilers, as demonstrated in a case study with the Fiat Cryptography toolchain. The resulting extracted command-line compiler is about 1000× faster while featuring simpler compiler-specific proofs. This work lays some foundation for scaling verification efforts and contributes to the broader goal of developing a proof engine with good asymptotic performance, ultimately aimed at enabling the verification of larger and more complex systems.
MIT Department
Massachusetts Institute of Technology. Computer Science and Artificial Intelligence Laboratory
Terms of Use
Creative Commons Attribution
Persistent DSpace Link
DOI of Published Version
https://doi.org/10.1007/s10817-024-09705-6