Structures in Concurrency Theory


Book Description

This book is the proceedings of the Structures in Concurrency Theory workshop (STRICT) that was held from 11 th to l3th May 1995 in Berlin, Germany. It includes three invited contributions - by J. de Bakker, E. Best et aI, and E. R. Olderog and M. Schenke - and all papers which were submitted and accepted for presentation. Concurrency Theory deals with formal aspects of concurrent systems. It uses partly competing and partly complementary formalisms and structures. The aim of this workshop was to present and compare different formalisms and results in Concurrency Theory. STRICT was organized by the Humboldt-University Berlin and the ESPRIT Basic Research Working Group CALIBAN. Original papers had been sought from all scientists in the field of Concurrency Theory. The Programme Committee selected twenty contributions with various different topics, including Petri Nets, Process Algebras, Distributed Algorithms, Formal Semantics, and others. I am grateful to the Programme Committee and to the other referees for the careful evaluation of the submitted papers.




Introduction to Concurrency Theory


Book Description

This book presents the fundamentals of concurrency theory with clarity and rigor. The authors start with the semantic structure, namely labelled transition systems, which provides us with the means and the tools to express processes, to compose them, and to prove properties they enjoy. The rest of the book relies on Milner's Calculus of Communicating Systems, tailored versions of which are used to study various notions of equality between systems, and to investigate in detail the expressive power of the models considered. The authors proceed from very basic results to increasingly complex issues, with many examples and exercises that help to reveal the many subtleties of the topic. The book is suitable for advanced undergraduate and graduate students in computer science and engineering, and scientists engaged with theories of concurrency.




Concurrency Theory


Book Description

Intheworldweliveinconcurrencyisthenorm.Forexample,thehumanbody isamassivelyconcurrentsystem,comprisingahugenumberofcells,allsim- taneously evolving and independently engaging in their individual biological processing.Inaddition,inthebiologicalworld,trulysequentialsystemsrarely arise. However, they are more common when manmade artefacts are cons- ered. In particular, computer systems are often developed from a sequential perspective. Why is this? The simple reason is that it is easier for us to think about sequential, rather than concurrent, systems. Thus, we use sequentiality as a device to simplify the design process. However, the need for increasingly powerful, ?exible and usable computer systems mitigates against simplifying sequentiality assumptions. A good - ample of this is the all-powerful position held by the Internet, which is highly concurrent at many di?erent levels of decomposition. Thus, the modern c- puter scientist (and indeed the modern scientist in general) is forced to think aboutconcurrentsystemsandthesubtleandintricatebehaviourthatemerges from the interaction of simultaneously evolving components. Over a period of 25 years, or so, the ?eld of concurrency theory has been involved in the development of a set of mathematical techniques that can help system developers to think about and build concurrent systems. These theories are the subject matter of this book.




The Theory and Practice of Concurrency


Book Description

Since Professor Hoare's book Communicating Sequential Processes was first published, his notation has been extensively used for teaching and applying concurrency theory. The most significant development since then has been the emergence of tools to support the teaching and industrial application of CSP. This has turned CSP from a notation used mainly for toy examples into one which can and does support the description of industrial-sized problems. In order to understand the tools you need a good grasp of the fundamental concepts of CSP, therefore the book is, in the first instance, a text on the principles of the language rather than being a manual on how to apply its tools. The Theory and Practice of Concurrency is divided into 3 sections. Part I is a foundation course on CSP, covering essentially the same material as the Hoare book, except that most of the mathematical theory has been omitted. It introduces the ideas behind the operational, denotational and algebraic models of CSP. Parts II and III go into more detail about the theory and practice of CSP. Either of them would make a one semester course or though they are independent of each other. This book assumes no mathematical knowledge except for a basic understanding of sets, sequences and functions. Part I and III use no sophisticated mathematics, and the extra amount needed for Part II is contained within Appendix A (which introduces the theory of partial order and metric/restriction spaces). The book brings substantial new insights into the important subjects of computer security, fault tolerance, real-time modelling, communications protocols and distributed databases. Each of these is supported by a case study and guidance on how to apply automated analysis to verify systems.




Models for Concurrency


Book Description

Concurrent systems are generally understood in terms of behavioral notions. Models for Concurrency analyzes the subject in terms of events and their temporal relationship rather than on global states. It presents a comprehensive analysis of model theory applied to concurrent protocols, and seeks to provide a theory of concurrency that is both intuitively appealing and rigorously based on mathematical foundations. The book is divided into three main sections. The first introduces the required concepts from model theory, details the structures that are used to model concurrency, gives an in-depth description and explanation of the semantics of a simple language that allows concurrent execution of sequential programs, and deals with the question of resolving executions into higher-level and lower-level granularities. The second and third sections apply the theory developed to practical examples, and an exposition of the producer/consumer problem with details of two solutions is given. The author also deals with message passing, as opposed to shared memory.




CONCUR '96: Concurrency Theory


Book Description

This book constitutes the refereed proceedings of the 8th International Conference on Concurrency Theory, CONCUR'97. held in Warsaw, Poland, in July 1997. The 24 revised full papers presented were selected by the program committee for inclusion in the volume from a total of 41 high-quality submissions. The volume covers all current topics in the science of concurrency theory and its applications, such as reactive systems, hybrid systems, model checking, partial orders, state charts, program logic calculi, infinite state systems, verification, and others.




CONCUR '98 Concurrency Theory


Book Description

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..




Pro TBB


Book Description

This open access book is a modern guide for all C++ programmers to learn Threading Building Blocks (TBB). Written by TBB and parallel programming experts, this book reflects their collective decades of experience in developing and teaching parallel programming with TBB, offering their insights in an approachable manner. Throughout the book the authors present numerous examples and best practices to help you become an effective TBB programmer and leverage the power of parallel systems. Pro TBB starts with the basics, explaining parallel algorithms and C++'s built-in standard template library for parallelism. You'll learn the key concepts of managing memory, working with data structures and how to handle typical issues with synchronization. Later chapters apply these ideas to complex systems to explain performance tradeoffs, mapping common parallel patterns, controlling threads and overhead, and extending TBB to program heterogeneous systems or system-on-chips. What You'll Learn Use Threading Building Blocks to produce code that is portable, simple, scalable, and more understandableReview best practices for parallelizing computationally intensive tasks in your applications Integrate TBB with other threading packages Create scalable, high performance data-parallel programs Work with generic programming to write efficient algorithms Who This Book Is For C++ programmers learning to run applications on multicore systems, as well as C or C++ programmers without much experience with templates. No previous experience with parallel programming or multicore processors is required.




CONCUR 2006 - Concurrency Theory


Book Description

This book constitutes the refereed proceedings of the 17th International Conference on Concurrency Theory, CONCUR 2006, held in Bonn, Germany in August 2006. The 29 revised full papers presented together with 5 invited papers were carefully reviewed and selected from 101 submissions. The papers are organized in topical sections on model checking, process calculi, minimization and equivalence checking, types, semantics, probability, bisimulation and simulation, real time, and formal languages.




CONCUR 2012- Concurrency Theory


Book Description

This book constitutes the thoroughly refereed proceedings of the 23rd International Conference on Concurrency Theory, CONCUR 2012, held in Newcastle upon Tyne, UK, September 4-7, 2012. The 35 revised full papers presented together with 4 invited talks were carefully reviewed and selected from 97 submissions. The papers are organized in topics such as reachability analysis; qualitative and timed systems; behavioural equivalences; temporal logics; session types; abstraction; mobility and space in process algebras; stochastic systems; probabilistic systems; Petri nets and non-sequential semantics; verification; decidability.