<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Constraint-Based Inference in Probabilistic Logic Programs? (Extended Abstract)</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Arun Nampally</string-name>
          <email>anampally@cs.stonybrook.edu</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>C. R. Ramakrishnan</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Department of Computer Science, Stony Brook University</institution>
          ,
          <addr-line>Stony Brook, NY 11794</addr-line>
          ,
          <country country="US">USA</country>
        </aff>
      </contrib-group>
      <fpage>46</fpage>
      <lpage>56</lpage>
      <abstract>
        <p>A wide variety of models that combine logical and statistical knowledge can be expressed succinctly in the Probabilistic Logic Programming (PLP) paradigm. Specifically, models in standard statistical formalisms such as probabilistic graphical models (PGMs) (e.g. Bayesian Networks), can be easily encoded as PLP programs. For instance, Fig. 1(a) shows a program in PRISM, a pioneering PLP language [16]. A widget, represented by a random variable X, is tested by two different processes b1 and b2. The outcomes of these tests are represented by random variables Y and Z, respectively. In PRISM, a special predicate of the form msw(a,X) associates random variable X with a random process a. Consider the problem of determining the distribution of X given that Y and Z are identical. Note that evidence is defined as a constraint over instantiations of the random variables, in contrast to a specific instantiation as in traditional PGMs. However, such evidence can be easily specified in PLP (see predicate e/0). The probability of a specific instantiation of X can also be computed based on a PLP query (e.g. q(1) using predicate q/1). This simple example illustrates how logical clauses can be used to specify evidence and queries in PLP that go beyond what is possible in traditional PGMs. The Driving Problem. The expressiveness of PLP comes at a cost. Since PLP is an extension to traditional logic programming, inference in PLP is undecidable in general. Probabilistic inference for a large class of statistical models (e.g. Bayesian networks) is intractable. Even problems for which inference is tractable can be encoded in multiple ways in PLP, with different inference complexity. For instance, consider the PRISM program in Fig. 1(b). In that program, genlist/2 defines a list of the outcomes of N identically distributed random variables ranging over {a,b}. Predicate palindrome/1 tests, using a definite clause grammar definition, if a given list is a palindrome; and count as/2 tests if a given list contains k (not necessarily consecutive) “a”s. Using these predicates, consider the inference of the conditional probability of query(n, k) given evidence(n): i.e., the probability that an n-element palindrome has k “a”s.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Introduction</title>
      <p>
        1 % Model: Y and Z depend on X.
2 w(X,Y,Z)
:3 msw(a, X),
4 msw(b1(X), Y),
5 msw(b2(X), Z).
6 % Evidence: Y and Z are same.
7 e :- w(_,S,S).
8 % Query: value of X.
9 q(X) :- w(X,_,_).
10 % Domains:
11 values(a, [
        <xref ref-type="bibr" rid="ref1 ref2">1,2</xref>
        ]).
12 values(b1(_), [
        <xref ref-type="bibr" rid="ref1 ref2 ref3">1,2,3</xref>
        ]).
13 values(b2(_), [
        <xref ref-type="bibr" rid="ref2 ref3 ref4">2,3,4</xref>
        ]).
14 % Distribution parameters:
15 set_sw(a, [0.4,0,6]).
16 set_sw(b1(1), [0.1,0.3,0.6]).
17 set_sw(b1(2), [0.2,0.4,0.4]).
18 set_sw(b2(1), [0.5,0.3,0.2]).
19 set_sw(b2(2), [0.6,0.1,0.3]).
      </p>
      <p>(a) Bayesian Network PLP
1 % generate a list of N random variables.
2 genlist(N, L) :- (N=0 -&gt; L= []
3 ; msw(flip, N, X),
4 L = [X|L1], N1 is N-1,
5 genlist(N1, L1) ).
6 % Evidence: string is a palindrome.
7 evidence(N) :- genlist(N, L), palindrome(L).
8 % Query: string has K ’a’s
9 query(N, K) :- genlist(N, L), count_as(L, K).
10 % Check if a given list is a palindrome
11 palindrome(L) :- phrase(palindrome, L).
12 palindrome --&gt; [].
13 palindrome --&gt; [_X].
14 palindrome --&gt; [X], palindrome, [X].
15 % Query condition:
16 count_as([], 0).
17 count_as([X|Xs], K)
:18 K &gt; 0, (X=a -&gt; L is K-1; L=K),
19 count_as(Xs, L).
20 % Domains:
21 values(flip, [a,b]).
22 % Distribution parameters:
23 set_sw(flip, [0.5, 0.5]).</p>
      <p>(b) Palindrome PLP</p>
      <p>
        The conditional probability is well-defined according to PRISM’s distribution
