Course Description

The course is designed to introduce research at the intersection of two areas in computer science: design and implementation of programming languages, and data mining. Data mining is currently one of the most vibrant and challenging fields of study in computer science. The ever-growing heaps of ever more complex data that society nowadays collects in every activity demand continuously for new ways of exploring stored information. This opens up new opportunities but also introduces new challenges, such as the ones opened by the need to process multi-relational data. Formalisms based in Logic Programming, such as Inductive Logic Programming, are widely seen as fundamental to progress in this area.
This course therefore builds upon the expertise of the proponents to propose an integrated view to this subject. We introduce the foundations of Machine Learning and Data Mining, on the one hand, and the foundations of Logic Programming, on other hand, and explain how they can work together through Inductive Logic Programming. The course has a strong research focus, and is geared at introducing the student to recent progress in these exciting and quickly evolving fields, such as the opening area of Statistical Relational Learning.


Fundamental concepts on Probability Theory and Statistics, and Logic are expected. Understanding of major Programming Language implementation issues is recommended.

Expected Results

On completing the course, students should be able to:


Concepts are introduced through standard lecturing with example problems. Some classes can include laboratory work using some of the systems presented during the course. Course material consist of detailed slides and copies of key papers.

Lecturer Team

Alípio Mário Guedes Jorge. Faculty of Economics, University of Porto.
Paulo Jorge Sousa Azevedo. Department of Informatics, University of Minho.
Pavel Brazdil. Faculty of Economics, University of Porto.
Ricardo Jorge Gomes Lopes da Rocha. Department of Computer Science, Faculty of Sciences, University of Porto.
Rui Carlos Camacho de Sousa Ferreira da Silva. Department of Electrical and Computer Engineering, Faculty of Engineering, University of Porto.
Vítor Manuel de Morais Santos Costa. Department of Computer Science, Faculty of Sciences, University of Porto.