作者
Ryan Doenges, Tobias Kappé, John Sarracino, Nate Foster, Greg Morrisett
发表日期
2022/6/9
图书
Proceedings of the 43rd ACM SIGPLAN International Conference on Programming Language Design and Implementation
页码范围
950-965
简介
We present Leapfrog, a Coq-based framework for verifying equivalence of network protocol parsers. Our approach is based on an automata model of P4 parsers, and an algorithm for symbolically computing a compact representation of a bisimulation, using "leaps." Proofs are powered by a certified compilation chain from first-order entailments to low-level bitvector verification conditions, which are discharged using off-the-shelf SMT solvers. As a result, parser equivalence proofs in Leapfrog are fully automatic and push-button.
We mechanically prove the core metatheory that underpins our approach, including the key transformations and several optimizations. We evaluate Leapfrog on a range of practical case studies, all of which require minimal configuration and no manual proof. Our largest case study uses Leapfrog to perform translation validation for a third-party compiler from automata to …
引用总数
学术搜索中的文章
R Doenges, T Kappé, J Sarracino, N Foster, G Morrisett - Proceedings of the 43rd ACM SIGPLAN International …, 2022