Designing Reliable Distributed Systems, 1st ed. 2017
A Formal Methods Approach Based on Executable Modeling in Maude

Undergraduate Topics in Computer Science Series

Author:

Language: English

68.56 €

In Print (Delivery period: 15 days).

Add to cartAdd to cart
Publication date:
313 p. · 15.5x23.5 cm · Paperback
This classroom-tested textbook provides an accessible introduction to the design, formal modeling, and analysis of distributed computer systems. The book uses Maude, a rewriting logic-based language and simulation and model checking tool, which offers a simple and intuitive modeling formalism that is suitable for modeling distributed systems in an attractive object-oriented and functional programming style.

Topics and features: introduces classical algebraic specification and term rewriting theory, including reasoning about termination, confluence, and equational properties; covers object-oriented modeling of distributed systems using rewriting logic, as well as temporal logic to specify requirements that a system should satisfy; provides a range of examples and case studies from different domains, to help the reader to develop an intuitive understanding of distributed systems and their design challenges; examples include classic distributed systems such as transport protocols, cryptographic protocols, and distributed transactions, leader election, and mutual execution algorithms; contains a wealth of exercises, including larger exercises suitable for course projects, and supplies executable code and supplementary material at an associated website.

This self-contained textbook is designed to support undergraduate courses on formal methods and distributed systems, and will prove invaluable to any student seeking a reader-friendly introduction to formal specification, logics and inference systems, and automated model checking techniques.

Introduction

Part I: Equational Specifications and Their Analysis

Equational Specification in Maude

Operational Semantics of Equational Specifications

Termination

Confluence

Equational Logic

Models of Equational Specifications

Part II: Specification and Analysis of Distributed Systems in Maude

Modeling Distributed Systems in Rewriting Logic

Executing Rewriting Logic Specifications in Maude

Concurrent Objects in Maude

Modeling Communication in Maude

Modeling and Analyzing Transport Protocols

Distributed Algorithms

Analyzing a Cryptographic Protocol

System Requirements

Formalizing and Checking Requirements

Real-Time and Probabilistic Systems

Appendix A: Mathematical Preliminaries

Dr. Peter Csaba Ölveczky is a Professor in the Department of Informatics at the University of Oslo, Norway.

Introduces formal modeling of abstract data types and distributed systems

Does not assume or require any formal methods or theoretical computer science background

Contains exercises throughout