Modular Verification of Concurrent Programs via Sequential Model Checking
Dan Rasin, Orna Grumberg, Sharon Shoham

TL;DR
This paper presents a modular approach to verify concurrent programs by reducing their verification to sequential program checks, exploiting hierarchical thread structures to improve efficiency and enabling the use of existing sequential model checkers.
Contribution
It introduces a hierarchical, modular verification method for concurrent programs that reduces the problem to sequential verification tasks, enhancing automation and efficiency.
Findings
Effective on hierarchically structured programs
Utilizes existing sequential model checkers
Demonstrates improved performance over established tools
Abstract
This work utilizes the plethora of work on verification of sequential programs for the purpose of verifying concurrent programs. We reduce the verification of a concurrent program to a series of verification tasks of sequential programs. Our approach is modular in the sense that each sequential verification task roughly corresponds to the verification of a single thread, with some additional information about the environment in which it operates. Information regarding the environment is gathered during the run of the algorithm, by need. While our approach is general, it specializes on concurrent programs where the threads are structured hierarchically. The idea is to exploit the hierarchy in order to minimize the amount of information that needs to be transferred between threads. To that end, we verify one of the threads, considered "main", as a sequential program. Its verification…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
