2nd Semester 2023/24: Probabilistic Logic Programming

Ronald de Haan

In this project, we will study some approaches to probabilistic logic programming. In particular, we will study the ProbLog system ( In particular, we will study the syntax and semantics of it, as well as the underlying algorithmic approach that is implemented. We will also cover extensions of the system, such as DeepProbLog and smProbLog.


In the first week, we will have some introductory lectures. Starting from the second week, students work on a small research project (e.g., in pairs). In the beginning of the third week, students will present their progress to each other, and students will have a (short) meeting with the lecturer to see if they can use any help with their research project. Moreover, the lecturer is available throughout the project for on-demand meetings. During the final week, students will present the outcome of their research project, and they will submit a final report.


Basic knowledge of logic programming (Prolog), probability theory, and propositional logic.


(Small groups of) students work on a research project, which they present and write a report on. The final (pass/fail) assessment will be based on the presentations and the final report.


We will use several publications listed on

In particular, we will use:

  • D. Fierens, G. Van den Broeck, J. Renkens, D. Shterionov, B. Gutmann, I. Thon, G. Janssens and L. De Raedt. Inference and learning in probabilistic logic programs using weighted Boolean formulas. Theory and Practice of Logic Programming, 15:3, pp. 358 - 401, Cambridge University Press, 2015. 
  • L. De Raedt and A. Kimmig. Probabilistic (logic) programming concepts. Machine Learning, 100:1, pp. 5 - 47, Springer New York LLC, 2015.
  • R. Manhaeve, S. Dumancic, A. Kimmig, T. Demeester and L. De Raedt. DeepProbLog: Neural Probabilistic Logic Programming. NeurIPS 2018,Thirty-second Conference on Neural Information Processing Systems, pp. 3753 - 3760, 2018.