2 research outputs found
Proof Tree Preserving Interpolation
Craig interpolation in SMT is difficult because, e. g., theory combination
and integer cuts introduce mixed literals, i. e., literals containing local
symbols from both input formulae. In this paper, we present a scheme to compute
Craig interpolants in the presence of mixed literals. Contrary to existing
approaches, this scheme neither limits the inferences done by the SMT solver,
nor does it transform the proof tree before extracting interpolants. Our scheme
works for the combination of uninterpreted functions and linear arithmetic but
is extendable to other theories. The scheme is implemented in the interpolating
SMT solver SMTInterpol.Comment: Improved and simplified version of the paper published in TACAS 201
Resolution Proof Transformation for Compression and Interpolation
Verification methods based on SAT, SMT, and Theorem Proving often rely on
proofs of unsatisfiability as a powerful tool to extract information in order
to reduce the overall effort. For example a proof may be traversed to identify
a minimal reason that led to unsatisfiability, for computing abstractions, or
for deriving Craig interpolants. In this paper we focus on two important
aspects that concern efficient handling of proofs of unsatisfiability:
compression and manipulation. First of all, since the proof size can be very
large in general (exponential in the size of the input problem), it is indeed
beneficial to adopt techniques to compress it for further processing. Secondly,
proofs can be manipulated as a flexible preprocessing step in preparation for
interpolant computation. Both these techniques are implemented in a framework
that makes use of local rewriting rules to transform the proofs. We show that a
careful use of the rules, combined with existing algorithms, can result in an
effective simplification of the original proofs. We have evaluated several
heuristics on a wide range of unsatisfiable problems deriving from SAT and SMT
test cases