Abstract
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.
Similar content being viewed by others
Explore related subjects
Discover the latest articles, news and stories from top researchers in related subjects.Notes
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.
For any constructor-based term t, \([[ {t} ]]\) is the equivalence class of t modulo \(=_{E}\).
References
Armando, A., Bonacina, M.P., Ranise, S., Schulz, S.: New results on rewrite-based satisfiability procedures. ACM Trans. Comput. Log. 10(1), 4 (2009)
Armando, A., Ranise, S., Rusinowitch, M.: A rewriting approach to satisfiability procedures. Inf. Comput. 183(2), 140–164 (2003)
Baader, F., Ghilardi, S.: Connecting many-sorted theories. J. Symb. Log. 72(2), 535–583 (2007)
Baader, F., Nipkow, T.: Term Rewriting and All That. Cambridge University Press, Cambridge (1998)
Bachmair, L., Ganzinger, H.: Rewrite-based equational theorem proving with selection and simplification. J. Log. Comput. 4(3), 217–247 (1994)
Barrett, C., Shikanian, I., Tinelli, C.: An abstract decision procedure for a theory of inductive data types. JSAT 3(1–2), 21–46 (2007)
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)
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)
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)
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)
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)
Ghilardi, S.: Model-theoretic methods in combined constraint satisfiability. J. Autom. Reason. 33(3–4), 221–249 (2004)
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)
Kruglov, E., Weidenbach, C.: Superposition decides the first-order logic fragment over ground theories. Math. Comput. Sci. 6(4), 427–456 (2012)
Nelson, G., Oppen, D.C.: Simplification by cooperating decision procedures. ACM Trans. Program. Lang. Syst. 1(2), 245–257 (1979)
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)
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)
Oppen, D.C.: Reasoning about recursively defined data structures. J. ACM 27(3), 403–411 (1980)
Pham, T., Gacek, A., Whalen, M.W.: Reasoning about algebraic data types with abstractions. J. Autom. Reason. 57(4), 281–318 (2016)
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)
Shostak, R.E.: A practical decision procedure for arithmetic with function symbols. J. ACM 26(2), 351–360 (1979)
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)
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)
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)
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)
Tinelli, C.: Cooperation of background reasoners in theory reasoning by residue sharing. J. Autom. Reason. 30(1), 1–31 (2003)
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)
Tinelli, C., Ringeissen, C.: Unions of non-disjoint theories and combinations of satisfiability procedures. Theor. Comput. Sci. 290(1), 291–353 (2003)
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)
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)
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)
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)
Zarba, C.G.: Combining sets with cardinals. J. Autom. Reason. 34(1), 1–29 (2005)
Zhang, T., Sipma, H.B., Manna, Z.: Decision procedures for term algebras with integer constraints. Inf. Comput. 204(10), 1526–1574 (2006)
Acknowledgements
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
Authors and Affiliations
Corresponding author
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
About this article
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
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10817-019-09512-4