Vampire 5.0

Michael Rawson
University of Southampton, UK

Vampire 5.0 remains similar in spirit to all previous versions, but a bumper crop of changes have been merged this competition cycle. Various non-competition improvements to Vampire including a program synthesis mode [HAHK+24] and partial support for the polymorphic SMT-LIB 2.7 standard landed, but for the competition we mention:

Vampire's higher-order support remains very similar to last year, although a re-implementation intended for mainline Vampire is being merged in stages.

Architecture

Vampire [Vampire25] is an automatic theorem prover for first-order logic with extensions to theory reasoning and higher-order logic. Vampire implements several extensions of a core superposition calculus. It also implements a MACE-style finite model builder for finding finite counter-examples [RSV16]. Splitting in saturation-based proof search is controlled by the AVATAR architecture which uses a SAT or SMT solver to make splitting decisions [Vor14, RB+16]. A number of standard redundancy criteria and simplification techniques are used for pruning the search space: subsumption, tautology deletion, subsumption resolution and rewriting by ordered unit equalities. Substitution tree and code tree indices are used to implement all major operations on sets of terms, literals and clauses. Internally, Vampire works only with clausal normal form: problems not already in CNF are clausified during preprocessing [RSV16]. Vampire implements many preprocessing transformations, including the SInE axiom selection algorithm for large theories and blocked clause elimination.

Strategies

Vampire 5.0 provides a very large number of options for strategy selection. The most important ones are:

Implementation

Vampire 5.0 is implemented in C++. It makes use of fixed versions of Minisat, CaDiCaL, GMP, VIRAS, and Z3. See the GitHub repository and associated wiki for more information.

Expected Competition Performance

Vampire 5.0 should be an improvement on the previous version. A reasonably strong performance across all divisions is therefore expected. In the higher-order divisions, performance should be the same as last year.

References

Vampire25
Filip Bártek, Ahmed Bhayat, Robin Coutelier, Márton Hajdu, Matthias Hetzenberger, Petra Hozzová, Laura Kovács, Jakob Rath, Michael Rawson, Giles Reger, Martin Suda, Johannes Schoisswohl and Andrei Voronkov (2025), The Vampire Diary, CAV, to appear.
HAHK+24
Petra Hozzová, Daneshvar Amrollahi, Márton Hajdu, Laura Kovács, Andrei Voronkov, and Eva Maria Wagner (2024), Synthesis of Recursive Programs in Saturation, IJCAR, pp. 154-171, Springer.
KKRS23
Konstatin Korovin, Laura Kovács, Giles Reger, and Johannes Schoisswohl (2023), ALASCA: Reasoning in Quantified Linear Arithmetic, TACAS, pp. 647-665, Springer.
SKK24
Johannes Schoisswohl, Laura Kovács, and Konstantin Korovin (2024), VIRAS: Conflict-Driven Quantifier Elimination for Integer-Real Arithmetic, LPAR, pp. 147-164, EasyChair.
HKV25
Márton Hajdu, Laura Kovács and Andrei Voronkov (2025), Partial Redundancy in Saturation, CADE, to appear.
HCKV25
Márton Hajdu, Robin Coutelier, Laura Kovács and Andrei Voronkov (2025), Term Ordering Diagrams, CADE, to appear.
BFF+24
Armin Biere, Tobias Faller, Katalin Fazekas, Mathias Fleury, Nils Froleyks, and Florian Pollitt (2024), CaDiCaL 2.0, CAV, pp. 133-152, Springer.