University of Warsaw - Central Authentication System
Strona główna

Theory of concurrency

General data

Course ID: 1000-218bTW
Erasmus code / ISCED: 11.3 Kod klasyfikacyjny przedmiotu składa się z trzech do pięciu cyfr, przy czym trzy pierwsze oznaczają klasyfikację dziedziny wg. Listy kodów dziedzin obowiązującej w programie Socrates/Erasmus, czwarta (dotąd na ogół 0) – ewentualne uszczegółowienie informacji o dyscyplinie, piąta – stopień zaawansowania przedmiotu ustalony na podstawie roku studiów, dla którego przedmiot jest przeznaczony. / (0612) Database and network design and administration The ISCED (International Standard Classification of Education) code has been designed by UNESCO.
Course title: Theory of concurrency
Name in Polish: Teoria współbieżności
Organizational unit: Faculty of Mathematics, Informatics, and Mechanics
Course groups: (in Polish) Przedmioty obieralne na studiach drugiego stopnia na kierunku bioinformatyka
Elective courses for Computer Science
Elective courses: concurrent and distributed programming
ECTS credit allocation (and other scores): 6.00 Basic information on ECTS credits allocation principles:
  • the annual hourly workload of the student’s work required to achieve the expected learning outcomes for a given stage is 1500-1800h, corresponding to 60 ECTS;
  • the student’s weekly hourly workload is 45 h;
  • 1 ECTS point corresponds to 25-30 hours of student work needed to achieve the assumed learning outcomes;
  • weekly student workload necessary to achieve the assumed learning outcomes allows to obtain 1.5 ECTS;
  • work required to pass the course, which has been assigned 3 ECTS, constitutes 10% of the semester student load.

view allocation of credits
Language: English
Main fields of studies for MISMaP:

computer science

Type of course:

obligatory courses

Mode:

Classroom

Short description:

Development of concurrent systems is difficult which resulted in many mathematical formalism designed for moddeling and considered already from the beginning of computer science. The goal of the current course is to present the most important and most interesting of them, in particular, Petri nets and process algebras.

Much of the focus is devoted to the automatic analysis of concurrent systems models, in particular, its computational complexity. Some of the classes take place in laboratories and are devoted to working with selected tools that enable modeling and analysis of concurrent systems.

Full description:

Development of concurrent systems is difficult. That is why computer science we consider various mathematical models of concurrent systems. The goal of the lecture is to present the most important of them including Petri Nets, process algebras. The main focus is put on the automatic analysis of modeled systems, in particular on the complexity of the above analysis. Some of the exercises require work with chosen tools for modeling and analysis of computer systems, which allow students to connect theoretical and practical aspects of concurrency.

Outline

I. Introduction

1 Motivations, classification of models, tools.

2 Linear and branching time: temporal properties (LTL, CTL).

II. Petri nets

3. Petri nets: concurrency, conflict, and causality.

4. Theory of Mazurkiewicz traces and its connection with Petri nets, asynchronous automata.

III. Process algebra

5. CCS: concurency and communication; other process algebras.

6. Bisimulation, as an process equivalence relation.

IV. Analysis of concurrent systems

7. Reachability for Petri nets.

8. Bisimulation checking.

Bibliography:

Bergstra, J., Ponse, A., Smolka, S., ed. Handbook of Process Algebra, Elsevier, 2001

R. Milner, Communication and Concurrency, Prentice Hall 1995

W. Reisig, Petri nets: an introduction, Springer, 1985

W. Reisig, G. Rozenberg (ed), Lectures on Petri Nets I: Basic Models, Springer 1998

J. Esparza, M. Nielsen, Decidability Issues for Petri Nets - a survey, Bulletin of the EATCS 52:244-262 (1994)

C. Rackoff, The covering and boundedness problems for vector addition systems, Theoretical Computer Science:6(2), 1978

V. Sassone, M. Nielsen, G. Winskel, Models for Concurrency: Towards a Classification, Theoretical Computer Science:170(1–2), 1996

V. Diekert, G. Rozenberg (ed), The Book of Traces, World Scientific 1995

S. Rao Kosaraju, Decidability of Reachability in Vector Addition Systems (Preliminary Version), STOC 1982

J. Leroux, Vector Addition Systems Reachability Problem (A Simpler Solution), Turing-100 2012

Learning outcomes:

Knowledge:

1. A student knows techniques for processes synchronization and communication between processes in centralized and distributed systems [K_W02].

2 A student knows algorithms for mutual exclusion and voting in distributed systems [K_W05].

3 A student knows main formalisms for modeling concurrent systems and their relations.

4 A student has a systematic knowledge on phenomena occurring in concurrent systems.

5. A student understands profits coming from formal modeling of concurrent systems as well as limitations of analysis of formal models.

6. A student knows complexities of main problems in the verification of concurrent systems.

Skills:

1. A student is able to use methods for synchronization of processes and threads in chosen technologies and depending on capabilities and architecture of a given computer [K_U06].

2 A student is able to use modern technologies for distributed computing and parallelization [K_U08].

3 A student knows the domain specific language on the B2 level[K_U14].

4. A student is able to formalize a concurrent system in a chosen modeling formalism.

5. A student is able to describe a chosen aspects of concurrency to non-specialists.

6. A student is able to express simple properties in temporal logic.

Expertise:

1. A student knows the limitations of his knowledge and understands the necessity of further studies [K_K01].

2. A student is able to formulate precise questions to better understand the topic or identify gaps in the reasoning. [K_K02].

3 A student is able to collaborate, including interdisciplinary collaborations; he/she understands a necessity of systematic work on all projects [K_K03].

4. A student is able to formulate his own statements on basic aspects of concurrency [K_K06].

Assessment methods and assessment criteria:

Oral exam. 3 question randomly generated from the list published 1 month before the exam.

Classes in period "Winter semester 2023/24" (past)

Time span: 2023-10-01 - 2024-01-28
Selected timetable range:
Navigate to timetable
Type of class:
Classes, 30 hours more information
Lecture, 30 hours more information
Coordinators: Sławomir Lasota
Group instructors: Arka Ghosh, Sławomir Lasota, Michał Pawłowski
Students list: (inaccessible to you)
Examination: Examination
Course descriptions are protected by copyright.
Copyright by University of Warsaw.
Krakowskie Przedmieście 26/28
00-927 Warszawa
tel: +48 22 55 20 000 https://uw.edu.pl/
contact accessibility statement USOSweb 7.0.3.0 (2024-03-22)