E-Matching with Free Variables

@inproceedings{Rmmer2012EMatchingWF,
  title={E-Matching with Free Variables},
  author={Philipp R{\"u}mmer},
  booktitle={LPAR},
  year={2012}
}
E-matching is the most commonly used technique to handle quantifiers in SMT solvers. It works by identifying characteristic sub-expressions of quantified formulae, named triggers, which are matched during proof search on ground terms to discover relevant instantiations of the quantified formula. E-matching has proven to be an efficient and practical approach to handle quantifiers, in particular because triggers can be provided by the user to guide proof search; however, as it is heuristic in… 
Generic decision procedures for axiomatic rst-order theories
SMT solvers are efficient tools to decide the satisfiability of ground formulas, including a number of built-in theories such as congruence, linear arithmetic, arrays, and bit-vectors. Adding a
Adding Decision Procedures to SMT Solvers Using Axioms with Triggers
TLDR
This paper proposes a framework based on the notion of instantiation patterns that provides a sound, complete, and terminating solver for her theory in return, and describes and proves a corresponding extension of the traditional Abstract DPLL Modulo Theory framework.
On Satisfiability for Quantified Formulas in Instantiation-Based Procedures
Procedures for first-order logic with equality are used in many modern theorem provers and solvers, yet procedure termination in case of interesting sub-classes of satisfiable formulas remains a
Reducing the Complexity of Quantified Formulas via Variable Elimination
TLDR
This work presents a general simplification of quantified SMT formulas using variable elimination based on an analysis of the ground terms occurring as arguments in function applications and describes how a satisfying model of the resulting formula can be modified to satisfy the original formula.
Congruence Closure with Free Variables
TLDR
It is shown that the major instantiation techniques in SMT solving can be cast in a unifying framework for handling quantified formulas with equality and uninterpreted functions, and a sound and complete calculus is introduced to solve this problem in practice.
Conflicts, Models and Heuristics for Quantifier Instantiation in SMT
TLDR
An overview of recent advances in quantifier instantiation in SMT is given, including the well-known technique known as E-matching, and new instantiation-based techniques that are specialized to background theories such as linear real and integer arithmetic are mentioned.
Identifying Overly Restrictive Matching Patterns in SMT-based Program Verifiers
TLDR
A novel algorithm is designed to synthesize missing triggering terms required to complete a proof, and tool developers can use this information to refine their matching patterns and prevent similar verification errors, or to fix a detected unsoundness.
Triggerless Happy - Intermediate Verification with a First-Order Prover
TLDR
Experiments suggest that first-order provers can help achieve more flexible and robust performance in program verification, while avoiding the pitfalls of having to manually guide instantiation of quantifiers by means of triggers.
Theorem Proving with Bounded Rigid E-Unification
TLDR
It is shown that (simultaneous) BREU is NP-complete, how BREU problems can be encoded as propositional SAT-problems, and used to introduce a sound and complete sequent calculus for first-order logic with equality.
Unification with Abstraction and Theory Instantiation in Saturation-Based Reasoning
TLDR
Two new inference rules for reasoning with non-ground clauses are introduced by providing a new method of using SMT solvers in saturation-based reasoning and can be used to discharge the constraints introduced by the second.
...
1
2
3
...

References

SHOWING 1-10 OF 36 REFERENCES
Efficient E-Matching for SMT Solvers
TLDR
An index that works on E-graphs is introduced, called E-matching code treesthat combine features of substitution and code trees, used in saturation based theorem provers and shows substantial performance improvements over existing state-of-the-art SMT solvers.
Solving Quantified Verification Conditions Using Satisfiability Modulo Theories
TLDR
This paper describes a methodology for reasoning about quantifiers in SMT systems and introduces the notion of instantiation level which provides an effective mechanism for prioritizing and managing the large search space inherent in quantifier instantiation techniques.
What's Decidable About Arrays?
TLDR
This work studies a decision procedure for satisfiability in an expressive fragment of a theory of arrays, which is parameterized by the theories of the array elements, and proves that satisfiability is undecidable for several natural extensions to the fragment.
Simplify: a theorem prover for program checking
TLDR
The article describes two techniques, error context reporting and error localization, for helping the user to determine the reason that a false conjecture is false, and includes detailed performance figures on conjectures derived from realistic program-checking problems.
Complete Instantiation for Quantified Formulas in Satisfiabiliby Modulo Theories
TLDR
This work presents several decidable fragments of first order logic modulo theories, and shows how to construct models for satisfiable formulas in these fragments.
A Temporal Logic of Nested Calls and Returns
TLDR
This work introduces a temporal logic of calls and returns (CaRet) for specification and algorithmic verification of correctness requirements of structured programs and presents a tableau construction that reduces the model checking problem to the emptiness problem for a Buchi pushdown system.
A Constraint Sequent Calculus for First-Order Logic with Linear Integer Arithmetic
TLDR
A sequent calculus is introduced that combines ideas from free-variable constraint tableaux with the Omega quantifier elimination procedure and is complete for theorems of first-order logic and a substantial fragment of the combination of both.
Refutational theorem proving for hierarchic first-order theories
TLDR
It is shown that superposition together with variable abstraction and constraint refutation is refutationally complete for theories that are sufficiently complete with respect to simple instances, and the concept of approximation between theorem proving systems is introduced.
Calculi for Program Incorrectness and Arithmetic
This thesis is about the development and usage of deductive methods in two main areas: (i) the deductive dis-verification of programs, i.e., how techniques for deductive verification of programs can
Model Evolution with Equality Modulo Built-in Theories
TLDR
A novel instantiation-based method for a large fragment of first-order logic with equality modulo a given complete background theory, such as linear integer arithmetic, is proposed.
...
1
2
3
4
...