semantics [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ]. However, the PRISM itself will be unable to correctly compute the
conditional query’s probability, since the conditional query, as encoded above,
will violate the PRISM system’s assumptions of independence among random
variables used in an explanation. It should be noted that the above conditional
probability may be efficiently inferred by transforming the “generate-and-test”
program to one where the tests are folded into the generation phase. However,
such transformations are dependent on the encoding of the query and evidence
predicates, and are hard to generalize. Moreover, while the probability of goal
evidence(N) can be computed in linear time (by exploiting sharing in
explanation graphs), the size of the explanation graph for goal query(N) may be
exponential in N when the subgoals in the explanations are placed in the order
in which they are encountered.
      </p>
      <p>
        Approximate inference based on rejection sampling performs poorly,
rejecting a vast number of generated samples, since the likelihood of a string being
a palindrome decreases exponentially in N . Alternatives such as
MetropolisHastings-based Markov Chain Monte Carlo (MCMC) techniques [9, e.g.] do
not behave much better due to the fact that the chains exhibit poor
convergence (mixing), since most transitions lead to strings inconsistent with evidence.
Gibbs-sampling-based MCMC [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ] cannot be readily applied since the
dependencies between random variables are hidden in the program and not explicit in the
model.
      </p>
      <p>msw(a,X)
msw(b1(X), Y)
msw(b2(X), Z)</p>
      <p>Y=Z</p>
      <p>msw(a,X)
msw(b1(X), Y)</p>
      <p>Y ∈ {2, 3}
msw(b2(X), Z)</p>
      <p>Z ∈ {2, 3}, Z = Y
2 2
(a) Before Constraint Propagation (b) After Constraint Propagation
Our Approach. We identify two basic problems that contribute to the
difficulty of inference in PLPs. First is that the random variable dependencies are not
explicit in the program but may vary based on the program’s control and data
flow. The second is that evidence (and query) specifications may be complex
rendering it difficult to predict whether a variable’s valuation will be consistent with
the evidence (or lead to query’s success). We use constraint propagation both
to uncover the hidden dependencies and to predict consistency with evidence.
We explicitly construct symbolic derivations that abstract actual valuations of
random variables and use a graphical structure to represent the derivations. We
then provide inference algorithms, both approximate and exact, that compute
the probability of a (possibly conditional) query based on this graphical
structure.</p>
      <p>Summary of Contributions. This paper describes a novel technique that
addresses the problem of scalability of inference in PLPs.
1. The paper introduces a structure called an Ordered Symbolic Derivation
Diagram to represent succinctly the set of possible derivations for a PLP
query or evidence (Section 2).
2. The paper presents a likelihood-weighted sampling method based on OSDDs
that can be used for approximate inference (Section 3).
3. The paper also presents an exact inference algorithm that operates directly
on OSDDs. While this algorithm has relatively narrow applicability, it
provides a powerful way to infer over large problem sizes without enumerating
random variable valuations (Section 3).</p>
      <p>We present experimental results which show the effectiveness of OSDD-based
inference methods, as well as their cost (Section 4). Related work is discussed in
detail in Section 5. The paper concludes with a discussion on the other uses of
OSDDs for inference in PLPs.
2</p>
    </sec>
    <sec id="sec-2">
      <title>Symbolic Derivations and Diagrams</title>
      <p>In this paper, we use PRISM’s syntax and distribution semantics, but without
the independence and mutual exclusion requirements on the explanations of a
goal. Thus we consider PRISM programs with their intended model-theoretic
semantics, rather than that computed by the PRISM system.</p>
      <p>As stated in the Introduction, the dependencies between random variables
