Towards bit-width-independent proofs in SMT solvers

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

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

Abstract

Many SMT solvers implement efficient SAT-based procedures for solving fixed-size bit-vector formulas. These approaches, 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, this approach can still solve many formulas 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 rewrites.

Original languageEnglish
Title of host publicationAutomated Deduction – CADE 2019- 27th International Conference on Automated Deduction, Proceedings
EditorsPascal Fontaine
Pages366-384
Number of pages19
DOIs
StatePublished - 2019
Externally publishedYes
Event27th International Conference on Automated Deduction, CADE 2019 - Natal, Brazil
Duration: 27 Aug 201930 Aug 2019

Publication series

NameLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
Volume11716 LNAI

Conference

Conference27th International Conference on Automated Deduction, CADE 2019
Country/TerritoryBrazil
CityNatal
Period27/08/1930/08/19

All Science Journal Classification (ASJC) codes

  • Theoretical Computer Science
  • General Computer Science

Fingerprint

Dive into the research topics of 'Towards bit-width-independent proofs in SMT solvers'. Together they form a unique fingerprint.

Cite this