A distributed system is driven by separate components that are executed in parallel, and protocols for such systems form a major aspect of system design in today`s world of wireless and mobile networking. Process algebras are languages for the description of elementary parallel systems and are used to study the behavioural properties of distributed systems, but they often lack the ability to handle data. This textbook guides students through algebraic ...