• Home
  • Search
  • Certified Decision Procedures for Width-Independent Bitvector Predicates
  • https://doi.org/10.1145/3763148Copy DOI Icon

Certified Decision Procedures for Width-Independent Bitvector Predicates

Show More
  • Abstract
  • Literature Map
  • References
  • Similar Papers
Abstract

Bitvectors are foundational for automated reasoning. A few interactive theorem provers (ITP), such as Lean, have strong support for deciding fixed-width bitvector predicates by means of bitblasting. However, even these ITPs provide little automation for width-independent bitvector predicates. To fill this gap, we contribute novel, mechanized decision procedures for width-independent bitvector predicates in Lean. Classical algorithms to decide fragments of width-independent bitvector theory can be viewed from the lens of model checking, where the formula corresponds to an automaton and the correctness of the formula is a safety property. However, we cannot currently use this lens in mechanized proofs, as there are no executable, fast, and formally verified model checking algorithms that can be used interactively from within ITPs. To fill this gap, we mechanize key algorithms in the model checking literature: k -induction, automata reachability, automata emptiness checking, and automata minimization. Using these mechanized algorithms, we contribute scalable, mechanized, decision procedures for width-independent bitvector predicates. Furthermore, for controlled fragments of mixtures of arithmetic and bitwise operations which occur in the deobfuscation literature, we mechanize a recent fast algorithm (MBA-Blast), which outperforms the more general procedures on this fragment. Finally, we evaluate our decision procedures on benchmarks from classical compiler problems such as Hacker’s Delight and the LLVM peephole optimizer, as well as on equivalence checking problems for program obfuscation. Our tools solve 100% of Hacker’s Delight, two of our tools solve 100% of the deobfuscation dataset, and up to 27% of peephole rewrites extracted from LLVM’s peephole rewriting test suite. Our new decision procedures provide a push-button experience for width-independent bitvector reasoning in interactive theorem provers, and, more broadly, pave the way for foundational algorithms for fast, formally verified model checking.

Similar Papers
  • Research Article
  • Citations4

VeriML

  • Sep 27, 2010
  • ACM SIGPLAN Notices
  • Antonis Stampoulis +1
  • Book Chapter
  • Citations46

Certification of Automated Termination Proofs

  • Jan 01, 2007
  • Evelyne Contejean +4
  • Book Chapter
  • Citations2

Verification by Construction of Distributed Algorithms

  • Jan 01, 2019
  • Dominique Méry
  • Book Chapter
  • Citations2

Independently Checkable Proofs from Decision Procedures: Issues and Progress

  • Jan 01, 2005
  • Allen Van Gelder
  • Research Article
  • Citations2

Towards Combining Model Checking and Proof Checking

  • Nov 27, 2018
  • The Computer Journal
  • Ying Jiang +3
  • Research Article
  • Citations6

Proof Certificates for Equality Reasoning

  • Jul 01, 2016
  • Electronic Notes in Theoretical Computer Science
  • Zakaria Chihani +1
  • Conference Article
  • Citations45

VeriML

  • Sep 27, 2010
  • Antonis Stampoulis +1
  • Research Article
  • Citations11

Towards an integrated formal method for verification of liveness properties in distributed systems: with application to population protocols

  • Dec 29, 2015
  • Software & Systems Modeling
  • Dominique Méry +1
  • Book Chapter
  • Citations79

Verifying Safety Properties with the TLA + Proof System

  • Jan 01, 2010
  • Kaustuv Chaudhuri +3
  • Research Article
  • Citations15

Bounded model checking of infinite state systems

  • Aug 31, 2006
  • Formal Methods in System Design
  • Tobias Schuele +1
  • Front Matter
  • Citations1

Preface: Volume 58, Issue 2

  • Nov 01, 2001
  • Electronic Notes in Theoretical Computer Science
  • Maria Paola Bonacina +1
  • Conference Article
  • Citations18

Deciding and Interpolating Algebraic Data Types by Reduction

  • Sep 01, 2017
  • Hossein Hojjat +1
  • Book Chapter
  • Citations427

PVS: Combining specification, proof checking, and model checking

  • Jan 01, 1996
  • S Owre +4
  • Conference Article
  • Citations19

Boosting SMT solver performance on mixed-bitwise-arithmetic expressions

  • Jun 18, 2021
  • Dongpeng Xu +6
  • Book Chapter
  • Citations19

Simultaneous SAT-Based Model Checking of Safety Properties

  • Jan 01, 2006
  • Zurab Khasidashvili +3
Cactus Communications logo

Copyright 2026 Cactus Communications. All rights reserved.