A Polite Non-Disjoint Combination Method: Theories with Bridging Functions Revisited
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 connected via bridging functions. The motivation is, e.g., 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 procedure à 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.
KeywordsFunction Symbol Combination Method Atomic Formula Predicate Symbol Polite Theory
We are grateful to Jasmin Blanchette and to the anonymous reviewers for many constructive remarks.
- 5.Chocron, P., Fontaine, P., Ringeissen, C.: A Polite Non-Disjoint Combination Method: Theories with Bridging Functions Revisited (Extended Version) (2015). http://hal.inria.fr
- 15.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
- 17.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 (1996)Google Scholar
- 20.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)Google Scholar