implicit in the control and data flow of a PLP, and the impossibility of completely
representing the set of all random variable valuations that are consistent with
evidence contribute to the difficulty of inference in PLPs. To address these two
problems, we devise an inference technique based on constraint propagation,
to uncover hidden dependencies and predict evidence consistency. In the first
step, we build derivations symbolically, instantiating random variables only when
necessary. A symbolic derivation is a sequence of msw goals and constraints,
as illustrated in Fig. 2(a) by the derivation for evidence “e” from example of
Fig. 1(a).</p>
      <p>
        In the second step, we propagate the constraints in a symbolic derivation,
resulting in possible restrictions on the domains of variables. For instance, in
the Bayesian Network (BN) example of Fig. 1(a), since the evidence demands
Y = Z, the domains of b1 and b2 get restricted to [
        <xref ref-type="bibr" rid="ref2 ref3">2,3</xref>
        ]. Such constraint
propagation is done using light-weight techniques such as node-consistency and
arc-consistency algorithms. We add inferred domain restrictions (if any) to the
derivation. We also place the constraints where their satisfaction can be
effectively tested. Fig. 2(b) shows the symbolic derivation for “e” in the BN example
after constraint propagation. The constraints denote a sufficient condition for
any concrete instance of the symbolic derivation to represent a successful
derivation. Symbolic derivations, parameterized by the consistency algorithms used in
their construction, can be readily formalized; see [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ]. Symbolic derivations can
be subsequently used in a number of ways, two of which are described below.
Generalization. For many standard statistical models (e.g. PGMs) our
technique will construct at most one symbolic derivation. In general, however, PLPs
may have more than one symbolic derivation, as illustrated by the Birthday
Collision example in Fig. 5. This example encodes the problem of determining
the (unconditional) probability that two persons in a population of a given size
share the same birthday. The query same birthday(3), which fixes a population
of size 3, has 6 symbolic derivations, 3 of which are shown in Fig. 3(a). In such
cases, we combine the set of symbolic derivations into a tree structure, called
the Ordered Symbolic Derivation Diagram (OSDD), illustrated in Fig. 3(b). An
OSDD is analogous to a Constraint Decision Diagram (CDD) [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]: each node
defines a variable, and the outgoing edges are guarded by constraints on that
variable. An OSDD is constructed based on a total order over variables, as in
an Ordered Binary Decision Diagram [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]. Each path in an OSDD is a symbolic
derivation. In fact, every symbolic derivation is a rudimentary OSDD (with
0branches removed).
3
      </p>
    </sec>
    <sec id="sec-3">
      <title>Inference Based on Symbolic Derivation Diagrams</title>
      <p>
        We illustrate the process of generating likelihood-weighted samples [
        <xref ref-type="bibr" rid="ref18 ref7">7,18</xref>
        ] for goal
“e” from its symbolic derivation. We start with likelihood weight of 1. When
msw(b(1),X1)
msw(b(2),X2)
      </p>
      <p>msw(b(3),X3)
msw(b(2), X2)</p>
      <p>X2=X1
msw(b(3), X3)</p>
      <p>X3=X2
msw(b(1), X1)</p>
      <p>X1=X3
2
2
2
1
msw(b(1),X1)
msw(b(2), X2)
X2 = X1 X26=X1</p>
      <p>X3 = X1
msw(b(3), X3)</p>
      <p>X3 6= X1 ∧</p>
      <p>X3 = X2</p>
      <p>X3 6= X1 ∧</p>
      <p>X36= X2
(a) Selected Symbolic Derivations
1 1
(b) Symbolic Derivation Diagram
0
visiting msw(a,X), we notice no domain restrictions on X, and hence bind X to a
random sample generated from a’s distribution. Assume the sample we drew is
X=1. We then visit msw(b1(1), Y) to sample Y. However, since Y has a domain
restriction Y ∈ {2, 3}, we generate a sample for Y such that Y ∈ {2, 3}. This
is done by picking from {2, 3} uniformly, and multiplying the likelihood weight
with the probability of the picked value. Assume we pick Y=2; then the current
likelihood is set to 0.3, the probability of 2 in b1(1)’s distribution. Finally,
we visit msw(b2(1),Z), whose two constraints restrict Z to {2}. Selecting Z=2,
we multiply the likelihood weight of the current derivation with 0.5. Thus we
generate a sample (X=1, Y=2, Z=2) consistent with evidence e with a likelihood
weight of 0.15.</p>
      <p>
        In summary, likelihood-weighted samples are drawn by (a) independently
