Abstract
Reasoning with quantifiers and theories is at the core of many applications in program analysis and verification. Whilst the problem is undecidable in general and hard in practice, we have been making large pragmatic steps forward. Our previous work proposed an instantiation rule for theory reasoning that produced pragmatically useful instances. Whilst this led to an increase in performance, it had its limitations as the rule produces ground instances which (i) can be overly specific, thus not useful in proof search, and (ii) contribute to the already problematic search space explosion as many new instances are introduced. This paper begins by introducing that specifically addresses these two concerns as it produces general solutions and it is a simplification rule, i.e. it replaces an existing clause by a ‘simpler’ one. Encouraged by initial success with this new rule, we performed an experiment to identify further common cases where the complex structure of theory terms blocked existing methods. This resulted in four further simplification rules for theory reasoning. The resulting extensions are implemented in the Vampire theorem prover and evaluated on SMT-LIB, showing that the new extensions result in a considerable increase in the number of problems solved, including 90 problems unsolved by state-of-the-art SMT solvers.
Chapter PDF
Similar content being viewed by others
References
Vampire website. https://vprover.github.io/.
E. Althaus, E. Kruglov, and C. Weidenbach. Superposition modulo linear arithmetic SUP(LA). In Frontiers of Combining Systems, 7th International Symposium, FroCoS 2009, Trento, Italy, September 16–18, 2009. Proceedings, vol. 5749 of Lecture Notes in Computer Science, pp. 84–99. Springer, 2009.
L. Bachmair, H. Ganzinger, and U. Waldmann. Refutational theorem proving for hierarchic first-order theories. Appl. Algebra Eng. Commun. Comput., 5:193–212, 1994.
C. Barrett, C. Conway, M. Deters, L. Hadarean, D. Jovanovic, T. King, A. Reynolds, and C. Tinelli. CVC4. In Proceedings of the 23rd International Conference on Computer Aided Verification, number 6806 in Lecture Notes in Computer Science, pp. 171–177. Springer-Verlag, 2011.
P. Baumgartner and U. Waldmann. Hierarchic Superposition With Weak Abstraction. In Proceedings of the 24th International Conference on Automated Deduction, number 7898 in Lecture Notes in Artificial Intelligence, pp. 39–57. Springer-Verlag, 2013.
M. P. Bonacina, C. Lynch, and L. M. de Moura. On deciding satisfiability by theorem proving with speculative inferences. J. Autom. Reasoning, 47(2), 161–189, 2011.
L. M. de Moura and N. Bjørner. Z3: an efficient SMT solver. In Proc. of TACAS, vol. 4963 of LNCS, pp. 337–340, 2008.
N. Dershowitz and D. A. Plaisted. Rewriting. In Handbook of Automated Reasoning, vol. I, chapter 9, pp. 535–610. Elsevier Science, 2001.
H. Ganzinger and K. Korovin. Theory instantiation. In Logic for Programming, Artificial Intelligence, and Reasoning, 13th International Conference, LPAR 2006, Phnom Penh, Cambodia, November 13–17, 2006, Proceedings, vol. 4246 of Lecture Notes in Computer Science, pp. 497–511. Springer, 2006.
B. Gleiss and M. Suda. Layered clause selection for theory reasoning. In Automated Reasoning, pp. 402–409. Springer International Publishing, 2020.
K. Hoder, G. Reger, M. Suda, and A. Voronkov. Selecting the selection. In Automated Reasoning: 8th International Joint Conference, IJCAR 2016, Coimbra, Portugal, June 27 - July 2, 2016, Proceedings, pp. 313–329. Springer International Publishing, 2016.
D. Knuth and P. Bendix. Simple word problems in universal algebra. In Computational Problems in Abstract Algebra, pp. 263–297. Pergamon Press, 1970.
K. Korovin and A. Voronkov. Integrating linear arithmetic into superposition calculus. In Computer Science Logic, 21st International Workshop, CSL 2007, 16th Annual Conference of the EACSL, Lausanne, Switzerland, September 11–15, 2007, Proceedings, vol. 4646 of Lecture Notes in Computer Science, pp. 223–237. Springer, 2007.
L. Kovács and A. Voronkov. First-order theorem proving and Vampire. In CAV 2013, vol. 8044 of Lecture Notes in Computer Science, pp. 1–35, 2013.
A. Nonnengart and C. Weidenbach. Computing small clause normal forms. In Handbook of Automated Reasoning (in 2 volumes), pp. 335–367. Elsevier and MIT Press, 2001.
G. Reger, N. Bjørner, M. Suda, and A. Voronkov. AVATAR modulo theories. In GCAI 2016. 2nd Global Conference on Artificial Intelligence, vol. 41 of EPiC Series in Computing, pp. 39–52. EasyChair, 2016.
G. Reger and M. Suda. Set of support for theory reasoning. In IWIL Workshop and LPAR Short Presentations, vol. 1 of Kalpa Publications in Computing, pp. 124–134. EasyChair, 2017.
G. Reger, M. Suda, and A. Voronkov. The challenges of evaluating a new feature in Vampire. In Proceedings of the 1st and 2nd Vampire Workshops, vol. 38 of EPiC Series in Computing, pp. 70–74. EasyChair, 2016.
G. Reger, M. Suda, and A. Voronkov. New techniques in clausal form generation. In GCAI 2016. 2nd Global Conference on Artificial Intelligence, vol. 41 of EPiC Series in Computing, pp. 11–23. EasyChair, 2016.
G. Reger, M. Suda, and A. Voronkov. Unification with abstraction and theory instantiation in saturation-based reasoning. In International Conference on Tools and Algorithms for the Construction and Analysis of Systems, pp. 3–22. Springer, 2018.
P. Rümmer. A Constraint Sequent Calculus for First-Order Logic with Linear Integer Arithmetic. In Proceedings of the 15th International Conference on Logic for Programming Artificial Intelligence and Reasoning, number 5330 in Lecture Notes in Artificial Intelligence, pp. 274–289. Springer-Verlag, 2008.
T. Weber, S. Conchon, D. Déharbe, M. Heizmann, A. Niemetz, and G. Reger. The smt competition 2015–2018. Journal on Satisfiability, Boolean Modeling and Computation, 11(1), 221–259, 2019.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Open Access This chapter is licensed under the terms of the Creative Commons Attribution 4.0 International License (http://creativecommons.org/licenses/by/4.0/), which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license and indicate if changes were made.
The images or other third party material in this chapter are included in the chapter's Creative Commons license, unless indicated otherwise in a credit line to the material. If material is not included in the chapter's Creative Commons license and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder.
Copyright information
© 2021 The Author(s)
About this paper
Cite this paper
Reger, G., Schoisswohl, J., Voronkov, A. (2021). Making Theory Reasoning Simpler. In: Groote, J.F., Larsen, K.G. (eds) Tools and Algorithms for the Construction and Analysis of Systems. TACAS 2021. Lecture Notes in Computer Science(), vol 12652. Springer, Cham. https://doi.org/10.1007/978-3-030-72013-1_9
Download citation
DOI: https://doi.org/10.1007/978-3-030-72013-1_9
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-72012-4
Online ISBN: 978-3-030-72013-1
eBook Packages: Computer ScienceComputer Science (R0)