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 language | English |
|---|---|
| Pages (from-to) | 1001-1025 |
| Number of pages | 25 |
| Journal | Journal of Automated Reasoning |
| Volume | 65 |
| Issue number | 7 |
| DOIs | |
| State | Published - Oct 2021 |
Keywords
- Bit-precise Reasoning
- Parametric Bit-vectors
- Satisfiability Modulo Theories
All Science Journal Classification (ASJC) codes
- Software
- Computational Theory and Mathematics
- Artificial Intelligence