TY - GEN
T1 - The VerCors Verifier
T2 - A Progress Report
AU - Armborst, Lukas
AU - Bos, Pieter
AU - van den Haak, Lars B.
AU - Huisman, Marieke
AU - Rubbens, Robert
AU - Şakar, Ömer
AU - Tasche, Philip
N1 - Publisher Copyright:
© The Author(s) 2024.
PY - 2024
Y1 - 2024
N2 - This paper gives an overview of the most recent developments on the VerCors verifier. VerCors is a deductive verifier for concurrent software, written in multiple programming languages, where the specifications are written in terms of pre-/postcondition contracts using permission-based separation logic. In essence, VerCors is a program transformation tool: it translates an annotated program into input for the Viper framework, which is then used as verification back-end. The paper discusses the different programming languages and features for which VerCors provides verification support. It also discusses how the tool internally has been reorganised to become easily extendible, and to improve the connection and interaction with Viper. In addition, we also introduce two tools built on top of VerCors, which support correctness-preserving transformations of verified programs. Finally, we discuss how the VerCors verifier has been used on a range of realistic case studies.
AB - This paper gives an overview of the most recent developments on the VerCors verifier. VerCors is a deductive verifier for concurrent software, written in multiple programming languages, where the specifications are written in terms of pre-/postcondition contracts using permission-based separation logic. In essence, VerCors is a program transformation tool: it translates an annotated program into input for the Viper framework, which is then used as verification back-end. The paper discusses the different programming languages and features for which VerCors provides verification support. It also discusses how the tool internally has been reorganised to become easily extendible, and to improve the connection and interaction with Viper. In addition, we also introduce two tools built on top of VerCors, which support correctness-preserving transformations of verified programs. Finally, we discuss how the VerCors verifier has been used on a range of realistic case studies.
UR - http://www.scopus.com/inward/record.url?scp=85200655070&partnerID=8YFLogxK
U2 - 10.1007/978-3-031-65630-9_1
DO - 10.1007/978-3-031-65630-9_1
M3 - Conference contribution
SN - 978-3-031-65629-3
VL - 2
T3 - Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
SP - 3
EP - 18
BT - Computer Aided Verification - 36th International Conference, CAV 2024, Proceedings
A2 - Gurfinkel, Arie
A2 - Ganesh, Vijay
PB - Springer
ER -