Level of the Course
The course is only for students who have completed their general studies.Teaching Period
I - II (Autumn)Workload
Lectures: 24h (12 lectures)
Exercises: 20h (10 exercise sessions)
Independent work: 96h
The lectures are on Wednesdays 10:15-12:00 in T6 / A136 (T6), Tietotekniikka, starting Wednesday, 14 September.
The exercise sessions are on Fridays 10:15-12:00 in TU3 / 1194 (TU3), TUAS,, starting Friday, 23 September.
After completing this course, you will be able to define the behavior of parallel and distributed systems in a rigorous way, discuss the challenge of concurrency-related design errors, and explain central analysis techniques for verifying parallel and distributed systems. You will be able to construct accurate formal models of small parallel and distributed systems and use a model checking tool to automatically verify several standard properties of the models. You will also be able to explain the central difficulties in analyzing systems caused by the state explosion problem, explain and apply central theoretical concepts of the area, and modify your models to reduce state explosion.Content
Modeling of parallel and distributed computer systems. Theoretical aspects of concurrent systems. Basics of specification methods including temporal logic. Algorithms and tools for computer aided verification of properties.Assessment Methods and Criteria
Weekly assignments (40%) and exam (60%).
Lecture slides, exercisesPrerequisites
Basic theoretical computer science including automata theory (e.g. ICS-C2000), logic in computer science (e.g. T-79.4101), and basics of multithreaded programming (e.g. CSE-A1121).Grading Scale: 0-5
Registration for Courses: Through WebOodi.
Language of Instruction:English
Course Staff and Contact Information
Lecturer: Ph.D. Viorel Preoteasa
Exercises: Ph.D. Iulia Dragomir
Office: T-B257Office Hours: by email appointment.