Towards Satisfiability Modulo Parametric Bit-vectors

Aina Niemetz, Mathias Preiner, Andrew Reynolds, Yoni Zohar, Clark Barrett, Cesare Tinelli

Research output: Contribution to journalArticlepeer-review

7 Scopus citations

Abstract

Many SMT solvers implement efficient SAT-based procedures for solving fixed-size bit-vector formulas. These techniques, however, cannot be used directly to reason about bit-vectors of symbolic bit-width. To address this shortcoming, we propose a translation from bit-vector formulas with parametric bit-width to formulas in a logic supported by SMT solvers that includes non-linear integer arithmetic, uninterpreted functions, and universal quantification. While this logic is undecidable, our approach can still solve many formulas that arise in practice by capitalizing on advances in SMT solving for non-linear arithmetic and universally quantified formulas. We provide several case studies in which we have applied this approach with promising results, including the bit-width independent verification of invertibility conditions, compiler optimizations, and bit-vector rewrite rules.

Original languageEnglish
Pages (from-to)1001-1025
Number of pages25
JournalJournal of Automated Reasoning
Volume65
Issue number7
DOIs
StatePublished - Oct 2021

Bibliographical note

Publisher Copyright:
© 2021, The Author(s), under exclusive licence to Springer Nature B.V.

Funding

This work was supported in part by DARPA (Awards N66001-18-C-4012 and FA8650-18-2-7861), ONR (Award N68335-17-C-0558), NSF (Award 1656926), and the Stanford Center for Blockchain Research.

FundersFunder number
Stanford Center for Blockchain Research
National Science Foundation1656926
Office of Naval ResearchN68335-17-C-0558
Defense Advanced Research Projects AgencyFA8650-18-2-7861, N66001-18-C-4012

    Keywords

    • Bit-precise Reasoning
    • Parametric Bit-vectors
    • Satisfiability Modulo Theories

    Fingerprint

    Dive into the research topics of 'Towards Satisfiability Modulo Parametric Bit-vectors'. Together they form a unique fingerprint.

    Cite this