Ground Interpolation for the Theory of Equality

Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5505)


Given a theory \(\mathcal{T}\) and two formulas A and B jointly unsatisfiable in \(\mathcal{T}\), a theory interpolant of A and B is a formula I such that (i) its non-theory symbols are shared by A and B, (ii) it is entailed by A in \(\mathcal{T}\), and (iii) it is unsatisfiable with B in \(\mathcal{T}\). Theory interpolants are used in model checking to accelerate the computation of reachability relations. We present a novel method for computing ground interpolants for ground formulas in the theory of equality. Our algorithm computes interpolants from colored congruence graphs representing derivations in the theory of equality. 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.


Model Check Horn Clause Interpolation Property Resolution Proof Parent Path 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


  1. 1.
    Decision Procedure Toolkit (2008),
  2. 2.
    Barrett, C., Ranise, S., Stump, A., Tinelli, C.: The Satisfiability Modulo Theories Library, SMT-LIB (2008),
  3. 3.
    Cimatti, A., Griggio, A., Sebastiani, R.: Efficient interpolant generation in satisfiability modulo theories. In: Ramakrishnan, C.R., Rehof, J. (eds.) TACAS 2008. LNCS, vol. 4963, pp. 397–412. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  4. 4.
    Craig, W.: Three uses of the Herbrand-Gentzen theorem in relating model theory and proof theory. Journal of Symbolic Logic 22(3), 269–285 (1957)MathSciNetCrossRefzbMATHGoogle Scholar
  5. 5.
    Ghilardi, S.: Model-theoretic methods in combined constraint satisfiability. Journal of Automated Reasoning 33(3–4), 221–249 (2005)MathSciNetzbMATHGoogle Scholar
  6. 6.
    Kapur, D., Majumdar, R., Zarba, C.G.: Interpolation for data structures. In: Young, M., Devanbu, P.T. (eds.) SIGSOFT FSE, pp. 105–116. ACM, New York (2006)Google Scholar
  7. 7.
    McMillan, K.: Interpolation and SAT-based model checking. In: Hunt Jr., W.A., Somenzi, F. (eds.) CAV 2003. LNCS, vol. 2725, pp. 1–13. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  8. 8.
    McMillan, K.L.: An interpolating theorem prover. Theoretical Computer Science 345(1), 101–121 (2005)MathSciNetCrossRefzbMATHGoogle Scholar
  9. 9.
    Nelson, G., Oppen, D.C.: Simplification by cooperating decision procedures. ACM Transactions on Programming Languages and Systems 1(2), 245–257 (1979)CrossRefzbMATHGoogle Scholar
  10. 10.
    Nelson, G., Oppen, D.C.: Fast decision procedures based on congruence closure. Journal of the ACM 27(2), 356–364 (1980)MathSciNetCrossRefzbMATHGoogle Scholar
  11. 11.
    Nieuwenhuis, R., Oliveras, A.: Proof-producing congruence closure. In: Giesl, J. (ed.) RTA 2005. LNCS, vol. 3467, pp. 453–468. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  12. 12.
    Pudlák, P.: Lower bounds for resolution and cutting planes proofs and monotone computations. Journal of Symbolic Logic 62(3) (1997)Google Scholar
  13. 13.
    Tinelli, C.: Cooperation of background reasoners in theory reasoning by residue sharing. Journal of Automated Reasoning 30(1), 1–31 (2003)MathSciNetCrossRefzbMATHGoogle Scholar
  14. 14.
    Yorsh, G., Musuvathi, M.: A combination method for generating interpolants. In: Nieuwenhuis, R. (ed.) CADE 2005. LNCS, vol. 3632, pp. 353–368. Springer, Heidelberg (2005)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2009

Authors and Affiliations

  1. 1.Department of Computer ScienceThe University of IowaUSA
  2. 2.Strategic CAD LabsIntel CorporationUSA

Personalised recommendations