The Problog-I Language and Learning System

This document is intended as a user guide for the users of ProbLog-I. ProbLog is a probabilistic Prolog, a probabilistic logic programming language, which is integrated in YAP-Prolog. Most of the work in ProbLog is now based on(Prolog-II), but we still maintain ProbLog-I in order to experiment with close integration of probabilistic nd logical systems.

ProbLog assumes probabilistic facts as Prob::Fact and clauses in normal Prolog format

provides following inference modes (16/12/2008):

  • approximation with interval width Delta (IJCAI07): problog_delta(+Query,+Delta,-Low,-High,-Status)

  • bounds based on single probability threshold: problog_threshold(+Query,+Threshold,-Low,-High,-Status)

  • as above, but lower bound only: problog_low(+Query,+Threshold,-Low,-Status)

  • lower bound based on K most likely proofs: problog_kbest(+Query,+K,-Low,-Status)

  • explanation probability (ECML07): problog_max(+Query,-Prob,-FactsUsed)

  • exact probability: problog_exact(+Query,-Prob,-Status)

  • sampling: problog_montecarlo(+Query,+Delta,-Prob)

mailto:angelika.kimmig@cs.kuleuven.be