Incremental Bounded Model Checking for Embedded Software (extended
version)
release_ibo5lzwpivexffncnop77ziidu
by
Peter Schrammel, Daniel Kroening, Martin Brain, Ruben Martins, Tino
Teige, Tom Bienmüller
2014
Abstract
Program analysis is on the brink of mainstream in embedded systems
development. Formal verification of behavioural requirements, finding runtime
errors and automated test case generation are some of the most common
applications of automated verification tools based on Bounded Model Checking.
Existing industrial tools for embedded software use an off-the-shelf Bounded
Model Checker and apply it iteratively to verify the program with an increasing
number of unwindings. This approach unnecessarily wastes time repeating work
that has already been done and fails to exploit the power of incremental SAT
solving. This paper reports on the extension of the software model checker CBMC
to support incremental Bounded Model Checking and its successful integration
with the industrial embedded software verification tool BTC EmbeddedTester. We
present an extensive evaluation over large industrial embedded programs, which
shows that incremental Bounded Model Checking cuts runtimes by one order of
magnitude in comparison to the standard non-incremental approach, enabling the
application of formal verification to large and complex embedded software.
In text/plain
format
Archived Files and Locations
application/pdf 301.7 kB
file_rdpvo4txrzbyrp5hynm72a5rlu
|
arxiv.org (repository) web.archive.org (webarchive) |
1409.5872v1
access all versions, variants, and formats of this works (eg, pre-prints)