This book presents five tutorial-style lectures on various approaches to
the problem of verifying distributed systems: three chapters concentrate
on linear-time or branching-time temporal logics; one addresses process
equivalence with an emphasis on infinite-state systems; and the final
one presents a novel category-theoretic approach to verification. The
various formalisms for expressing properties of concurrent systems,
based on automata-theoretic techniques or structural properties, are
studied in detail.
Much attention is paid to the style of writing and complementary
coverage of the relevant issues. Thus these lecture notes are ideally
suited for advanced courses on logics for concurrent systems. Equally,
they are indispensable reading for anyone researching the area of
distributed computing.