Craig Interpolation in the Presence of Non-linear Constraints

  • Stefan Kupferschmid
  • Bernd Becker
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6919)


An increasing number of applications in particular in the verification area leverages Craig interpolation. Craig interpolants (CIs) can be computed for many different theories such as: propositional logic, linear inequalities over the reals, and the combination of the preceding theories with uninterpreted function symbols. To the best of our knowledge all previous tools that provide CIs are addressing decidable theories. With this paper we make Craig interpolation available for an in general undecidable theory that contains Boolean combinations of linear and non-linear constraints including transcendental functions like sin(·) and cos(·). Such formulae arise e.g. during the verification of hybrid systems. We show how the construction rules for CIs can be extended to handle non-linear constraints. To do so, an existing SMT solver based on a close integration of SAT and Interval Constraint Propagation is enhanced to construct CIs on the basis of proof trees. We provide first experimental results demonstrating the usefulness of our approach: With the help of Craig interpolation we succeed in proving safety in cases where the basic solver could not provide a complete answer. Furthermore, we point out the (heuristic) decisions we made to obtain suitable CIs and discuss further possibilities to increase the flexibility of the CI construction.


SAT SMT Craig Interpolation Interval Arithmetic BMC 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Craig, W.: Linear reasoning: A new form of the Herbrand-Gentzen theorem. Journal of Symbolic Logic (3), 250–268 (1957)Google Scholar
  2. 2.
    McMillan, K.L.: 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
  3. 3.
    McMillan, K.L.: An interpolating theorem prover. Theor. Comput. Sci. (1) (2005)Google Scholar
  4. 4.
    Beyer, D., Henzinger, T.A., Jhala, R., Majumdar, R.: The software Model Checker Blast: Applications to Software Engineering. International Journal on Software Tools for Technology Transfer (STTT) (5-6), 505–525 (2007)Google Scholar
  5. 5.
    Scholl, C., Disch, S., Pigorsch, F., Kupferschmid, S.: Using an SMT solver and Craig interpolation to detect and remove redundant linear constraints in representations of non-convex polyhedra. In: International Workshop on Satisfiability Modulo Theories, pp. 18–26 (2008)Google Scholar
  6. 6.
    Cimatti, A., Griggio, A., Sebastiani, R.: Efficient Generation of Craig Interpolants in Satisfiability modulo theories. In: CoRR (2009)Google Scholar
  7. 7.
    Fränzle, M., Herde, C., Ratschan, S., Schubert, T., Teige, T.: Efficient Solving of Large Non-linear Arithmetic Constraint Systems with Complex Boolean Structure. JSAT Special Issue on Constraint Programming and SAT, 209–236 (2007)Google Scholar
  8. 8.
    Matiyasevich, Y.V.: Enumerable sets are Diophantine. Soviet Mathematics. Doklady 11(2), 354–358 (1970)zbMATHGoogle Scholar
  9. 9.
    Davis, M., Logemann, G., Loveland, D.: A Machine Program for Theorem Proving. In: CACM, pp. 394–397 (1962)Google Scholar
  10. 10.
    Davis, M., Putnam, H.: A Computing Procedure for Quantification Theory. Journal of the ACM (3), 201–215 (1960)Google Scholar
  11. 11.
    Benhamou, F., Granvilliers, L.: Continuous and Interval Constraints. In: Handbook of Constraint Programming. Foundations of Artificial Intelligence, pp. 571–603 (2006)Google Scholar
  12. 12.
    Tseitin, G.S.: On the complexity of derivation in propositional calculus. Studies in Constructive Mathematics and Mathematical Logic, Part 2, 115–125 (1970)Google Scholar
  13. 13.
    Kupferschmid, S., Becker, B., Teige, T., Fränzle, M.: Proof certificates and non-linear arithmetic constraints. In: IEEE Design and Diagnostics of Electronic Circuits and Systems. IEEE, Los Alamitos (2011)Google Scholar
  14. 14.
    Yorsh, G., Musuvathi, M.: A Combination Method for Generating Interpolants. In: Nieuwenhuis, R. (ed.) CADE 2005. LNCS (LNAI), vol. 3632, pp. 353–368. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  15. 15.
    Pudlàk, P.: Lower bounds for resolution and cutting planes proofs and monotone computations. J. of Symbolic Logic, 981–998 (1995)Google Scholar
  16. 16.
    Alur, R., Courcoubetis, C., Halbwachs, N., Henzinger, T.A., Ho, P.H., Nicollin, X., Olivero, A., Sifakis, J., Yovine, S.: The algorithmic analysis of hybrid systems. Theoretical Computer Science 138, 3–34 (1995)MathSciNetCrossRefzbMATHGoogle Scholar
  17. 17.
    May, R.M.: Simple Mathematical Models with very Complicated Dynamics. Nature, 459 (1976)Google Scholar
  18. 18.
    Hènon, M.: A two-dimensional mapping with a strange attractor. In: Communications in Mathematical Physics (1976)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2011

Authors and Affiliations

  • Stefan Kupferschmid
    • 1
  • Bernd Becker
    • 1
  1. 1.Albert-Ludwigs-Universität FreiburgGermany

Personalised recommendations