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

05/04/2023
by   Jason Gross, et al.
0

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.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
05/02/2022

Accelerating Verified-Compiler Development with a Verified Rewriting Engine

Compilers are a prime target for formal verification, since compiler bug...
research
07/08/2019

APML: An Architecture Proof Modeling Language

To address the increasing size and complexity of modern software systems...
research
07/01/2021

Verifying Verified Code

A recent case study from AWS by Chong et al. proposes an effective metho...
research
09/07/2022

Small Proofs from Congruence Closure

Satisfiability Modulo Theory (SMT) solvers and equality saturation engin...
research
05/15/2019

holpy: Interactive Theorem Proving in Python

The design of modern proof assistants is faced with several sometimes co...
research
08/29/2018

Enabling Visual Design Verification Analytics - From Prototype Visualizations to an Analytics Tool using the Unity Game Engine

The ever-increasing architectural complexity in contemporary ASIC projec...
research
12/13/2021

Proof of Steak

We introduce Proof-of-Steak (PoS) as a fundamental net-zero block genera...

Please sign up or login with your details

Forgot password? Click here to reset