arXiv · 2501.16310
A Modular Program-Transformation Framework for Reducing Specifications to Reachability
Abstract
Software verification is a complex problem, and verification tools need significant tuning to achieve high performance. Due to this, many verifiers choose to specialize on reachability properties, or invest the time to implement known transformations from the given specification to reachability on their internal representations. To improve this situation, we provide transformations as stand-alone components, modifying the input program instead of the internal representation, enabling their usage as a preprocessing step by other verifiers. This way, we separate two concerns: improving the performance of reachability analyses and implementing efficient transformations of arbitrary specifications to reachability. We implement the transformations in a framework that is based on instrumentation automata, inspired by the BLAST query language. In our initial study, we support three important concrete specifications for C programs: termination, no-overflow, and memory cleanup. Moreover, we discuss the broader expressiveness of our framework and show how general liveness properties can be transformed to reachability. We demonstrate the effectiveness and efficiency of our transformations by comparing verifiers that support the specifications natively with verifiers for reachability applied on the transformed programs. The results are very promising: Our transformations can extend existing verifiers to be effective on specifications that they do not support natively, and that the efficiency is often similar to verifiers that natively support the considered specifications.
Explore related subjects
Keep this discovery
Explore connections, maps & timelines
Dirk Beyer, Marek Jankola, Marian Lingsch-Rosenfeld, Tian Xia, Xiyue Zheng. 2025-01-27. A Modular Program-Transformation Framework for Reducing Specifications to Reachability. https://arxiv.org/abs/2501.16310
Cite the original work for its findings. Save a collection to share your selection of sources.