Counterexample-Guided Prophecy for Model Checking Modulo the Theory of Arrays

01/18/2021
by   Makai Mann, et al.
0

We develop a framework for model checking infinite-state systems by automatically augmenting them with auxiliary variables, enabling quantifier-free induction proofs for systems that would otherwise require quantified invariants. We combine this mechanism with a counterexample-guided abstraction refinement scheme for the theory of arrays. Our framework can thus, in many cases, reduce inductive reasoning with quantifiers and arrays to quantifier-free and array-free reasoning. We evaluate the approach on a wide set of benchmarks from the literature. The results show that our implementation often outperforms state-of-the-art tools, demonstrating its practical potential.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
01/26/2018

Invariant Checking of NRA Transition Systems via Incremental Reduction to LRA with EUF

Model checking invariant properties of designs, represented as transitio...
research
02/23/2020

Verifying Array Manipulating Programs with Full-Program Induction

We present a full-program induction technique for proving (a sub-class o...
research
12/05/2017

Partial Predicate Abstraction and Counter-Example Guided Refinement

In this paper we present a counter-example guided abstraction and approx...
research
07/12/2017

Verifying Array Manipulating Programs by Tiling

Formally verifying properties of programs that manipulate arrays in loop...
research
05/06/2022

Regular Model Checking Upside-Down: An Invariant-Based Approach

Regular model checking is a well-established technique for the verificat...
research
10/14/2020

Interpolation and Amalgamation for Arrays with MaxDiff (Extended Version)

In this paper, the theory of McCarthy's extensional arrays enriched with...
research
05/04/2018

Detecting Mutations by eBWT

In this paper we develop a theory describing how the extended Burrows-Wh...

Please sign up or login with your details

Forgot password? Click here to reset