Parameterized Verification of Synchronized Concurrent Programs

Parameterized Verification of Synchronized Concurrent Programs
Author :
Publisher : Linköping University Electronic Press
Total Pages : 192
Release :
ISBN-10 : 9789179296971
ISBN-13 : 9179296971
Rating : 4/5 (971 Downloads)

Book Synopsis Parameterized Verification of Synchronized Concurrent Programs by : Zeinab Ganjei

Download or read book Parameterized Verification of Synchronized Concurrent Programs written by Zeinab Ganjei and published by Linköping University Electronic Press. This book was released on 2021-03-19 with total page 192 pages. Available in PDF, EPUB and Kindle. Book excerpt: There is currently an increasing demand for concurrent programs. Checking the correctness of concurrent programs is a complex task due to the interleavings of processes. Sometimes, violation of the correctness properties in such systems causes human or resource losses; therefore, it is crucial to check the correctness of such systems. Two main approaches to software analysis are testing and formal verification. Testing can help discover many bugs at a low cost. However, it cannot prove the correctness of a program. Formal verification, on the other hand, is the approach for proving program correctness. Model checking is a formal verification technique that is suitable for concurrent programs. It aims to automatically establish the correctness (expressed in terms of temporal properties) of a program through an exhaustive search of the behavior of the system. Model checking was initially introduced for the purpose of verifying finite‐state concurrent programs, and extending it to infinite‐state systems is an active research area. In this thesis, we focus on the formal verification of parameterized systems. That is, systems in which the number of executing processes is not bounded a priori. We provide fully-automatic and parameterized model checking techniques for establishing the correctness of safety properties for certain classes of concurrent programs. We provide an open‐source prototype for every technique and present our experimental results on several benchmarks. First, we address the problem of automatically checking safety properties for bounded as well as parameterized phaser programs. Phaser programs are concurrent programs that make use of the complex synchronization construct of Habanero Java phasers. For the bounded case, we establish the decidability of checking the violation of program assertions and the undecidability of checking deadlock‐freedom. For the parameterized case, we study different formulations of the verification problem and propose an exact procedure that is guaranteed to terminate for some reachability problems even in the presence of unbounded phases and arbitrarily many spawned processes. Second, we propose an approach for automatic verification of parameterized concurrent programs in which shared variables are manipulated by atomic transitions to count and synchronize the spawned processes. For this purpose, we introduce counting predicates that related counters that refer to the number of processes satisfying some given properties to the variables that are directly manipulated by the concurrent processes. We then combine existing works on the counter, predicate, and constrained monotonic abstraction and build a nested counterexample‐based refinement scheme to establish correctness. Third, we introduce Lazy Constrained Monotonic Abstraction for more efficient exploration of well‐structured abstractions of infinite‐state non‐monotonic systems. We propose several heuristics and assess the efficiency of the proposed technique by extensive experiments using our open‐source prototype. Lastly, we propose a sound but (in general) incomplete procedure for automatic verification of safety properties for a class of fault‐tolerant distributed protocols described in the Heard‐Of (HO for short) model. The HO model is a popular model for describing distributed protocols. We propose a verification procedure that is guaranteed to terminate even for unbounded number of the processes that execute the distributed protocol.


Parameterized Verification of Synchronized Concurrent Programs Related Books

Parameterized Verification of Synchronized Concurrent Programs
Language: en
Pages: 192
Authors: Zeinab Ganjei
Categories:
Type: BOOK - Published: 2021-03-19 - Publisher: Linköping University Electronic Press

GET EBOOK

There is currently an increasing demand for concurrent programs. Checking the correctness of concurrent programs is a complex task due to the interleavings of p
Computer Aided Verification
Language: en
Pages: 645
Authors: Ed Brinksma
Categories: Computers
Type: BOOK - Published: 2003-08-02 - Publisher: Springer

GET EBOOK

This volume contains the proceedings of the conference on Computer Aided V- i?cation (CAV 2002), held in Copenhagen, Denmark on July 27-31, 2002. CAV 2002 was t
Computer Aided Verification
Language: en
Pages: 682
Authors: Shuvendu K. Lahiri
Categories: Computers
Type: BOOK - Published: 2020-07-15 - Publisher: Springer Nature

GET EBOOK

The open access two-volume set LNCS 12224 and 12225 constitutes the refereed proceedings of the 32st International Conference on Computer Aided Verification, CA
Handbook of Model Checking
Language: en
Pages: 1210
Authors: Edmund M. Clarke
Categories: Computers
Type: BOOK - Published: 2018-05-18 - Publisher: Springer

GET EBOOK

Model checking is a computer-assisted method for the analysis of dynamical systems that can be modeled by state-transition systems. Drawing from research tradit
Model Checking Software
Language: en
Pages: 271
Authors: Alastair Donaldson
Categories: Computers
Type: BOOK - Published: 2012-07-18 - Publisher: Springer

GET EBOOK

This book constitutes the thoroughly refereed proceedings of the 19th International SPIN workshop on Model Checking Software, SPIN 2012, held in Oxford, UK, in