UvA homepage UvA homepage
Search results

Concurrency Theory

Catalogue Number
5284COTH6Y
Course code
MINCOTH6
Admin. code
OWII
Credits
6
Entry requirements
Basic knowledge in mathematics and programming
Time Period(s)
Semester 1 block 1 More info
Educational institute
Graduate School of Informatics
Lecturer(s)
Is part of ...

Objectives

Learning about algebraic methods in the field of concurrency or grid theory: specification languages, modelling of processes, and distributed algorithms.

Contents

Elementary process algebra, program algebra and thread algebra. Process algebra is an algebraic approach suitable for the specification and analysis of parallel, communicating systems: (concurrent) behavior can be expressed in process expressions and is subject to forms of algebraic reasoning, e.g., one can either prove or falsify that the implementation of a concurrent system satisfies after abstraction its specification. We will analyze a distributed algorithm (e.g., a leader election protocol). In program algebra (contrary to process algebra) one considers aspects of the form of programs that are not preserved after abstraction to behavior, such as programs with go-to instructions. This is meaningful in the study of program transformations that occur, for instance, in programming languages with multi-threading. Finally, we shortly consider thread algebra as a natural semantics for program algebra.

Registration at

Registration for courses is mandatory, but will be done by the Education Service Centre for the 1st year MSc students for courses of the first semester. See also http://www.student.uva.nl and choose your master and then 'New procedure 'Registration for courses Faculty of Science'.

Format

Lectures, working sessions and lab sessions.

Study materials

Research papers and other written material (provided at the Blackboard site of the course).

Assessment

Written exam and judgement of submitted work.