Designing Reliable Distributed Systems
A Formal Methods Approach Based on Executable Modeling in Maude| By: | Peter Csaba Ölveczky |
| Publisher: | Springer Nature |
| Print ISBN: | 9781447166863 |
| eText ISBN: | 9781447166870 |
| Edition: | 0 |
| Copyright: | 2017 |
| Format: | Reflowable |
eBook Features
Instant Access
Purchase and read your book immediately
Read Offline
Access your eTextbook anytime and anywhere
Study Tools
Built-in study tools like highlights and more
Read Aloud
Listen and follow along as Bookshelf reads to you
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.