sampling random variables whose valuations are unconstrained; (b) uniformly
sampling variables whose valuations have domain constraints; and (c) computing
the probability of the sample as the product of probabilities of values picked in
step (b). This procedure can be readily formalized; see [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ].
      </p>
      <p>
        Exact Inference. For certain class of programs and queries, symbolic
derivations can be directly used for exact inference. Fig. 4 shows the symbolic
derivation of evidence evidence(6) from the Palindrome example (Fig. 1(b)). Note
that only the constraints in the symbolic derivation determine whether a
concrete instance succeeds. Thus, if the distribution of flip is uniform, the three
constraints are each satisfied independently, resulting in 0.125 as the probability.
Such exact computation of probabilities is formalized in terms of measurability ;
a variable X with domain constraint η is said to be measurable if the size of X’s
domain (consistent with η) is independent of the valuation of other variables.
When a symbolic derivation diagram consists only of uniformly distributed
measurable variables, then the associated probability can be computed exactly. Such
exact computation is readily formalized as well; see [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ].
msw(flip, 6, X1) 1 % Two from a population of size N
      </p>
      <p>2 % share a birthday.
msw(flip, 5, X2) 3 same_birthday(N)
:</p>
      <p>4 person(N, P1),
msw(flip, 4, X3) 5 % P1’s birthday is D
msw(fXl4ip=, X33, X4) 768 pmPes1rws(\ob=n((PPN12,),,P2D)),,
msw(flip, 2, X5) 9 % and so is P2’s.</p>
      <p>X5 = X2 10 msw(b(P2), D).</p>
      <p>11
msw(flip, 1, X6) 12 person(N, P)
:</p>
      <p>X6 = X1 13 % bind P, backtracking through 1..N</p>
      <p>14 basics:for(P, 1, N).
2 15</p>
      <p>16 % Distribution parameters:
Fig. 4: Symbolic Derivation for ev- 17 set_sw(b(_), uniform(1,365)).
idence “evidence(6)” in
Palindrome Example Fig. 5: Birthday Collision PLP
4</p>
    </sec>
    <sec id="sec-4">
      <title>Experimental Evaluation</title>
      <p>We present the results of experiments using a prototype implementation of a
likelihood-weighted sampler based on symbolic derivations. The prototype uses
XSB Prolog to build symbolic derivations, propagate constraints and construct
OSDDs; and a few modules written in C for maintaining the sampler’s state and
dealing with random variable distributions. We used the following examples in
the experiments.</p>
      <p>– Grid BN is a Bayesian Network with Boolean random variables arranged
in a 6 × 6 grid (with dependencies going left-to-right and top-to down). This
simple structure was used to evaluate the effectiveness of our technique when
the evidence probability is extremely low (˜10−12).
– Ising Model is a well-known undirected graphical model. We used a 6 × 6
grid of Boolean random variables with factors on edges. The PRISM program
independently generates values of terminal nodes of all edges, and ties them
together by expressing equality constraints between shared variables of edges.
– Palindrome, which is shown in Fig. 1(b), with evidence limited to strings
of length 20, and query checking for a string with 4 “a”s.
– Birthday Collision, shown in Fig. 5 (page 6), with population size of 6,
i.e. query same birthday(6).</p>
      <p>The first three examples involved conditional queries with low-likelihood
evidence. The birthday collision example had an unconditional query. It should
be noted that only the first example, Grid BN, can be evaluated in the PRISM
system; the other examples have queries that violate PRISM’s mutual exclusion
and independence assumptions and hence cannot be directly evaluated in that
0.06
6x6 grid BN
6x6 ising model
lw-probability
lw-variance
exact answer
lw-probability
is-probability
lw-variance
is-variance
system. Our inference procedure, however, removes PRISM’s assumptions and
correctly evaluates the query probabilities for all the above examples.</p>
      <p>The results of the experiments are shown in Fig. 6. Each subfigure plots the
