Satisfiability Modulo Extensional Constant Arrays (Extended Version)
Mathias Preiner, Aina Niemetz, Clark Barrett

TL;DR
This paper introduces a new decision procedure for the SMT theory of arrays with constant arrays, supporting arbitrary index domains and improving efficiency in verification tasks.
Contribution
It presents a novel calculus and implementation for array reasoning in SMT solvers, extending support to finite index domains with constant arrays.
Findings
Implemented in Bitwuzla SMT solver
Evaluated on diverse benchmarks
Supports arbitrary index domains
Abstract
Reasoning about array data structures is a key requirement for many applications in hardware and software verification, especially in combination with machine integers. The Satisfiability Modulo Theories (SMT) theory of extensional arrays provides array read and write operators and allows extensionality over arrays. This is sufficient to express many aspects of computer-aided verification, but lacks succinctness to efficiently deal with arrays that are initialized with a default value. Existing procedures for extending the SMT-LIB theory of arrays with support for constant arrays are limited to arrays with infinite index domains, and existing implementations in SMT solvers only support a fragment of the theory for finite index domains. In this paper, we present a novel decision procedure for the theory of arrays with constant arrays that supports arbitrary index domains and is not…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
