IN5110 – Specification and Verification of Parallel Systems

Schedule, syllabus and examination date

Choose semester

Teaching and exams spring 2022

In light of the most recent infection control regulations, we will at the start of the spring semester 2022 increase our online teaching, while we at the same time try to maintain in-person teaching where this is possible. We hope to go back to more in-person teaching later on in the semester. You will be informed about any changes in teaching or examinations on the semester page, in Canvas or through your regular channels.

Read more about postponed exams for the autumn semester 2021.

Course content

The course covers principles and techniques central to the automatic and formal verification of parallel and concurrent systems. In particular, logics that allow to concisely specify expected behavior, often in terms of temporal logic or related formalism. Furthermore, the lecture tackles the verification or model-checking problem, i.e. how to establish that a system model adheres to a given specification. The lecture also introduces various algorithmic approaches to battle the state-space explosion problem to handle systems with large state spaces.

Learning outcome

After the successful completion of the course you will:

  • have gained an understanding of different established (temporal) logics and their features used to specify reactive behavior
  • have gained insight into the principles and established state-of-the art techiques for algorithmic analysis of concurrent systems (``model checking´´)
  • have gained in-depth understanding of principles of the semantics of concurrent systems and their semantics
  • be able to understand further approaches encountered in the scientific literature and adapt analyses to a specific setting, based on the underlying principles covered in the course

Admission to the course

Students admitted at UiO must apply for courses in Studentweb. Students enrolled in other Master's Degree Programmes can, on application, be admitted to the course if this is cleared by their own study programme.

If you are not already enrolled as a student at UiO, please see our information about admission requirements and procedures for international applicants.

IN2010 – Algorithms and Data Structures (former INF2220), IN1150 – Logical Methods, IN2100 – Logic for System Analysis (formerly INF3232/INF3230)

Overlapping courses


3 hours of lectures each week. The course material is given in lectures with active participation in the lectures. Study of some selected smaller subtopics and its presentation will be decided individually.


Oral exam.

It will also be counted as one of your three attempts to sit the exam for this course, if you sit the exam for one of the following courses: IN9110 – Specification and Verification of Parallel Systems, INF5140 – Specification and verification of parallel systems (continued), INF9140 – Specification and verification of parallel systems (continued)

Examination support material

No examination support material is allowed.

Language of examination

The examination text is given in English, and you submit your response in English.

Grading scale

Grades are awarded on a scale from A to F, where A is the best grade and F is a fail. Read more about the grading system.

Resit an examination

Students who can document a valid reason for absence from the regular examination are offered a postponed examination at the beginning of the next semester. Re-scheduled examinations are not offered to students who withdraw during, or did not pass the original examination.

Special examination arrangements, use of sources, explanations and appeals

See more about examinations at UiO

Last updated from FS (Common Student System) Jan. 20, 2022 7:17:26 PM

Facts about this course

Teaching language