A Unifying Approach for Control-Flow-Based Loop Abstraction
Loop abstraction is a central technique for program analysis, because loops can cause large state spaces if they are unfolded. In many cases, simple tricks can accelerate the program analysis significantly. There are several successful techniques for loop abstraction, but they are hard-wired into different tools and therefore difficult to compare and experiment with. We present a framework that allows us to implement loop abstractions in one common environment, where each technique can be freely switched on and off on-the-fly during the analysis. We treat loops as part of the abstract model of the program, and use counterexample-guided abstraction refinement to increase the precision of the analysis by dynamically selecting particular techniques for loop abstraction. The framework is independent from the underlying abstract domain of the program analysis, and can therefore be used for several different program analyses. Furthermore, our framework can transform the input program to a modified C program that is unsafe if the input program is unsafe. This allows loop abstraction to be used by other verifiers and our improvements are not `locked in’ to our verifier. We implemented several existing approaches and evaluate their effects on the program analysis.
Slides (main.pdf) | 1.13MiB |
Mon 11 SepDisplayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change
10:30 - 12:00 | |||
10:30 20mTalk | Can ChatGPT Support CPAchecker with Useful Loop Invariants? [Workshop] CPAchecker Cedric Richter Carl von Ossietzky Universität Oldenburg / University of Oldenburg | ||
10:50 20mTalk | CPA-DF: A Tool for Configurable Interval Analysis to Boost Program Verification [Workshop] CPAchecker Po-Chun Chien LMU Munich Pre-print Media Attached File Attached | ||
11:10 20mTalk | A Unifying Approach for Control-Flow-Based Loop Abstraction [Workshop] CPAchecker Marian Lingsch-Rosenfeld LMU Munich Link to publication File Attached | ||
11:30 20mTalk | Backward Bounded Model Checking in CPAchecker [Workshop] CPAchecker Bas Laarakker University of Amsterdam |