cvc5: A Versatile and Industrial-Strength SMT Solver
Haniel Barbosa, Clark Barrett, Martin Brain, Gereon Kremer, Hanna Lachnitt, Makai Mann, Abdalrhman Mohamed, Mudathir Mohamed, Aina Niemetz, Andres Nötzli, Alex Ozdemir, Mathias Preiner, Andrew Reynolds, Ying Sheng, Cesare Tinelli, Yoni Zohar
Abstract
Abstract cvc5 is the latest SMT solver in the cooperating validity checker series and builds on the successful code base of CVC4. This paper serves as a comprehensive system description of cvc5 ’s architectural design and highlights the major features and components introduced since CVC4 1.8. We evaluate cvc5 ’s performance on all benchmarks in SMT-LIB and provide a comparison against CVC4 and Z3.
Topics & Concepts
Computer scienceSolverProgramming languageProblem solverSatisfiability modulo theoriesBase (topology)Code (set theory)Software engineeringComputer architectureSet (abstract data type)MathematicsMathematical analysisFormal Methods in VerificationLogic, programming, and type systemsSoftware Testing and Debugging Techniques