Logo image
Reconstructing Fine-Grained Proofs of Rewrites Using a Domain-Specific Language
Conference proceeding   Open access

Reconstructing Fine-Grained Proofs of Rewrites Using a Domain-Specific Language

Andres Notzli, Haniel Barbosa, Aina Niemetz, Mathias Preiner, Andrew Reynolds, Clark Barrett and Cesare Tinelli
2022 FORMAL METHODS IN COMPUTER-AIDED DESIGN, FMCAD, Vol.3, pp.65-74
Formal Methods in Computer-Aided Design
01/01/2022
DOI: 10.34727/2022/isbn.978-3-85448-053-2_12
url
https://doi.org/10.34727/2022/isbn.978-3-85448-053-2_12View
Published (Version of record) Open Access

Abstract

Satisfiability modulo theories (SMT) solvers are widely used to prove security and safety properties of computer systems. For these applications, it is crucial that the result reported by an SMT solver be correct. Recently, there has been a renewed focus on producing independently checkable proofs in SMT solvers, partly with the aim of addressing this risk. These proofs record the reasoning done by an SMT solver and are ideally detailed enough to be easy to check. At the same time, modern SMT solvers typically implement hundreds of different term-rewriting rules in order to achieve state-of-the-art performance. Generating detailed proofs for applications of these rules is a challenge, because code implementing rewrite rules can be large and complex. Instrumenting this code to additionally produce proofs makes it even more complex and makes it harder to add new rewrite rules. We propose an alternative approach to the direct instrumentation of the rewriting module of an SMT solver. The approach uses a domain-specific language (DSL) to describe a set of rewrite rules declaratively and then reconstructs detailed proofs for specific rewrite steps on demand based on those declarative descriptions.
Computer Science Technology Computer Science, Theory & Methods Science & Technology

Details

Metrics

Logo image