On the implementation of the probabilistic logic programming language ProbLog

@article{Kimmig2011OnTI,
  title={On the implementation of the probabilistic logic programming language ProbLog},
  author={Angelika Kimmig and Bart Demoen and Luc De Raedt and V{\'i}tor Santos Costa and Ricardo Rocha},
  journal={Theory and Practice of Logic Programming},
  year={2011},
  volume={11},
  pages={235 - 262}
}
Abstract The past few years have seen a surge of interest in the field of probabilistic logic learning and statistical relational learning. In this endeavor, many probabilistic logics have been developed. ProbLog is a recent probabilistic extension of Prolog motivated by the mining of large biological networks. In ProbLog, facts can be labeled with probabilities. These facts are treated as mutually independent random variables that indicate whether these facts belong to a randomly sampled… 
ProbLog2: From probabilistic programming to statistical relational learning
TLDR
This work argues that the main mechanism behind ProbLog2 is a conversion of the given program to a weighted Boolean formula that can be applied with certain restrictions to other probabilistic programming languages such as Church and Figaro.
Declarative Probabilistic Programming with Datalog
TLDR
A probabilistic-programming extension of Datalog is established that allows for defining a rich family of statistical models, and retains the fundamental properties of declarativity, and provides mechanisms to include common numerical probability functions.
Experimentation of an expectation maximization algorithm for probabilistic logic programs
TLDR
The results show that EMBLEM is able to solve problems on which the other systems fail and it often achieves significantly higher areas under the Precision Recall and the ROC curves in a similar time.
2 Declarative Probabilistic Programming with Datalog
TLDR
An extension of Datalog is proposed and investigated for specifying statistical models, and a declarative probabilistic-programming paradigm over databases is established, providing convenient mechanisms to include common numerical probability functions.
A History of Probabilistic Inductive Logic Programming
TLDR
An overview of PILP is presented and the main results are discussed, showing how structure learning systems use parameter learning as a subroutine to improve the quality of their results.
Evaluating Inference Algorithms for the Prolog Factor Language
TLDR
Prolog Factor Language is an extension of the Prolog language that allows a natural representation of first-order probabilistic models (either directed or undirected) and is capable of solving probabilism queries on these models through the implementation of four inference algorithms.
Efficient Algorithms for Prolog Based Probabilistic Logic Programming (Efficiënte algoritmen voor prolog gebaseerd probabilistisch logisch programmeren)
TLDR
This thesis focuses on the extension and implementation of ProbLog, and presents several novel extensions to the ProbLog language, such as: general negation, probabilistic meta calls and ProbLog answers, as well as several novel algorithms that improve the performance of this task.
A survey of probabilistic logic programming
TLDR
This chapter reviews the distribution semantics of probabilistic logic programming, beginning with the simplest case with stratified Datalog programs, and showing how the definition is extended to programs that include function symbols and non-stratified negation.
The Most Probable Explanation for Probabilistic Logic Programs with Annotated Disjunctions
TLDR
This work proposes a new encoding of annotated disjunctions which allows correct MARG and MPE and explores from both theoretical and experimental perspective the trade-off between the encoding suitable only for MARG inference and the newly proposed general approach.
On Continuous Distributions and Parameter Estimation in Probabilistic Logic Programs (Over continue verdelingen en het schatten van parameters in probabilistische logische programma's)
TLDR
This thesis makes four main contributions to the field of probabilistic logic learning: hybrid ProbLog is an extension for ProbLog with continuous facts that allows for exact inference, Distributional Programs combine elements of ProbLog, Hybrid ProbLog and CP-Logic into a very expressive language for dealing with continuous distributions.
...
...

References

SHOWING 1-10 OF 44 REFERENCES
On the Efficient Execution of ProbLog Programs
TLDR
Algorithms that allow the efficient execution of queries are introduced, their implementation on top of the YAP-Prolog system is discussed, and their performance in the context of large networks of biological entities is evaluated.
Compressing probabilistic Prolog programs
TLDR
The theory compression task for ProbLog is introduced, which consists of selecting that subset of clauses of a given ProbLog program that maximizes the likelihood w.r.t. a set of positive and negative examples.
ProbLog: A Probabilistic Prolog and its Application in Link Discovery
TLDR
The key contribution of this paper is the introduction of an effective solver for computing success probabilities, which essentially combines SLD-resolution with methods for computing the probability of Boolean formulae.
Trading memory for answers: Towards tabling ProbLog
TLDR
Extensions of exact inference to deal with negated ground subgoals in clause bodies are discussed that broaden the class of problems that can be handled and can speed up inference in domains where dierent proofs of a query share manySubgoals.
Stochastic Logic Programs
TLDR
Stochastic logic programs are introduced as a means of providing a structured deenition of such a probability distribution and it is shown that the probabilities can be computed directly for fail-free logic programs and by normalisation for arbitrary logic programs.
A Top Down Interpreter for LPAD and CP-Logic
TLDR
A top down interpreter for computing the probability of a query from a program in one of these two languages, based on the one available for ProbLog, is presented.
Probabilistic Inductive Logic Programming
TLDR
This chapter outlines three classical settings for inductive logic programming, namely learning from entailment, learning from interpretations, and learning from proofs or traces, and shows how they can be adapted to cover state-of-the-art statistical relational learning approaches.
Probabilistic Inductive Querying Using ProbLog
TLDR
It is shown how probabilistic reasoning and inductive querying can be combined within ProbLog, a recent probabilism extension of Prolog, and how it can be applied to the mining of large biological networks.
Parameter Learning of Logic Programs for Symbolic-Statistical Modeling
TLDR
A logical/mathematical framework for statistical parameter learning of parameterized logic programs, i.e. definite clause programs containing probabilistic facts with a parameterized distribution, and a new EM algorithm that can significantly outperform the Inside-Outside algorithm.
ProbView: a flexible probabilistic database system
TLDR
This article characterize, using postulates, whole classes of strategies for conjunction, disjunction, and negation, meaningful from the viewpoint of probability theory, and shows that as long as the chosen strategies can be computed in polynomial time, queries in the positive fragment of the probabilistic relational algebra have essentially the same data complexity as classical relational algebra.
...
...