Improving Performance of the VerCors Program Verifier

Henk Mulder, Marieke Huisman, Sebastiaan J. C. Joosten

Research output: Chapter in Book/Report/Conference proceedingChapterAcademicpeer-review

Abstract

As program verification tools are becoming more powerful, and are used on larger programs, their performance also becomes more and more important. In this paper we investigate performance bottlenecks in the VerCors program verifier. Moreover, we also discuss two solutions to the identified performance bottlenecks: an improved encoding of arrays, as well as a technique to automatically generate trigger expressions to guide the underlying prover when reasoning about quantifiers. For both solutions we measure the effect on the performance. We see that the new encoding vastly reduces the verification time of certain programs, while other programs keep showing comparable times. This effect remains when moving to newer backends for VerCors.
Original languageEnglish
Title of host publicationDeductive Software Verification: Future Perspectives - Reflections on the Occasion of 20 Years of KeY
EditorsWolfgang Ahrendt, Bernhard Beckert, Richard Bubel, Reiner Hähnle, Mattias Ulbrich
PublisherSpringer Singapore
Pages65-82
Number of pages18
DOIs
Publication statusPublished - 2020

Publication series

NameLecture Notes in Computer Science
PublisherSpringer
Volume12345

Cite this