DM846: Logic for Computer Science

Study Board of Science

Teaching language: Danish or English depending on the teacher, but English if international students are enrolled
EKA: N340037102, N340037112
Assessment: Second examiner: Internal, Second examiner: None
Grading: 7-point grading scale, Pass/Fail
Offered in: Odense
Offered in: Spring
Level: Master's level course approved as PhD course

STADS ID (UVA): N340037101
ECTS value: 10

Date of Approval: 27-10-2022

Duration: 1 semester

Version: Approved - active


This course is co-taught with DM880.The course is offered as a study group.

Entry requirements

The course cannot be chosen if you have passed, registered, or have followed AI504 or DM880, or if AI504 or DM880 is a constituent part of your Curriculum.

Academic preconditions

The student is expected to have basic understanding of mathematical proofs and to be familiar with the basics of propositional logic and predicate calculus, obtainable e.g. by having followed DM549 Discrete methods for computer science or MM537 Introduction to Mathematical Methods.

Course introduction

The aim of this course is to provide students with a background on logic focusing on aspects most relevant to computer science.
In relation to the competence profile of the degree it is the explicit focus of the course to:
  • provide knowledge of a selection of specialized models and methods developed in computer science based on the highest international research, including topics from the subject's research front
  • provide knowledge of computer science models and methods intended for applications in other professional areas
  • provide the ability to put forward hypotheses on a qualified theoretical background and be critical of one's own and others' research results and scientific models
  • provide competence to plan and carry out scientific projects at a high professional level, including managing work and development situations that are complex, unpredictable and assumed new solutions 

Expected learning outcome

At the end of this course, the student is expected to have the following competences:
  • understand the theoretical concepts of soundness, completeness, and decidability
  • prove soundness of particular logics
  • choose the logic framework most suited for particular computer science applications
  • be able to use existing tools for reasoning within particular logics


  • deductive systems for propositional logic
  • first order logic and subsets thereof, combinatorial logic and type theory
  • Curry-Howard isomorphism
  • modal and temporal logic
  • formal specification and validation
  • tools for logic reasoning


See itslearning for syllabus lists and additional literature references.

Examination regulations

Exam element b)




Oral exam




Second examiner: Internal


7-point grading scale


Student Identification Card


Normally, the same as teaching language


30 minutes

Examination aids

To be announced during the course 

ECTS value


Additional information

Project followed by oral exam. The student completes a project and submits a report. The evaluation is based on the report and an oral exam, where the project is presented and the teacher asks about both the project and other topics covered in the course.

Exam element a)




Mandatory assignments




Second examiner: None




Full name and SDU username


Normally, the same as teaching language

Examination aids

To be announced during the course 

ECTS value


Indicative number of lessons

20 hours per semester

Teaching Method

The teaching method is based on three phase model.

  • Intro phase: 8 hours
  • Skills training phase: 8 hours

Activities during the study phase:

  • reading the course material
  • solving exercises related to the reading material
  • individual reflection on the intro and training phase

The confrontation hours will consist mainly of discussing the reading material and exercises.

Teacher responsible

Name E-mail Department
Luís Cruz-Filipe Concurrency


Administrative Unit

Institut for Matematik og Datalogi (datalogi)

Team at Educational Law & Registration


Offered in


Recommended course of study

Profile Education Semester Offer period

Transition rules

Transitional arrangements describe how a course replaces another course when changes are made to the course of study. 
If a transitional arrangement has been made for a course, it will be stated in the list. 
See transitional arrangements for all courses at the Faculty of Science.