estimated probability and variance of the estimate(on log scale), for two
samplers: the LW method described in this paper, and a simple independent sampler
(with rejection sampling for conditional queries). Note that the LW sampler’s
results show significantly lower variance in all the examples. For the Grid BN and
Ising Model, the evidence probability was low enough that a rejection sampler
was unable to draw a consistent sample. The LW sampler, however, was able
to converge to a reasonable estimate of low variance in about 500,000 samples.
Both examples generated a single symbolic derivation. We directly sampled from
this instead of materializing a OSDD structure. For the Grid BN, node
consistency was sufficient to derive domain restrictions. For the Ising model, we found
that standard LW sampling (picking a restricted value uniformly and assigning
a likelihood weight) generated a number of samples with extremely low weights.
Instead the probabilites of the set of allowed values were normalized to create
a new proposal distribution. This resulted in generating samples with higher
likelihood weights.</p>
      <p>For the Palindrome example, we get a single symbolic derivation and the
LW sampler quickly converges to the actual probability, while the independent
sampler fails to converge even after a million samples. However, node- and
arcconsistency can discover no further domain restrictions; forward checking at
sampling time generated all the restrictions for LW sampler. The unusual
pattern of variance for independent sampler in the initial iterations is due to it
not being able to generate consistent samples and hence not having an estimate
for the answer probability. The birthday collision example produces a number
of symbolic derivations which were incorporated in an explicit OSDD. Domain
restrictions are discovered only via forward checking, and that too for only one
variable. The results show smaller difference between independent sampling and
LW sampling for this example, compared to the others. One interesting
observation from this example was that independent sampling using the OSDD
structure was significantly faster (up to 2×) than using the program directly.
This is because the program’s non-deterministic evaluation has been replaced
by a deterministic traversal through the OSDD.</p>
      <p>Overheads. For all the examples, the time to construct the symbolic
derivations, and propagate constraints was negligible (ranging from 4ms for Grid BN
to 7ms for Birthday Collision, with XSB 3.5.0 on a 2.5GHz Intel Core 2 Duo
machine). The overheads for sampling however were more pronounced. While an
independent sampler picks values from the given distributions, the
likelihoodweighting sampler needs to construct restricted domains to draw samples from.
Consequently, our LW sampler takes up to 4× per sample as an independent
sampler.</p>
      <p>Comparison with PITA and ProbLog. We evaluated the exact inference
procedures of PITA and ProbLog on the same examples. We used a timeout of 15
minutes for both systems. The exact inference algorithm of ProbLog using
sentential decision diagrams was able to handle Grid BN instances of size up to
9 × 9. However, ProbLog’s inference does not scale beyond small problem sizes
for the remaining three examples. In contrast, exact inference algorithm of PITA
scaled much better. PITA could successfully compute the conditional
probabilities for Grid BN (up to size 10 × 10), Ising model (up to 13 × 13) and Palindrome
with n = 18. For the Ising model example, PITA’s inference completes but with
numerical errors due to the low probability of evidence. Finally, PITA’s
inference completed for the Birthday example with population size 2, but ran out of
memory for larger population sizes.
5</p>
    </sec>
    <sec id="sec-5">
      <title>Related Work</title>
      <p>
        Probabilistic Constraint Logic Programming [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ] extends PLP with constraint
logic programming (CLP). It allows the specification of models with imprecise
probabilities. Whereas a world in PLP denotes a specific assignment of values to
random variables, a world in PCLP can define constraints on random variables,
rather than specific values. Lower and upper bounds are given on the
probability of a query by summing the probabilities of worlds where query follows and
worlds where query is possibly true respectively. While the way in which “proof
constraints” of a PCLP query are obtained is similar to the way in which
symbolic derivations are obtained (i.e., through constraint based evaluation), the
inference techniques employed are completely different with PCLP employing
satisfiability modulo theory (SMT) solvers.
      </p>
      <p>
        cProbLog extends ProbLog with first-order constraints [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]. This gives the
