KR Conference 2016 Short Paper
Probabilistic logic programs without negation can have cycles (with a preference for false), but cannot represent all conditional distributions. Probabilistic logic programs with negation can represent arbitrary conditional probabilities, but with cycles they create logical inconsistencies. We show how allowing negative noise probabilities allows us to represent arbitrary conditional probabilities without negations. Noise probabilities for non-exclusive rules are difficult to interpret and unintuitive to manipulate; to alleviate this we define “probability-strengths” which provide an intuitive additive algebra for combining rules. For acyclic programs we prove what constraints on the strengths allow for proper distributions on the non-noise variables and allow for all non-extreme distributions to be represented. We show how arbitrary CPDs can be converted into this form in a canonical way. Furthermore, if a joint distribution can be compactly represented by a cyclic program with negations, we show how it can also be compactly represented with negative noise probabilities and no negations. This allows algorithms for exact inference that do not support negations to be applicable to probabilistic logic programs with negations. Programs We use capital letters for random variables, and lower-case letters for them being true, e. g., b means B = true. A (probabilistic) rule has the form p: head ← body, where p is a probability, head is a positive literal, and body is a conjunction of other, positive or negative, literals. When p = 1, it can be omitted, and the rule is called a deterministic rule. The probabilistic aspect is captured using a set of special “noise” variables N1, N2,..., NN. Each noise variable appears exactly once as a rule head, in special probabilistic rules called probabilistic facts with the form pi: ni. Other probabilistic rules are actually only syntactic sugar: p: head ← body is short for p: ni and head ← ni ∧ body, where Ni is a new noise variable not used by any other rule. A program is a multiset of rules. For convenience, we sometimes treat programs as sets; however, unions may produce programs with recurring rules. A program with no noise variables is a deterministic program. Programs can be either cyclic or acyclic. A model is an assignment to all the variables, represented as a set of positive literals. We use the stable-model semantics (Gelfond and Lifschitz 1988). We take the semantics of a deterministic program to be its unique stable model. If it does not have a unique stable model, we call the program “(logically) inconsistent”. Inconsistency only arises in cyclic programs, when a cycle of rules contains a negation (Apt and Bezem 1991). A deterministic program realization (DPR) for a program R is a deterministic program derived from R by having every probabilistic fact pi: ni either omitted or converted to the deterministic ni. The semantics of a probabilistic program is a distribution over its 2N DPRs, where, inde-