Computing Small Unsatisfiable Cores in Satisfiability Modulo Theories

by   Alessandro Cimatti, et al.

The problem of finding small unsatisfiable cores for SAT formulas has recently received a lot of interest, mostly for its applications in formal verification. However, propositional logic is often not expressive enough for representing many interesting verification problems, which can be more naturally addressed in the framework of Satisfiability Modulo Theories, SMT. Surprisingly, the problem of finding unsatisfiable cores in SMT has received very little attention in the literature. In this paper we present a novel approach to this problem, called the Lemma-Lifting approach. The main idea is to combine an SMT solver with an external propositional core extractor. The SMT solver produces the theory lemmas found during the search, dynamically lifting the suitable amount of theory information to the Boolean level. The core extractor is then called on the Boolean abstraction of the original SMT problem and of the theory lemmas. This results in an unsatisfiable core for the original SMT problem, once the remaining theory lemmas are removed. The approach is conceptually interesting, and has several advantages in practice. In fact, it is extremely simple to implement and to update, and it can be interfaced with every propositional core extractor in a plug-and-play manner, so as to benefit for free of all unsat-core reduction techniques which have been or will be made available. We have evaluated our algorithm with a very extensive empirical test on SMT-LIB benchmarks, which confirms the validity and potential of this approach.


page 1

page 2

page 3

page 4


The VLSAT-3 Benchmark Suite

This report presents VLSAT-3 (an acronym for "Very Large Boolean SATisfi...

On the Tour Towards DPLL(MAPF) and Beyond

We discuss milestones on the tour towards DPLL(MAPF), a multi-agent path...

Non-Invasive Reverse Engineering of Finite State Machines Using Power Analysis and Boolean Satisfiability

In this paper, we present a non-invasive reverse engineering attack base...

SyGuS Techniques in the Core of an SMT Solver

We give an overview of recent techniques for implementing syntax-guided ...

NeuroCore: Guiding CDCL with Unsat-Core Predictions

The NeuroSAT neural network architecture was recently introduced for pre...

Optimization Modulo the Theories of Signed Bit-Vectors and Floating-Point Numbers

Optimization Modulo Theories (OMT) is an important extension of SMT whic...