Concurrency Verification

An advanced 2001 textbook on verification of concurrent programs using a semantic approach which highlights concepts clearly.

Author: W.-P. de Roever

Publisher: Cambridge University Press

ISBN: 0521806089

Category: Computers

Page: 776

View: 291


An advanced 2001 textbook on verification of concurrent programs using a semantic approach which highlights concepts clearly.

Verification of Sequential and Concurrent Programs

[1976b] Verifying properties of parallel programs: an axiomatic approach, Comm. ... M. Poel, and J. Zwiers [2001] Concurrency Verification – Introduction to Compositional and Noncom- positional Methods, Cambridge University Press.

Author: Krzysztof Apt

Publisher: Springer Science & Business Media

ISBN: 9781848827448

Category: Computers

Page: 502

View: 160


HIS BOOK CONTAINS a most comprehensive text that presents syntax-directed and compositional methods for the formal veri?- T cation of programs. The approach is not language-bounded in the sense that it covers a large variety of programming models and features that appear in most modern programming languages. It covers the classes of - quential and parallel, deterministic and non-deterministic, distributed and object-oriented programs. For each of the classes it presents the various c- teria of correctness that are relevant for these classes, such as interference freedom, deadlock freedom, and appropriate notions of liveness for parallel programs. Also, special proof rules appropriate for each class of programs are presented. In spite of this diversity due to the rich program classes cons- ered, there exist a uniform underlying theory of veri?cation which is synt- oriented and promotes compositional approaches to veri?cation, leading to scalability of the methods. The text strikes the proper balance between mathematical rigor and - dactic introduction of increasingly complex rules in an incremental manner, adequately supported by state-of-the-art examples. As a result it can serve as a textbook for a variety of courses on di?erent levels and varying durations. It can also serve as a reference book for researchers in the theory of veri?- tion, in particular since it contains much material that never before appeared in book form. This is specially true for the treatment of object-oriented p- grams which is entirely novel and is strikingly elegant.

Modeling Verification and Exploration of Task Level Concurrency in Real Time Embedded Systems

... and during subsequent synthesis steps to verify constraints satisfiability of an intermediate synthesis results. The memory usage is an important cost metric during the clustering and scheduling of the task concurrency management ...

Author: Filip Thoen

Publisher: Springer Science & Business Media

ISBN: 9781461544371

Category: Computers

Page: 438

View: 335


system is a complex object containing a significant percentage of elec A tronics that interacts with the Real World (physical environments, humans, etc. ) through sensing and actuating devices. A system is heterogeneous, i. e. , is characterized by the co-existence of a large number of components of disparate type and function (for example, programmable components such as micro processors and Digital Signal Processors (DSPs), analog components such as AID and D/A converters, sensors, transmitters and receivers). Any approach to system design today must include software concerns to be viable. In fact, it is now common knowledge that more than 70% of the development cost for complex systems such as automotive electronics and communication systems are due to software development. In addition, this percentage is increasing constantly. It has been my take for years that the so-called hardware-software co-design problem is formulated at a too low level to yield significant results in shorten ing design time to the point needed for next generation electronic devices and systems. The level of abstraction has to be raised to the Architecture-Function co-design problem, where Function refers to the operations that the system is supposed to carry out and Architecture is the set of supporting components for that functionality. The supporting components as we said above are heteroge neous and contain almost always programmable components.

Parameterized Verification of Synchronized Concurrent Programs

Model checking [32, 37, 111] is a technique for formal verification that aims at automatically establishing the ... It was initially introduced for verifying finite-state concurrent systems, and extending it to infinite-state systems is ...

Author: Zeinab Ganjei

Publisher: Linköping University Electronic Press

ISBN: 9789179296971


Page: 192

View: 322


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.

Specification and Verification of Concurrent Systems

This volume contains papers presented at the BCS-FACS Workshop on Specification and Verification of Concurrent Systems held on 6-8 July 1988, at the University of Stirling, Scotland.

Author: Charles Rattray

Publisher: Springer Science & Business Media

ISBN: 9781447135340

Category: Computers

Page: 612

View: 873


