Concurrency Theory

Teachers Fabrizio Montesi https://fabriziomontesi.com/ (course responsible)
Marco Peressotti https://marcoperessotti.com/ (Assistant)
Period Fall 2019
ECTS 10 credits
Code DM861 (https://odin.sdu.dk/sitecore/index.php?a=searchfagbesk&internkode=dm861&lang=en)
Office hours Open door.

Summary

Multi-core processors, cloud computing, and web services make concurrent systems widespread. However, designing and programming such systems correctly is challenging, since it requires predicting how multiple programs executed independently will interact. This course aims at presenting and investigating models, reasoning techniques, and abstract programming disciplines for concurrent systems. These tools allow for translating concrete requirements and designs into precise mathematical definitions, which can be used to prove that the desired properties are provided (such as lack of deadlocks or safe usage of asynchronous channels).

Many of the models covered in the course are the bases of recent or emerging programming languages and design tools, such as BPMN, Go, and Jolie.

In relation to the competence profile of the degree it is the explicit focus of the course to:

At the end of this course, the student is expected to have the following competences:

Selected topics