arrow
Return

A program instrumentation framework for automatic verification

delete2026-03-20
delete0
PRE
AI
J
Jesper Amilon *
E
Esen, Zafer
D
Dilian Gurov
P
Philipp Rümmer
M
Marten Voorberg
DOI:10.1007/s10703-026-00493-wdelete
deleteOriginal
deleteOriginal request for help
deleteShare
deleteSave
Abstract

Abstract

En 中文
In deductive verification and software model checking, dealing with certain specification language constructs can be problematic when the back-end solver is not sufficiently powerful or lacks the required theories. One way to deal with this is to transform, for verification purposes, the program to an equivalent one not using the problematic constructs, and to reason about this equivalent program instead. In this article, we propose program instrumentation as a unifying verification paradigm that subsumes various existing ad-hoc approaches, has a clear formal correctness criterion, can be applied automatically, and can transfer back witnesses and counterexamples. We illustrate our approach on the automated verification of programs that involve quantification and aggregation operations over arrays, such as the maximum value or sum of the elements in a given segment of the array, which are known to be difficult to reason about automatically. We implement our approach in the MonoCera tool, which is tailored to the verification of programs with aggregation, and evaluate it on example programs, including SV-COMP programs.
Keywords:
Program instrumentation
Automatic verification
Ghost code

Journal

F
Formal Methods in System Design
IF:
0.8
Papers:
11
Citations:
0

Organization

R
royal institute of technology
Scholars:
1.1K
Papers: 549
Citations: 0
F
Fondazione Bruno Kessler
Scholars:
1.8K
Papers: 1.6K
Citations: 3.2K
U
uppsala university
Scholars:
3.7W
Papers: 3.4W
Citations: 47
researcher View more organizations