This volume contains papers presented at the BCS-FACS Workshop on Specification and Verification of Concurrent Systems held on 6-8 July 1988, at the University of Stirling, Scotland. Specification and verification techniques are playing an increasingly important role in the design and production of practical concurrent systems. The wider application of these techniques serves to identify difficult problems that require new approaches to their solution and further developments in specification and verification. The Workshop aimed to capture this interplay by providing a forum for the exchange of the experience of academic and industrial experts in the field. Presentations included: surveys, original research, practical experi ence with methods, tools and environments in the following or related areas: Object-oriented, process, data and logic based models and specifi cation methods for concurrent systems Verification of concurrent systems Tools and environments for the analysis of concurrent systems Applications of specification languages to practical concurrent system design and development. We should like to thank the invited speakers and all the authors of the papers whose work contributed to making the Workshop such a success. We were particularly pleased with the international response to our call for papers. Invited Speakers Pierre America Philips Research Laboratories University of Warwick Professor M. Joseph David Freestone British Telecom Organising Committee Charles Rattray Dr Muffy Thomas Dr Simon Jones Dr John Cooke Professor Ken Turner Derek Coleman Maurice Naftalin Dr Peter Scharbach vi Preface We would like to aeknowledge the finaneial eontribution made by SD-Sysems Designers pie, Camberley, Surrey.

CONCUR 98 Concurrency Theory

Parallel discrete event simulation . Communications of the ACM , 33 ( 10 ) : 30–53 , Oct. 1990 . ( God96 ] P. Godefroid . Partial - Order Methods for the Verification of Concurrent Systems : An Approach to the State - Explosion Problem ...

Author: Davide Sangiorgi

Publisher: Springer Science & Business Media

ISBN: 3540648968

Category: Computers

Page: 663

View: 730


This book constitutes the refereed proceedings of the 9th International Conference on Concurrency Theory, CONCUR'98, held in Nice, France, in September 1998. The 35 revised full papers presented were carefully selected from a total of 104 submissions. Also presented are five invited contributions. Among the topics covered are moduls of computation and semantic domains, process algebras, Petri Nets, event structures, real-time systems, hybrid systems, model checking, verification techniques, refinement, rewriting, typing systems and algorithms, etc..

CONCUR 2007 Concurrency Theory

Springer, Heidelberg (2003) 5. de Roever, W.P., de Boer, F., Hanneman, U., Hooman, J., Lakhnech, Y., Poel, M., Zwiers, J.: Concurrency Verification: Introduction to Compositional and Noncom- positional Methods.

Author: Luís Caires

Publisher: Springer Science & Business Media

ISBN: 9783540744061

Category: Computers

Page: 506

View: 751


This book constitutes the refereed proceedings of the 17th International Conference on Concurrency Theory, CONCUR 2007, held in Lisbon, Portugal, September 3-8, 2007. The 30 revised full papers presented together with 3 invited papers were carefully reviewed and selected from 112 submissions. The topics include model checking, process calculi, minimization and equivalence checking, types, semantics, probability, bisimulation and simulation, real time, and formal languages.

Automated Verification of Concurrent Search Structures

We prove linearizability of the LSM DAG template by verifying that all operations satisfy the template-level atomic triples ... the strategy of decomposing the proof intothe concurrency-related aspects and the heap-related aspects.

Author: Siddharth Krishna

Publisher: Morgan & Claypool Publishers

ISBN: 9781636391298

Category: Computers

Page: 188

View: 723


Search structures support the fundamental data storage primitives on key-value pairs: insert a pair, delete by key, search by key, and update the value associated with a key. Concurrent search structures are parallel algorithms to speed access to search structures on multicore and distributed servers. These sophisticated algorithms perform fine-grained synchronization between threads, making them notoriously difficult to design correctly. Indeed, bugs have been found both in actual implementations and in the designs proposed by experts in peer-reviewed publications. The rapid development and deployment of these concurrent algorithms has resulted in a rift between the algorithms that can be verified by the state-of-the-art techniques and those being developed and used today. The goal of this book is to show how to bridge this gap in order to bring the certified safety of formal verification to high-performance concurrent search structures. Similar techniques and frameworks can be applied to concurrent graph and network algorithms beyond search structures.