Politeness and Combination Methods for Theories with Bridging Functions


The Nelson–Oppen combination method is ubiquitous in Satisfiability Modulo Theories solvers. However, one of its major drawbacks is to be restricted to disjoint unions of theories. We investigate the problem of extending this combination method to particular non-disjoint unions of theories defined by connecting disjoint theories via bridging functions. A possible application is to solve verification problems expressed in a combination of data structures connected to arithmetic with bridging functions such as the length of lists and the size of trees. We present a sound and complete combination method à la Nelson–Oppen for the theory of absolutely free data structures, including lists and trees. This combination procedure is then refined for standard interpretations. The resulting theory has a nice politeness property, enabling combinations with arbitrary decidable theories of elements. In addition, we have identified a class of polite data structure theories for which the combination method remains sound and complete. This class includes all the subtheories of absolutely free data structures (e.g, the empty theory, injectivity, projection). Again, the politeness property holds for any theory in this class, which can thus be combined with bridging functions and arbitrary decidable theories of elements. This illustrates the significance of politeness in the context of non-disjoint combinations of theories.

This is a preview of subscription content, log in to check access.

Fig. 1
Fig. 2


  1. 1.

    Trivial equalities \(v=v\) are used to introduce fresh variables denoting elements. Actually, trivial equalities of sort \(\sigma \) can be omitted when \(\varvec{\kappa }(\sigma ) > 1\): in that case, the non-empty conjunction of disequalities \(v \ne v'\) of sort \(\sigma \) is sufficient.

  2. 2.

    For any constructor-based term t, \([[ {t} ]]\) is the equivalence class of t modulo \(=_{E}\).


  1. 1.

    Armando, A., Bonacina, M.P., Ranise, S., Schulz, S.: New results on rewrite-based satisfiability procedures. ACM Trans. Comput. Log. 10(1), 4 (2009)

    MathSciNet  Article  Google Scholar 

  2. 2.

    Armando, A., Ranise, S., Rusinowitch, M.: A rewriting approach to satisfiability procedures. Inf. Comput. 183(2), 140–164 (2003)

    MathSciNet  Article  Google Scholar 

  3. 3.

    Baader, F., Ghilardi, S.: Connecting many-sorted theories. J. Symb. Log. 72(2), 535–583 (2007)

    MathSciNet  Article  Google Scholar 

  4. 4.

    Baader, F., Nipkow, T.: Term Rewriting and All That. Cambridge University Press, Cambridge (1998)

    Google Scholar 

  5. 5.

    Bachmair, L., Ganzinger, H.: Rewrite-based equational theorem proving with selection and simplification. J. Log. Comput. 4(3), 217–247 (1994)

    MathSciNet  Article  Google Scholar 

  6. 6.

    Barrett, C., Shikanian, I., Tinelli, C.: An abstract decision procedure for a theory of inductive data types. JSAT 3(1–2), 21–46 (2007)

    MathSciNet  MATH  Google Scholar 

  7. 7.

    Baumgartner, P., Waldmann, U.: Hierarchic superposition with weak abstraction. In: Bonacina, M.P. (ed.) 24th International Conference on Automated Deduction (CADE-24), Lake Placid, NY, USA, volume 7898 of LNCS, pp. 39–57. Springer (2013)

    Google Scholar 

  8. 8.

    Chocron, P., Fontaine, P., Ringeissen, C.: A Gentle non-disjoint combination of satisfiability procedures. In: Demri, S., Kapur, D., Weidenbach, C. (eds.) Proceedings of the 7th International Joint Conference on Automated Reasoning, IJCAR, volume 8562 of LNCS, pp. 122–136. Springer (2014)

  9. 9.

    Chocron, P., Fontaine, P., Ringeissen, C.: A polite non-disjoint combination method: theories with bridging functions revisited. In: Felty, A.P., Middeldorp, A. (eds.) 25th International Conference on Automated Deduction (CADE-25), Berlin, Germany, volume 9195 of LNCS, pp. 419–433. Springer (2015)

  10. 10.

    Chocron, P., Fontaine, P., Ringeissen, C.: A rewriting approach to the combination of data structures with bridging theories. In: Lutz, C., Ranise, S. (eds.) Frontiers of Combining Systems (FroCoS), volume 9322 of LNCS, pp. 275–290. Springer (2015)

  11. 11.

    Fontaine, P., Ranise, S., Zarba, C.G.: Combining lists with non-stably infinite theories. In Baader, F., Voronkov, A. (eds.) Logic for Programming, Artificial Intelligence, and Reasoning (LPAR’04), volume 3452 of LNCS, pp. 51–66. Springer (2005)

  12. 12.

    Ghilardi, S.: Model-theoretic methods in combined constraint satisfiability. J. Autom. Reason. 33(3–4), 221–249 (2004)

    MathSciNet  Article  Google Scholar 

  13. 13.

    Jovanovic, D., Barrett, C.: Polite theories revisited. In: Fermueller, C., Voronkov, A. (eds.) Logic for Programming, Artificial Intelligence, and Reasoning (LPAR’10), volume 6397 of LNCS, pp. 402–416. Springer (2010)

  14. 14.

    Kruglov, E., Weidenbach, C.: Superposition decides the first-order logic fragment over ground theories. Math. Comput. Sci. 6(4), 427–456 (2012)

    MathSciNet  Article  Google Scholar 

  15. 15.

    Nelson, G., Oppen, D.C.: Simplification by cooperating decision procedures. ACM Trans. Program. Lang. Syst. 1(2), 245–257 (1979)

    Article  Google Scholar 

  16. 16.

    Nicolini, E., Ringeissen, C., Rusinowitch, M.: Combinable extensions of Abelian groups. In: Schmidt, R.A. (ed.) 22nd International Conference on Automated Deduction (CADE-22), Montreal, Canada, volume 5663 of LNCS, pp. 51–66. Springer (2009)

  17. 17.

    Nicolini, E., Ringeissen, C., Rusinowitch, M.: Combining satisfiability procedures for unions of theories with a shared counting operator. Fundam. Inform. 105(1–2), 163–187 (2010)

    MathSciNet  Article  Google Scholar 

  18. 18.

    Oppen, D.C.: Reasoning about recursively defined data structures. J. ACM 27(3), 403–411 (1980)

    MathSciNet  Article  Google Scholar 

  19. 19.

    Pham, T., Gacek, A., Whalen, M.W.: Reasoning about algebraic data types with abstractions. J. Autom. Reason. 57(4), 281–318 (2016)

    MathSciNet  Article  Google Scholar 

  20. 20.

    Ranise, S., Ringeissen, C., Zarba, C.G.: Combining data structures with nonstably infinite theories using many-sorted logic. In: Gramlich, B. (ed.) Frontiers of Combining Systems (FroCoS), volume 3717 of LNCS, pp. 48–64. Springer (2005)

  21. 21.

    Shostak, R.E.: A practical decision procedure for arithmetic with function symbols. J. ACM 26(2), 351–360 (1979)

    MathSciNet  Article  Google Scholar 

  22. 22.

    Sofronie-Stokkermans, V.: Locality results for certain extensions of theories with bridging functions. In: Schmidt, R.A. (ed.) 22nd International Conference on Automated Deduction (CADE-22), Montreal, Canada, volume 5663 of LNCS, pp. 67–83. Springer (2009)

  23. 23.

    Sofronie-Stokkermans, V.: Automated reasoning in extensions of theories of constructors with recursively defined functions and homomorphisms. In: Ball, T., Giesl, J., Hähnle, R., Nipkow, T. (eds.) Interaction versus Automation: The Two Faces of Deduction, number 09411 in Dagstuhl Seminar Proceedings. Schloss Dagstuhl-Leibniz-Zentrum fuer Informatik, Germany (2010)

  24. 24.

    Suter, P., Dotta, M., Kuncak, V.: Decision procedures for algebraic data types with abstractions. In: Hermenegildo, M.V., Palsberg, J. (eds.) Principles of Programming Languages (POPL), pp. 199–210. ACM, New York (2010)

    Google Scholar 

  25. 25.

    Suter, P., Köksal, A.S., Kuncak, V.: Satisfiability modulo recursive programs. In: Yahav, E. (ed.) 18th International Symposium on Static Analysis (SAS), Venice, Italy, volume 6887 of LNCS, pp. 298–315. Springer (2011)

  26. 26.

    Tinelli, C.: Cooperation of background reasoners in theory reasoning by residue sharing. J. Autom. Reason. 30(1), 1–31 (2003)

    MathSciNet  Article  Google Scholar 

  27. 27.

    Tinelli, C., Harandi, M.T.: A new correctness proof of the Nelson–Oppen combination procedure. In: Baader, F., Schulz, K.U. (eds.) Frontiers of Combining Systems (FroCoS). Applied Logic, pp. 103–120. Kluwer Academic Publishers, Dordrecht (1996)

    Google Scholar 

  28. 28.

    Tinelli, C., Ringeissen, C.: Unions of non-disjoint theories and combinations of satisfiability procedures. Theor. Comput. Sci. 290(1), 291–353 (2003)

    MathSciNet  Article  Google Scholar 

  29. 29.

    Tran, D., Ringeissen, C., Ranise, S., Kirchner, H.: Combination of convex theories: modularity, deduction completeness, and explanation. J. Symb. Comput. 45(2), 261–286 (2010)

    MathSciNet  Article  Google Scholar 

  30. 30.

    Wies, T., Piskac, R., Kuncak, V.: Combining theories with shared set operations. In: Ghilardi, S., Sebastiani, R. (eds.) Frontiers of Combining Systems (FroCoS), volume 5749 of LNCS, pp. 366–382. Springer (2009)

  31. 31.

    Zarba, C.G.: Combining lists with integers. In: International Joint Conference on Automated Reasoning (Short Papers), Technical Report DII 11/01, pp. 170–179. University of Siena (2001)

  32. 32.

    Zarba, C.G.: Combining multisets with integers. In: Voronkov, A. (ed.) 18th International Conference on Automated Deduction (CADE-18), Copenhagen, Denmark, volume 2392 of LNCS, pp. 363–376. Springer (2002)

  33. 33.

    Zarba, C.G.: Combining sets with cardinals. J. Autom. Reason. 34(1), 1–29 (2005)

    MathSciNet  Article  Google Scholar 

  34. 34.

    Zhang, T., Sipma, H.B., Manna, Z.: Decision procedures for term algebras with integer constraints. Inf. Comput. 204(10), 1526–1574 (2006)

    MathSciNet  Article  Google Scholar 

Download references


We are very grateful to the reviewers of this paper and of the previous related conference papers for their insightful remarks: the paper has been improved significantly thanks to their comments. Pascal Fontaine would also like to thank Jasmin C. Blanchette for discussions, encouragements and financial support through his ERC Grant.

Author information



Corresponding author

Correspondence to Christophe Ringeissen.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

This work has been partially supported by the European Research Council (ERC) starting Grant Matryoshka (713999).

Rights and permissions

Reprints and Permissions

About this article

Verify currency and authenticity via CrossMark

Cite this article

Chocron, P., Fontaine, P. & Ringeissen, C. Politeness and Combination Methods for Theories with Bridging Functions. J Autom Reasoning 64, 97–134 (2020). https://doi.org/10.1007/s10817-019-09512-4

Download citation


  • Satisfiability modulo theories
  • Combination method
  • Non-disjoint theories
  • Bridging functions