ability to express complex evidence in a succinct form. The semantics and
inference are based on ProbLog. In contrast, our work makes the underlying
constraints in a query explicit and uses the OSDDs to drive inference.
      </p>
      <p>
        CLP(BN ) [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ] extends logic programming with constraints which encode
conditional probability tables. A CLP(BN ) program defines a joint distribution on
the ground skolem terms. Operationally, queries are answered by constructing
the relevant BN and performing BN inference.
      </p>
      <p>
        There has been a significant interest in the area of lifted inference as
exemplified by the work of [
        <xref ref-type="bibr" rid="ref1 ref12 ref15">15,1,12</xref>
        ]. The main idea of lifted inference is to treat
indistinguishable instances random variables as one unit and perform inference
at the population level. In contrast, exact inference using OSDDs treats
indistinguishable values of random variables as one unit, thereby computing probabilities
without grounding the random variables. Consequently, the method in this
paper is orthogonal to traditional lifted inference and can be used when inversion
and counting elimination are inapplicable (e.g. Birthday Collision example in
Fig. 5).
      </p>
      <p>
        The use of sampling methods for inference in PLPs has been widespread.
The evidence has generally been handled by heuristics to reduce the number
of rejected samples [
        <xref ref-type="bibr" rid="ref13 ref5">5,13</xref>
        ]. However we provide a systematic approach to deal
with constraints imposed by evidence. When our constraint processing algorithm
is powerful enough, the sampler can generate consistent samples without any
rejections.
      </p>
      <p>
        Adaptive sequential rejection sampling [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ] is an algorithm that adapts its
proposal distributions to avoid generating samples which are likely to be rejected.
However, it requires a decomposition of the target distribution, which may not
be available in PLPs. Further, in our work the distribution from which samples
are generated is not adapted. It is an interesting direction of research to combine
adaptivity with the proposed sampling algorithm.
6
      </p>
    </sec>
    <sec id="sec-6">
      <title>Discussion</title>
      <p>We presented a technique for inference in PLPs based on constructing a symbolic
