Abstract
Polite theory combination is a method for obtaining a solver for a combination of two (or more) theories using the solvers of each individual theory as black boxes. Unlike the earlier Nelson–Oppen method, which is usable only when both theories are stably infinite, only one of the theories needs to be strongly polite in order to use the polite combination method. In its original presentation, politeness was required from one of the theories rather than strong politeness, which was later proven to be insufficient. The first contribution of this paper is a proof that indeed these two notions are different, obtained by presenting a polite theory that is not strongly polite. We also study several variants of this question. The cost of the generality afforded by the polite combination method, compared to the Nelson–Oppen method, is a larger space of arrangements to consider, involving variables that are not necessarily shared between the purified parts of the input formula. The second contribution of this paper is a hybrid method (building on both polite and Nelson–Oppen combination), which aims to reduce the number of considered variables when a theory is stably infinite with respect to some of its sorts but not all of them. The time required to reason about arrangements is exponential in the worst case, so reducing the number of variables considered has the potential to improve performance significantly. We show preliminary evidence for this by demonstrating significant speed-up on a smart contract verification benchmark.
Original language | English |
---|---|
Article number | 34 |
Journal | Journal of Automated Reasoning |
Volume | 67 |
Issue number | 4 |
DOIs | |
State | Published - Dec 2023 |
Bibliographical note
Publisher Copyright:© 2023, The Author(s), under exclusive licence to Springer Nature B.V.
Funding
This work was funded in part by the Stanford Center for Blockchain Research, NSF-BSF Grant numbers 2110397 (NSF) and 2020704 (BSF), ISF Grant number 619/21, and a gift from Meta Novi to the University of Iowa.
Funders | Funder number |
---|---|
NSF-BSF | 2020704, 2110397 |
Stanford Center for Blockchain Research | |
University of Iowa | |
United States-Israel Binational Science Foundation | |
Israel Science Foundation | 619/21 |
Keywords
- Polite combination
- Satisfiability modulo theories
- Theory combination