Skip to content


ICR offers a number of courses within the Bachelor and the Master of Computer Science. In the Bachelor, we give an introduction into logic and artificial intelligence. In the Master, we are concerned with sophisticated knowledge representation and inference methods in the context of intelligent multi-agent systems. Our teaching constitutes a cornerstone of the intelligent and adaptive systems profiles. The more advanced master courses are intended to bring the student in touch with our research topics and to prepare him/her for a master thesis in our group. In the context of doctoral studies, we plan to organize compact courses (micro-schools) for computer science and beyond. In addition, ICR contributes on a regular base to several international summer schools. Last but not least, we complete our educational outreach by organizing talks about our research and by participating at events aimed at a larger audience (e.g. researchers nights).


  • Discrete mathematics I (Academic) (Winter semester)
    Discrete structures are foundational material for computer science. Relatively few computer scientists will be working primarily on discrete structures, but many other areas of computer science require the ability to work with concepts from discrete structures. The discrete structures covered in this introduction include important material from such areas as set theory, logic, graph theory, and number theory.

  • Intelligent Systems 2 (Summer semester)
    While pattern matching is an important dimension of intelligent behaviour, the heart of human intelligence are correct reasoning and expressive communication. These are prerequisites for understanding, explanation, and justifiable rational action. Knowledge representation is the area concerned with the formal modeling of this second dimension by advanced symbolic/logical techniques. To reach the ambitious goals of Artificial Intelligence in the coming decades, both dimensions, machine learning and reasoning will be essential. The present course will give a broad survey of relevant subareas and techniques in Knowledge Representation, starting with a refresh in Logic.

    • Logical foundations (refresh): Propositional logic, First-order logic, Modal logic.
    • Modeling agents: Belief and preference states, Belief dynamics, Action logics, Multi-agent systems.
    • Non-monotonic reasoning: Classical approaches, Valuation-based approaches, Formal Argumentation, Probabilistic reasoning.
    • Probabilistic logics: Inductive probabilistic inference, Causal reasoning.
    • Practical knowledge representation.
  • Probabilities (in french) (Summer semester)
    Ce cours vise à familiariser l'étudiant avec les notions de base du calcul des probabilités. Tout événement à priori inconnu est généralement décrit par des probabilités. Des exemples classiques sont: un jet de dés ou le lancer d'une pièce. Les probabilités sont utiles dans de nombreux domaines, soit pour faire des estimations, soit pour prendre de bonnes décisions par rapport à des évènements inconnus.

    • Analyse combinatoire: dénombrement des possibilités, combinaisons, permutations.
    • Variables aléatoires: notation, probabilités conditionnelles, théorème de Bayes, marginalisation, indépendance.
    • Espérance mathématique: valeur moyenne, variance, écart-type, linéarité, corrélation.
    • Distributions discrètes: épreuves de Bernoulli, loi géométrique, loi binomiale.
    • Distributions continues: densités, loi uniforme, loi normale.
    • La loi des grands nombres.
    • Estimations.
  • Programming 3 (Winter semester)
    The aim of this course is to familiarize the students with the basics of graphical user interface (GUI) programming with two different popular frameworks and related programming paradigms like event-driven programming and multi-threading. This course addresses the theory and practice of graphical user interface (GUI) programming. Topics include: event-driven programming, multi-threading, and related design patterns (Model-View-Controller, ...). We examine various practical examples in Java Swing for desktop applications, and Android for mobile phones.


  • Intelligent Systems: Agents and Reasoning (Winter semester)
    Preparing the student for the emerging age of ubiquitous intelligent systems and robots, getting a solid background for studies in intelligent and/or adaptive systems, promoting the use of intelligent techniques in other areas of computer science, promoting the use of intelligent techniques in cross-disciplinary interaction. The lectures cover propositional logic (PROP), semantics and proof theory, first order logic (FOL), semantics and proof theory, knowledge representation and reasoning (KRR) based on first order logic, and the IDP3 system.

  • Intelligent Agents I: Knowledge Representation (Summer semester)
    The objective of this course is to introduce students to knowledge representation and reasoning methods for intelligent agent systems.
    The course has 4 parts:

    1. Belief revision and argumentation
    2. Natural language semantics
    3. Nonmonotonic reasoning under uncertainty
    4. Modal logics for agent reasoning.

    In the course, the nature and roles of different formal theories used for individual reasoning and autonomous agents is explained, such as various modal logics, belief change formalisms, or methods for uncertainty management. It defines and applies the basic concepts of one or two non-classical logics (e.g. modal logic and default logics), notably their semantics and proof calculi.

  • Intelligent Agents II: Deontic Logic and Normative Reasoning (Winter semester)
    This course is a continuation of the course on Knowledge Representation. It offers lectures on the following topics:

    • Normative multiagent systems
    • Formal studies of normative reasoning for agents (deontic logic)
    • Argumentation

    The course addresses students interested in artificial intelligence and formal reasoning. Normative reasoning studies how social norms, obligations and permissions can be formalized. This enables a better understanding of various aspects of inter-agent coordination within a possibly complex system (computer network, organization, group, ... ).

  • Autonomous Robot Software (Winter semester)
    This course is a collaboration between computer science (Leon van der Torre) and engineering (Holger Voos). The course consists of fifty percent lectures and fifty percent practicals. In the lectures, Holger Voos gives an introduction to robotics, and Leon van der Torre discusses knowledge representation and reasoning for robotics. For the practicals, the students learn how to use ROS for building software for the Nao robots. ROS software is the de facto standard robot framework, widely used for component based robotic software engineering. The DCS robolab is a collaborative research between DCS and SnT departments of the University of Luxembourg. We use NAO robots for research and education. For details checkout the project and publication sections on our website.

  • Selected Topics in AI (Winter semester)
    The objective of this 3rd semester MICS course is to introduce students to specific advanced topics in Artificial Intelligence/Logic, and to prepare them for individual research work (e.g. a Master/PhD thesis) by letting them study and discuss relevant research literature, possibly supplemented by small research tasks.

    The course is organized as a seminar, that is, it is based on talks given by students. Each presentation session is devoted to one topic or paper. Typically there is a 1h talk by a student, followed by a 30min discussion. Each student is expected to attend and participate to each session. This includes taking a look at the material and sending in questions beforehand. To prepare the talk, we offer personal tutoring sessions for each student. The +/- 10 themes are distributed at the begin of the semester. The number of talks limits the number of students. The evaluation is based on the talk, the discussion, participation during and before sessions, and tests or micro-projects.

    The course requires a good background in Logic/Knowledge Representation and Artificial Intelligence, basic knowledge in Probability Theory, as well as an interest in foundational and theoretical considerations. Where necessary, additional background material can be provided.


  • Argumentation

    • Part I : An Introduction to Formal Models of Argumentation
      In this tutorial we give an introduction to formal models of argumentation that have been developed in the field of Artificial Intelligence. We start with Dung's theory of abstract argumentation, in which arguments are abstract entities (with no specified structure or content) that are related to each other by an attack relation, and the goal is to determine the acceptability of these arguments. We then move on to instantiated argumentation, where the structure and content of the arguments is specified. We will focus on the ASPIC system, in which arguments are constructed using both strict and defeasible rules sourced from an underlying knowledge base. We finally take a look at dialogical proof theories. They form a bridge between (abstract) argumentation and communication between agents (human or artificial).

    • Part II : Formal, informal and linguistic perspectives on the analysis of arguments
      Argumentation theory is concerned with how people reason and how they should reason. It combines ideas from informal and formal logic, non-monotonic reasoning and linguistics. Many approaches in the field of computer science and AI mainly focus on the formal aspects of non-monotonic reasoning, turning argumentation into a mathematical exercise which is wholly different from the linguistic endeavour of everyday argument and debate. In this course we will explore the tensions between mathematical and linguistic argumentation by analysing real-world arguments and casting them in the light of well-known formal approaches to argumentation.

  • Deontic Logic and Normative Reasoning

    • Part I: Logic Models for Responsibility
    • Part II: Regulative and constitutive norms in deontic logic
    • Part III: Normative Multi-agent Systems
    • Part IV: Normative reasoning and language

    The aims of this course are:

    • An introduction to deontic logic as described in the recent handbook of deontic logic and normative systems
    • The students will find out if and how normative reasoning can be used in their research
    • To position normative reasoning in the broader context of linguistic, legal and logical reasoning
  • Individual and Collective Reasoning Seminar
    Mostly internal talks by ICR staff and PhD students. Problem sessions where specific open questions are presented and discussed.

  • ILIAS Seminars
    Guest talks by visiting researchers.

Quality philosophy

Each course is evaluated using a student questionnaire to support further improvement. In addition, we encourage a continuous dialogue with the students to profit from immediate feedback - problems should be addressed as soon as they occur. A critical discussion of teaching contents and styles among ICR members are part of our group culture. We have also started to work on a general curriculum and standards for teaching logic and knowledge representation which may inform teaching in an international context.

Thesis proposals

We welcome students who want to write their thesis (Bachelor, Master, or PhD) at ICR. While the subject should fit our research priorities, we are willing to take into account the ideas and preferences of the students. Candidates may contact Leon van der Torre or Emil Weydert for further information.