Backward bounded model checking (BBMC) aims to solve the error location reachability problem by searching for execution paths from an error location to the initial location and determining their feasibility. Backward analyses can complement forward analyses, as backward analyses may be able to determine the reachability of error locations on programs where forward analyses may fail. An implementation of BBMC requires general support for backward analyses in CPAchecker, which is currently limited. We investigate the existing support for backward analyses in CPAchecker, and build on this to be able to implement the BBMC algorithm in CPAchecker. Moreover, we develop support for pointer aliasing in backward Predicate CPA, allowing backward analyses to be used on a larger set of programs and language features. An existing paper states that BBMC may be equivalent to k-induction. To test the comparative performance of the algorithms in practice, we evaluate the algorithms on a benchmark to see when they are indeed equivalent and in what cases they differ. Finally, we consider further work to be done and future improvements both for the BBMC algorithm and the support for backward analyses.
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 |