 Learning goals
After this course the sudent is able to autonomously:

explain how process algebra can be applied to model concurrent systems

study literature where in different steps concurrent phenomena are transformed into abstract formalisms

apply the insight in the forementioned literature in other contexts, resulting in mathematical structures

manipulate mathematical structures in a given context, in order to obtain a specific goal (e.g. giving overview, generating a solution)
 Content
This course introduces a process calculus for the specification of concurrent systems. It is shown how bisimulation and observational equivalence provide powerful analysis tools for such specifications. It is shown how these principles play a role in an industrial context. Therefore process algebra is enhanced with data. Several analysis techniques are presented to analyse properties of data and process specifications.
Prerequisites
At the beginning of the course the student is expected to:

be interested and motivated to work with mathematical formalisms

accept the challenge to work on unfamiliar assignments and be willing to take risks, and not quit lightly

be able to apply formal methods on the level of e.g. course Formal Methods for Software Engineering (192135201), or course Basic Models in Computer Science (192111801)

be able to deal with mathematical concepts like sets, relations, automata, and induction proofs.
 Assumed previous knowledge   Required materialsRecommended materialsBook"Communicating and mobile systems: the picalculus", by Robin Milner, Cambridge University Press, 1999. 
 Instructional modesTeststakehome examinations


 