Model Checking Concurrent Programs
Aarti Gupta
- 16 Dec 2008
- pp 2-2
TL;DR: This talk will describe the recent advances in concurrent dataflow analysis, symbolic model checking with partial order reduction, and dynamic techniques for verifying concurrent programs, implemented in a unified verification platform currently targeted at multi-threaded C programs.
read more
Abstract: With the growth of multi-core processing and concurrent programming in modern computing systems, there is a great need to develop effective verification techniques for concurrent programs. Static analysis techniques have been shown effective for finding data races, but suffer from a general problem of too many false alarms. Dynamic techniques like testing have also shown promise, but provide limited coverage over the state space including all possible thread interleavings. Model checking alone cannot scale. However, it works better in combination with these techniques, with the potential of finding real error traces on one hand and better coverage on the other. In this talk, I will describe our recent advances in concurrent dataflow analysis, symbolic model checking with partial order reduction, and dynamic techniques for verifying concurrent programs. These techniques have been implemented in a unified verification platform, currently targeted at multi-threaded C programs. I will also report on our experiences on some challenging examples from the public domain and the industry.
read more
Chat with Paper
AI Agents for this Paper
Find similar papers on Google Scholar, PubMed and Arxiv
Write a critical review of this paper
Analyze citations of this paper to find unaddressed research gaps
Citations
Model checking concurrent programs with nondeterminism and randomization
Rohit Chadha,A. Prasad Sistla,Mahesh Viswanathan +2 more
- 01 Dec 2010
TL;DR: This paper introduces two classes of schedulers called view consistent and locally Markovian Schedulers and considers the model checking problem of concurrent, probabilistic programs under these alternate semantics.
SAT-Based Model Checking
Armin Biere,Daniel Kröning +1 more
- 01 Jan 2018
TL;DR: This chapter covers the application of bounded model checking to both hardware and software systems, and to hardware/software co-verification, and means to make BMC complete, including \(k\)-induction, Craig interpolation, abstraction refinement techniques, and inductive techniques with iterative strengthening.
References
Time, clocks, and the ordering of events in a distributed system
TL;DR: In this article, the concept of one event happening before another in a distributed system is examined, and a distributed algorithm is given for synchronizing a system of logical clocks which can be used to totally order the events.
Time, clocks, and the ordering of events in a distributed system
TL;DR: In this paper, the concept of one event happening before another in a distributed system is examined, and a distributed algorithm is given for synchronizing a system of logical clocks which can be used to totally order the events.
Design and Synthesis of Synchronization Skeletons Using Branching-Time Temporal Logic
Edmund M. Clarke,E. Allen Emerson +1 more
- 01 May 1981
TL;DR: It is shown that it is possible to automatically synthesize the synchronization skeleton of a concurrent program from a Temporal Logic specification and it is believed that this approach may in the long run turn out to be quite practical.
2.6K
Model checking programs
Willem Visser,Klaus Havelund,Guillaume Brat,Seungjoon Park +3 more
- 11 Sep 2000
TL;DR: A verification and testing environment for Java, called Java PathFinder (JPF), which integrates model checking, program analysis and testing, and uses state compression to handle big states and partial order and symmetry reduction, slicing, abstraction, and runtime analysis techniques to reduce the state space.
Partial-Order Methods for the Verification of Concurrent Systems
Patrice Godefroid
- 01 Jan 1996
TL;DR: In this paper, partial orders are used to tackle state explosion in concurrent systems and semantics, including persistent sets, sleep sets and sleep sets, and verification of safety properties of model checking.
623
Related Papers (5)
Aarti Gupta
- 30 Oct 2011
Jürgen Ruf,Prakash Mohan Peranandam +1 more
- 01 Jan 2003
Corina S. Păsăreanu,Matthew B. Dwyer,Willem Visser +2 more
- 01 Jan 2003