On Shostak's Decision Procedure for Combinations of Theories (original) (raw)
Related papers
A generalization of Shostak's method for combining decision procedures
… Margherita Ligure, Italy, April 8-10 …, 2002
Consider the problem of determining whether a quanti erfree formula is satis able in some rst-order theory T . Shostak's algorithm decides this problem for a certain class of theories with both interpreted and uninterpreted functions. We present two new algorithms based on Shostak's method. The rst is a simple subset of Shostak's algorithm for the same class of theories but without uninterpreted functions. This simpli ed algorithm is easy to understand and prove correct, providing insight into how and why Shostak's algorithm works. The simpli ed algorithm is then used as the foundation for a generalization of Shostak's method based on the Nelson-Oppen method for combining theories.
Validity checking for combinations of theories with equality
Formal Methods In Computer-Aided Design, 1996
An essential component in many veri cation methods is a fast decision procedure for validating logical expressions. This paper presents the algorithm used in the Stanford Validity Checker (SVC) which has been used to aid several realistic hardware veri cation efforts. The logic for this decision procedure includes Boolean and uninterpreted functions and linear arithmetic. We have also successfully incorporated other interpreted functions, such as array operations and linear inequalities. The primary techniques which allow a complete and e cient implementation are expression sharing, heuristic rewriting, and congruence closure with interpreted functions. We discuss these techniques and present the results of initial experiments in which SVC is used as a decision procedure in PVS, resulting in dramatic speed-ups.
Automatic Decidability for Theories Modulo Integer Offsets
2012
Many verification problems can be reduced to a satisfiability problem modulo theories. For building satisfiability procedures the rewriting-based approach uses a general calculus for equational reasoning named superposition. Schematic superposition, in turn, provides a mean to reason on the derivations computed by superposition. Until now, schematic superposition was only studied for standard superposition. We present a schematic superposition calculus modulo a fragment of arithmetics, namely the theory of Integer Offsets. This new schematic calculus is used to prove the decidability of the satisfiability problem for some theories extending Integer Offsets. We illustrate our theoretical contribution on theories representing extensions of classical data structures, e.g., lists and records. An implementation in the rewriting-based Maude system constitutes a practical contribution. It enables automatic decidability proofs for theories of practical use.
Ground interpolation for the theory of equality
Logical Methods in Computer Science, 2012
Given a theory T and two formulas A and B jointly unsatisfiable in T , a theory interpolant of A and B is a formula I such that (i) its non-theory symbols are shared by both A and B, (ii) it is entailed by A in T , and (iii) it is unsatisfiable with B in T. Theory interpolation has found several successful applications in model checking. We present a novel method for computing interpolants for ground formulas in the theory of equality. The method produces interpolants from colored congruence graphs representing derivations in that theory. These graphs can be produced by conventional congruence closure algorithms in a straightforward manner. By working with graphs, rather than at the level of individual proof steps, we are able to derive interpolants that are pleasingly simple (conjunctions of Horn clauses) and smaller than those generated by other tools. Our interpolation method can be seen as a theory-specific implementation of a cooperative interpolation game between two provers. We present a generic version of the interpolation game, parametrized by the theory T , and define a general method to extract runs of the game from proofs in T and then generate interpolants from these runs.
On Hierarchical Reasoning in Combinations of Theories
Lecture Notes in Computer Science, 2010
In this paper we study theory combinations over non-disjoint signatures in which hierarchical and modular reasoning is possible. We use a notion of locality of a theory extension parameterized by a closure operator on ground terms. We give criteria for recognizing these types of theory extensions. We then show that combinations of extensions of theories which are local in this extended sense have also a locality property and hence allow modular and hierarchical reasoning. We thus obtain parameterized decidability and complexity results for many (combinations of) theories important in verification.
Decidability and Undecidability Results for Nelson-Oppen and Rewrite-Based Decision Procedures
2006
In the context of combinations of theories with disjoint signatures, we classify the component theories according to the decidability of constraint satisfiability problems in finite and infinite models, respectively. We exhibit a theory T 1 such that satisfiability is decidable, but satisfiability in infinite models is undecidable. It follows that satisfiability in T 1 ∪ T 2 is undecidable, whenever T2 has only infinite models, even if signatures are disjoint and satisfiability in T2 is decidable.