Skip to main content
Till KTH:s startsida Till KTH:s startsida

FDD3029 Epistemic Logic 6.0 credits

Choose semester and course offering

Choose semester and course offering to see current information and more about the course, such as course syllabus, study period, and application information.


For course offering

Spring 2024 Start 16 Jan 2024 programme students

Application code


Headings with content from the Course syllabus FDD3029 (Spring 2024–) are denoted with an asterisk ( )

Content and learning outcomes

Course disposition

One two-hour lecture per week for 7 weeks. Topical homework every week (graded in batches of 2 weeks), a take-home final exam, and a practical project.

Course contents

We introduce epistemic logic, a modal logic that we use to represent and reason about knowledge formally. We will study its theoretical foundations, including possible-worlds models and axiomatisations whose soundness and completeness we will prove, and explore applications in domains ranging from mathematical puzzles to formal games, distributed systems and computer security. The goal is to cover most of chapters 1-4 and parts of chapter 5 of Reasoning about Knowledge, as well as some more recent applications that postdate the book.

The course is broadly divided into two halves, with 4 weeks covering the broadly-applicable theoretical basics of epistemic logic, and another 3 weeks exploring its applications to a variety of problems in computer science including distributed systems and security.

Intended learning outcomes

The student will be able to 

  • articulate the challenges of formally representing knowledge, and explain how these are addressed using epistemic logic and the possible-worlds model of knowledge
  • interpret epistemic formulae in the possible-worlds model
  • prove and disprove tautologies using both semantic approaches and formal deduction on formulae
  • describe various models and axiomatisations for modal logics, and prove an axiom system sound and complete
  • use epistemic logic to formalise and reason about problems involving knowledge in areas such as program analysis, distributed systems and protocols and game theory
  • understand and implement tools for automated reasoning with epistemic logic

Literature and preparations

Specific prerequisites


Recommended prerequisites

Familiarity with propositional logic and mathematical proofs, as well as programming skills in a general-purpose language.


Computer with working programming environment


Reasoning about Knowledge (Fagin, Halpern, Moses and Vardi), MIT Press 2004

Examination and completion

If the course is discontinued, students may request to be examined during the following two academic years.

Grading scale

P, F


  • EXA1 - Examination, 6.0 credits, grading scale: P, F

Based on recommendation from KTH’s coordinator for disabilities, the examiner will decide how to adapt an examination for students with documented disability.

The examiner may apply another examination format when re-examining individual students.

The course will be examined based on 3 graded homeworks, a final take-home exam, and a programming project in which the student will implement a model checker for epistemic logic.

Opportunity to complete the requirements via supplementary examination

No information inserted

Opportunity to raise an approved grade via renewed examination

No information inserted


Ethical approach

  • All members of a group are responsible for the group's work.
  • In any assessment, every student shall honestly disclose any help received and sources used.
  • In an oral assessment, every student shall be able to present and answer questions about the entire assignment and solution.

Further information

Course room in Canvas

Registered students find further information about the implementation of the course in the course room in Canvas. A link to the course room can be found under the tab Studies in the Personal menu at the start of the course.

Offered by

Main field of study

This course does not belong to any Main field of study.

Education cycle

Third cycle

Add-on studies

No information inserted


Musard Balliu (; Matvey Soloviev (

Postgraduate course

Postgraduate courses at EECS/Theoretical Computer Science