𝔖 Scriptorium
✦   LIBER   ✦

πŸ“

Verification of Sequential and Concurrent Programs

✍ Scribed by Krzysztof R. Apt, Frank S. de Boer, Ernst-Rüdiger Olderog


Publisher
Springer
Year
2009
Tongue
English
Leaves
511
Series
Texts in Computer Science
Edition
3rd
Category
Library

⬇  Acquire This Volume

No coin nor oath required. For personal study only.

✦ Synopsis


Computer programs are an indispensable part of many of the systems we rely upon in our daily lives, and the proper functioning and safety of these systems is of paramount importance. The development of methods that ensure program correctness is therefore a key challenge for computer scientists.

This widely anticipated third edition of Verification of Sequential and Concurrent Programs provides a systematic exploration of one of the most common approaches to program verification, known as the "assertional" approach. Following the successful formula of previous editions, this approach is applied to deterministic and nondeterministic sequential programs of varying complexity, together with both parallel and distributed concurrent programs. The expanded content of this thorough new edition also includes coverage of the verification of object-oriented programs. For each class of programs, the authors introduce an operational semantics and proof systems for the verification of partial and total correctness, justified formally in corresponding soundness theorems. Case studies supplied throughout the book demonstrate the use of the proof systems to formally verify solutions to classical problems, such as sorting, manipulation of lists, producer/consumer and mutual exclusion.

Topics and Features:

  • Includes a thorough introductory section, familiarizing the reader with the basic concepts and notation used in the book, as well as the book’s structure
  • Explains Hoare’s approach to program verification for while programs, providing a correctness proof of a program for partitioning an array (NEW)
  • Concludes each chapter with exercises and bibliographic remarks for further reading
  • Discusses recursive programs that extend deterministic programs by parameterless procedures and procedures with the call-by-value parameter mechanism, and provides a correctness proof of the quicksort program (NEW)
  • Explores nondeterministic and distributed programs, presenting a verification method of distributed programs based on a transformation into nondeterministic ones
  • Presents object-oriented programs, with a focus on the main characteristics of objects (NEW)
  • Investigates parallel programs with shared variables and with synchronization
  • Studies the issue of fairness in the framework of nondeterministic programs, using an approach based on the method of explicit schedulers
  • Includes a Foreword by Professor Amir Pnueli

This modern update of a classic, reader-friendly textbook is perfect for an introductory course on program verification for advanced undergraduate or graduate students, and may also be used as an introduction to operational semantics. Outlines for possible courses are suggested in the Preface to the book. This book is unique in addressing assertional verification of all essential classes of imperative programs: while programs, recursive programs, object-oriented programs, nondeterministic programs, parallel programs, and distributed programs.

✦ Table of Contents


Front Matter....Pages i-xxiii
Front Matter....Pages 3-3
Introduction....Pages 3-17
Preliminaries....Pages 18-52
Front Matter....Pages 53-53
While Programs....Pages 55-126
Recursive Programs....Pages 127-150
Recursive Programs with Parameters....Pages 151-183
Object-Oriented Programs....Pages 185-241
Front Matter....Pages 243-243
Disjoint Parallel Programs....Pages 243-266
Parallel Programs with Shared Variables....Pages 267-305
Parallel Programs with Synchronization....Pages 307-346
Front Matter....Pages 347-347
Nondeterministic Programs....Pages 347-372
Distributed Programs....Pages 373-406
Fairness....Pages 407-455
Back Matter....Pages 457-502

✦ Subjects


Logics and Meanings of Programs; Mathematical Logic and Formal Languages


πŸ“œ SIMILAR VOLUMES


Specification and Verification of Concur
✍ Pierre America (auth.), C. Rattray MSc (eds.) πŸ“‚ Library πŸ“… 1990 πŸ› Springer-Verlag London 🌐 English

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

Sequential Logic Testing and Verificatio
✍ Abhijit Ghosh, Srinivas Devadas, A. Richard Newton (auth.) πŸ“‚ Library πŸ“… 1992 πŸ› Springer US 🌐 English

<p>In order to design and build computers that achieve and sustain high performance, it is essential that reliability issues be considered careΒ­ fully. The problem has several aspects. Certainly, considering reliability implies that an engineer must be able to analyze how design decisions affect the