Dynamic Cutoff Detection in Parameterized Concurrent Programs

  • Alexander Kaiser
  • Daniel Kroening
  • Thomas Wahl
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6174)

Abstract

We consider the class of finite-state programs executed by an unbounded number of replicated threads communicating via shared variables. The thread-state reachability problem for this class is essential in software verification using predicate abstraction. While this problem is decidable via Petri net coverability analysis, techniques solely based on coverability suffer from the problem’s exponential-space complexity. In this paper, we present an alternative method based on a thread-state cutoff: a number n of threads that suffice to generate all reachable thread states. We give a condition, verifiable dynamically during reachability analysis for increasing n, that is sufficient to conclude that n is a cutoff. We then make the method complete, via a coverability query that is of low cost in practice. We demonstrate the efficiency of the approach on Petri net encodings of communication protocols, as well as on non-recursive Boolean programs run by arbitrarily many parallel threads.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

Copyright information

© Springer-Verlag Berlin Heidelberg 2010

Authors and Affiliations

  • Alexander Kaiser
    • 1
  • Daniel Kroening
    • 1
  • Thomas Wahl
    • 1
  1. 1.Computing LaboratoryOxford UniversityUnited Kingdom

Personalised recommendations