English

Towards a Scalable Proof Engine: A Performant Prototype Rewriting Primitive for Coq

Programming Languages 2024-08-16 v3

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×\times 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.

Keywords

Cite

@article{arxiv.2305.02521,
  title  = {Towards a Scalable Proof Engine: A Performant Prototype Rewriting Primitive for Coq},
  author = {Jason Gross and Andres Erbsen and Jade Philipoom and Rajashree Agrawal and Adam Chlipala},
  journal= {arXiv preprint arXiv:2305.02521},
  year   = {2024}
}

Comments

This version of the article has been accepted for publication in the Journal of Automated Reasoning, after peer review, but is not the Version of Record. Version of Record: https://dx.doi.org/10.1007/s10817-024-09705-6. arXiv admin note: substantial text overlap with arXiv:2205.00862

R2 v1 2026-06-28T10:25:13.125Z