structure called OSDD using constraint propagation. The technique effectively
performs inference without enumeration for a number of programs. The
technique also uncovers the dependencies between random variables, which can then
be exploited by more powerful inference techniques (e.g. Gibbs-sampling-based
MCMC) that were inapplicable otherwise. However, for programs where
symbolic derivations match one-to-one with concrete derivations, the technique offers
no benefit. An important topic of future work is to statically analyze a program
to determine when (and when not to) use this technique. OSSDs are constructed
by exploiting the presence of explicit random variables due to msw’s in PRISM.
Application to other (equally expressive) PLP languages remains to be explored.
Finally, OSDDs introduce a style of inference where indistinguishable valuations
of random variables are treated together; combining this with lifted inference
that groups indistinguishable random variables together will improve the
scalability of inference in PLPs.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Rodrigo De Salvo Braz</surname>
            , Eyal Amir, and
            <given-names>Dan</given-names>
          </string-name>
          <string-name>
            <surname>Roth</surname>
          </string-name>
          .
          <article-title>Lifted first-order probabilistic inference</article-title>
          .
          <source>In Proceedings of the Nineteenth International Joint Conference on Artificial Intelligence</source>
          , pages
          <fpage>1319</fpage>
          -
          <lpage>1325</lpage>
          ,
          <year>2005</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Randal</surname>
            <given-names>E</given-names>
          </string-name>
          <string-name>
            <surname>Bryant</surname>
          </string-name>
          .
          <article-title>Symbolic boolean manipulation with ordered binary-decision diagrams</article-title>
          .
          <source>ACM Computing Surveys (CSUR)</source>
          ,
          <volume>24</volume>
          (
          <issue>3</issue>
          ):
          <fpage>293</fpage>
          -
          <lpage>318</lpage>
          ,
          <year>1992</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3. Kenil CK Cheng and Roland HC Yap.
          <article-title>Constrained decision diagrams</article-title>
          .
          <source>In Proceedings of the National Conference on Artificial Intelligence</source>
          , volume
          <volume>20</volume>
          , page 366. Menlo Park, CA; Cambridge, MA; London; AAAI Press; MIT Press;
          <year>1999</year>
          ,
          <year>2005</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <given-names>V</given-names>
            <surname>´ıtor Santos</surname>
          </string-name>
          <string-name>
            <surname>Costa</surname>
          </string-name>
          , David Page,
          <string-name>
            <given-names>Maleeha</given-names>
            <surname>Qazi</surname>
          </string-name>
          , and
          <article-title>James Cussens. CLP (BN): Constraint logic programming for probabilistic knowledge</article-title>
          .
          <source>In Proceedings of the Nineteenth conference on Uncertainty in Artificial Intelligence</source>
          , pages
          <fpage>517</fpage>
          -
          <lpage>524</lpage>
          . Morgan Kaufmann Publishers Inc.,
          <year>2002</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <given-names>James</given-names>
            <surname>Cussens</surname>
          </string-name>
          .
          <article-title>Stochastic logic programs: Sampling, inference and applications</article-title>
          .
          <source>In Proceedings of the Sixteenth conference on Uncertainty in artificial intelligence</source>
          , pages
          <fpage>115</fpage>
          -
          <lpage>122</lpage>
          . Morgan Kaufmann Publishers Inc.,
          <year>2000</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <given-names>Daan</given-names>
            <surname>Fierens</surname>
          </string-name>
          , Guy Van den Broeck, Maurice Bruynooghe, and Luc De Raedt.
          <article-title>Constraints for probabilistic logic programming</article-title>
          .
          <source>In Proceedings of the NIPS Probabilistic Programming Workshop</source>
          , pages
          <fpage>1</fpage>
          -
          <lpage>4</lpage>
          ,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Robert</surname>
            <given-names>M.</given-names>
          </string-name>
          <string-name>
            <surname>Fung</surname>
          </string-name>
          and
          <string-name>
            <surname>Kuo-Chu Chang</surname>
          </string-name>
          .
          <article-title>Weighing and integrating evidence for stochastic simulation in Bayesian Networks</article-title>
          .
          <source>In Proceedings of the Fifth Annual Conference on Uncertainty in Artificial Intelligence, UAI '89</source>
          , pages
          <fpage>209</fpage>
          -
          <lpage>220</lpage>
          , Amsterdam, The Netherlands,
          <year>1990</year>
          . North-Holland Publishing Co.
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <given-names>Stuart</given-names>
            <surname>Geman</surname>
          </string-name>
          and
          <string-name>
            <given-names>Donald</given-names>
            <surname>Geman</surname>
          </string-name>
          .
          <article-title>Stochastic relaxation, Gibbs distributions, and the Bayesian restoration of images</article-title>
          .
          <source>IEEE Transactions on Pattern Analysis and Machine Intelligence</source>
          , (
          <volume>6</volume>
          ):
          <fpage>721</fpage>
          -
          <lpage>741</lpage>
          ,
          <year>1984</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <given-names>W Keith</given-names>
            <surname>Hastings</surname>
          </string-name>
          .
          <article-title>Monte Carlo sampling methods using Markov chains and their applications</article-title>
          .
          <source>Biometrika</source>
          ,
          <volume>57</volume>
          (
          <issue>1</issue>
          ):
          <fpage>97</fpage>
          -
          <lpage>109</lpage>
          ,
          <year>1970</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Vikash</surname>
            <given-names>K Mansinghka</given-names>
          </string-name>
          , Daniel M Roy,
          <string-name>
            <given-names>Eric</given-names>
            <surname>Jonas</surname>
          </string-name>
          , and Joshua B Tenenbaum.
          <article-title>Exact and approximate sampling by systematic stochastic search</article-title>
          .
          <source>In Proceedings of the Twelfth International Conference on Artificial Intelligence and Statistics</source>
          , pages
          <fpage>400</fpage>
          -
          <lpage>407</lpage>
          ,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <surname>Steffen</surname>
            <given-names>Michels</given-names>
          </string-name>
          , Arjen Hommersom,
          <string-name>
            <surname>Peter JF</surname>
          </string-name>
          Lucas,
          <string-name>
            <surname>Marina Velikova</surname>
            , and
            <given-names>Pieter</given-names>
          </string-name>
          <string-name>
            <surname>Koopman</surname>
          </string-name>
          .
          <article-title>Inference for a new probabilistic constraint logic</article-title>
          .
          <source>In Proceedings of the Twenty-Third international joint conference on Artificial Intelligence</source>
          , pages
          <fpage>2540</fpage>
          -
          <lpage>2546</lpage>
          . AAAI Press,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>Brian</surname>
            <given-names>Milch</given-names>
          </string-name>
          , Luke S Zettlemoyer, Kristian Kersting,
          <string-name>
            <given-names>Michael</given-names>
            <surname>Haimes</surname>
          </string-name>
          , and Leslie Pack Kaelbling.
          <article-title>Lifted probabilistic inference with counting formulas</article-title>
          .
          <source>In Proceedings of the Twenty-Third AAAI Conference on Artificial Intelligence</source>
          , pages
          <fpage>1062</fpage>
          -
          <lpage>1068</lpage>
          ,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>Bogdan</surname>
            <given-names>Moldovan</given-names>
          </string-name>
          , Ingo Thon, Jesse Davis, and Luc De Raedt.
          <article-title>MCMC estimation of conditional probabilities in probabilistic programming languages</article-title>
          .
          <source>In Symbolic and Quantitative Approaches to Reasoning with Uncertainty</source>
          , pages
          <fpage>436</fpage>
          -
          <lpage>448</lpage>
          . Springer,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <given-names>Arun</given-names>
            <surname>Nampally</surname>
          </string-name>
          and
          <string-name>
            <given-names>C. R.</given-names>
            <surname>Ramakrishnan</surname>
          </string-name>
          .
          <article-title>Constraint-based inference in probabilistic logic programs</article-title>
          .
          <source>Technical report</source>
          , Computer Science Department, Stony Brook University, http://www.cs.stonybrook.edu/~cram/Papers/ NR_LW15/lw15.pdf,
          <year>2015</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15.
          <string-name>
            <given-names>David</given-names>
            <surname>Poole</surname>
          </string-name>
          .
          <article-title>First-order probabilistic inference</article-title>
          .
          <source>In Proceedings of the Eighteenth International Joint Conference on Artificial Intelligence</source>
          , volume
          <volume>3</volume>
          , pages
          <fpage>985</fpage>
          -
          <lpage>991</lpage>
          ,
          <year>2003</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16.
          <string-name>
            <given-names>Taisuke</given-names>
            <surname>Sato</surname>
          </string-name>
          and
          <string-name>
            <given-names>Yoshitaka</given-names>
            <surname>Kameya</surname>
          </string-name>
          .
          <article-title>PRISM: a language for symbolic-statistical modeling</article-title>
          .
          <source>In Proceedings of the Fifteenth International Joint Conference on Artificial Intelligence</source>
          , volume
          <volume>97</volume>
          , pages
          <fpage>1330</fpage>
          -
          <lpage>1339</lpage>
          ,
          <year>1997</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          17.
          <string-name>
            <given-names>Taisuke</given-names>
            <surname>Sato</surname>
          </string-name>
          and
          <string-name>
            <given-names>Yoshitaka</given-names>
            <surname>Kameya</surname>
          </string-name>
          .
          <article-title>Parameter learning of logic programs for symbolic-statistical modeling</article-title>
          .
          <source>Journal of Artificial Intelligence Research</source>
          , pages
          <fpage>391</fpage>
          -
          <lpage>454</lpage>
          ,
          <year>2001</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          18.
          <string-name>
            <surname>Ross</surname>
            <given-names>D.</given-names>
          </string-name>
          <string-name>
            <surname>Shachter</surname>
            and
            <given-names>Mark A.</given-names>
          </string-name>
          <string-name>
            <surname>Peot</surname>
          </string-name>
          .
          <article-title>Simulation approaches to general probabilistic inference on belief networks</article-title>
          .
          <source>In Proceedings of the Fifth Annual Conference on Uncertainty in Artificial Intelligence, UAI '89</source>
          , pages
          <fpage>221</fpage>
          -
          <lpage>234</lpage>
          , Amsterdam, The Netherlands,
          <year>1990</year>
          . North-Holland Publishing Co.
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>