plingo: A system for probabilistic reasoning in clingo based on lpmln
This work provides a tool for researchers and practitioners in AI and logic programming to perform probabilistic reasoning, but it is incremental as it builds upon existing ASP technology and probabilistic formalisms.
The authors tackled the problem of probabilistic reasoning in Answer Set Programming (ASP) by developing plingo, an extension of the ASP system clingo that supports multiple probabilistic reasoning modes, including LP^MLN, P-log, and ProbLog, and demonstrated its performance through empirical comparison with other systems.
We present plingo, an extension of the ASP system clingo with various probabilistic reasoning modes. Plingo is centered upon LP^MLN, a probabilistic extension of ASP based on a weight scheme from Markov Logic. This choice is motivated by the fact that the core probabilistic reasoning modes can be mapped onto optimization problems and that LP^MLN may serve as a middle-ground formalism connecting to other probabilistic approaches. As a result, plingo offers three alternative frontends, for LP^MLN, P-log, and ProbLog. The corresponding input languages and reasoning modes are implemented by means of clingo's multi-shot and theory solving capabilities. The core of plingo amounts to a re-implementation of LP^MLN in terms of modern ASP technology, extended by an approximation technique based on a new method for answer set enumeration in the order of optimality. We evaluate plingo's performance empirically by comparing it to other probabilistic systems.