Rigorous theory and real-world applications for modeling and analysis of the behavior of complex communicating computer systems
Complex communicating computer systems--computers connected by data networks and in constant communication with their environments--do not always behave as expected. This book introduces behavioral modeling, a rigorous approach to behavioral specification and verification of concurrent and distributed systems. It is among the very few techniques capable of modeling systems interaction at a level of abstraction sufficient for the interaction to be understood and analyzed. Offering both a mathematically grounded theory and real-world applications, the book is suitable for classroom use and as a reference for system architects.
The book covers the foundation of behavioral modeling using process algebra, transition systems, abstract data types, and modal logics. Exercises and examples augment the theoretical discussion. The book introduces a modeling language, mCRL2, that enables concise descriptions of even the most intricate distributed algorithms and protocols. Using behavioral axioms and such proof methods as confluence, cones, and foci, readers will learn how to prove such algorithms equal to their specifications. Specifications in mCRL2 can be simulated, visualized, or verified against their requirements. An extensive mCRL2 toolset for mechanically verifying the requirements is freely available online; this toolset has been successfully used to design and analyze industrial software that ranges from healthcare applications to particle accelerators at CERN. Appendixes offer material on equations and notation as well as exercise solutions.
OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.
Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.
Find this site helpful? Tell a friend about us.
We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.
Your purchases help us maintain our catalog and keep our servers humming without ads.
Thank you for supporting OpenCourser.