Stable Model Counting and Its Application in Probabilistic Logic Programming
This addresses a bottleneck in probabilistic logic programming for researchers and practitioners, offering a more efficient method for specific inference tasks, though it is incremental as it builds on existing stable model semantics.
The paper tackled the inefficiency of translating logic programs to SAT for model counting in probabilistic logic programming, particularly for problems with inductive definitions like graph reachability, and showed that direct stable model counting using unfounded set detection can outperform a state-of-the-art solver by several orders of magnitude in running time and space, enabling solution of larger instances.
Model counting is the problem of computing the number of models that satisfy a given propositional theory. It has recently been applied to solving inference tasks in probabilistic logic programming, where the goal is to compute the probability of given queries being true provided a set of mutually independent random variables, a model (a logic program) and some evidence. The core of solving this inference task involves translating the logic program to a propositional theory and using a model counter. In this paper, we show that for some problems that involve inductive definitions like reachability in a graph, the translation of logic programs to SAT can be expensive for the purpose of solving inference tasks. For such problems, direct implementation of stable model semantics allows for more efficient solving. We present two implementation techniques, based on unfounded set detection, that extend a propositional model counter to a stable model counter. Our experiments show that for particular problems, our approach can outperform a state-of-the-art probabilistic logic programming solver by several orders of magnitude in terms of running time and space requirements, and can solve instances of significantly larger sizes on which the current solver runs out of time or memory.