New Liftable Classes for First-Order Probabilistic Inference

Statistical relational models provide compact encodings of probabilistic dependencies in relational domains, but result in highly intractable graphical models. The goal of lifted inference is to carry out probabilistic inference without needing to re…

Authors: Seyed Mehran Kazemi, Angelika Kimmig, Guy Van den Broeck

New Liftable Classes for First-Order Probabilistic Inference
New Liftable Classes f or First-Order Pr obabilistic Inference Seyed Mehran Kazemi The Univ ersity of British Columbia smkazemi@cs.ubc.ca Angelika Kimmig KU Leuven angelika.kimmig@cs.kuleuven.be Guy V an den Broeck Univ ersity of California, Los Angeles guyvdb@cs.ucla.edu David P oole The Univ ersity of British Columbia poole@cs.ubc.ca Abstract Statistical relational models provide compact encodings of probabilistic depen- dencies in relational domains, b ut result in highly intractable graphical models. The goal of lifted inference is to carry out probabilistic inference without need- ing to reason about each indi vidual separately , by instead treating exchangeable, undistinguished objects as a whole. In this paper , we study the domain r ecur- sion inference rule, which, despite its central role in early theoretical results on domain-lifted inference, has later been believed redundant. W e show that this rule is more powerful than expected, and in fact significantly extends the range of models for which lifted inference runs in time polynomial in the number of indi viduals in the domain. This includes an open problem called S4, the symmetric transitivity model, and a first-order logic encoding of the birthday paradox. W e further identify new classes S 2 F O 2 and S 2 RU of domain-liftable theories, which respectiv ely subsume F O 2 and r ecursively unary theories , the largest classes of domain-liftable theories kno wn so far , and sho w that using domain recursion can achiev e exponential speedup ev en in theories that cannot fully be lifted with the existing set of inference rules. 1 Introduction Statistical relational learning (SRL) [ 8 ] aims at unifying logic and probability for reasoning and learning in noisy domains, described in terms of individuals (or objects), and the relationships between them. Statistical relational models [ 10 ], or template-based models [ 18 ] extend Bayesian and Markov netw orks with individuals and relations, and compactly describe probabilistic dependencies among them. These models encode exchangeability among the objects: individuals that we ha ve the same information about are treated similarly . A ke y challenge with SRL models is the fact that they represent highly intractable, densely connected graphical models, typically with millions of random v ariables. The aim of lifted infer ence [ 23 ] is to carry out probabilistic inference without needing to reason about each indi vidual separately , by instead treating exchangeable, undistinguished objects as a whole. Over the past decade, a large number of lifted inference rules ha ve been proposed [ 5 , 9 , 11 , 14 , 20 , 22 , 28 , 30 ], often providing e xponential speedups for specific SRL models. These basic exact inference techniques have applications in (tractable) lifted learning [ 32 ], where the main task is to efficiently compute partition functions , and in variational and o ver -symmetric approximations [ 29 , 33 ]. Moreover , the y provided the foundation for a rich literature on approximate lifted inference and learning [1, 4, 13, 17, 19, 21, 25, 34]. 30th Conference on Neural Information Processing Systems (NIPS 2016), Barcelona, Spain. The theoretical study of lifted inference began with the complexity notion of domain-lifted infer- ence [ 31 ] (a concept similar to data complexity in databases). Inference is domain-lifted when it runs in time polynomial in the number of individuals in the domain. By identifying liftable classes of models, guaranteeing domain-lifted inference, one can characterize the theoretical power of the v ari- ous inference rules. For example, the class F O 2 , encoding dependencies among pairs of individuals (i.e., two logical v ariables), is liftable [ 30 ]. Kazemi and Poole [15] introduce a liftable class called r ecursively unary , capturing hierarchical simplification rules. Beame et al. [3] identify liftable classes of probabilistic database queries. Such results elev ate the specific inference rules and examples to a general principle, and bring lifted inference in line with complexity and database theory [3]. This paper studies the domain r ecursion inference rule, which applies the principle of induction on the domain size. The rule makes one individual A in the domain explicit. Afterw ards, the other inference rules simplify the SRL model up to the point where it becomes identical to the original model, except the domain size has decreased. Domain recursion was introduced by V an den Broeck [31] and was central to the proof that F O 2 is liftable. Howe ver , later work sho wed that simpler rules suffice to capture F O 2 [27], and the domain recursion rule was for gotten. W e sho w that domain recursion is more po werful than expected, and can lift models that are otherwise not amenable to domain-lifted inference. This includes an open problem by Beame et al. [3] , asking for an inference rule for a logical sentence called S4. It also includes the symmetric transitivity model, and an encoding of the birthday paradox in first-order logic. There pre viously did not exist any efficient algorithm to compute the partition function of these SRL models, and we obtain exponential speedups. Next, we prove that domain recursion supports its own large classes of liftable models S 2 F O 2 subsuming F O 2 , and S 2 RU subsuming recursi ve unary . All existing exact lifted inference algorithms (e.g., [ 11 , 15 , 28 ]) resort to grounding the theories in S 2 F O 2 or S 2 RU that are not in F O 2 or recursiv ely unary , and require time e xponential in the domain size. These results will be established using the weighted first-order model counting (WFOMC) formulation of SRL models [ 28 ]. WFOMC is close to classical first-order logic, and it can encode many other SRL models, including Marko v logic [ 24 ], parfactor graphs [ 23 ], some probabilistic programs [ 7 ], relational Bayesian netw orks [ 12 ], and probabilistic databases [ 26 ]. It is a basic specification language that simplifies the dev elopment of lifted inference algorithms [3, 11, 28]. 2 Background and Notation A population is a set of constants denoting indi viduals (or objects). A logical v ariable (L V) is typed with a population. W e represent L Vs with lo wer-case letters, constants with upper -case letters, the population associated with a L V x with ∆ x , and its cardinality with | ∆ x | .That is, a population ∆ x is a set of constants { X 1 , . . . , X n } , and we use x ∈ ∆ x as a shorthand for instantiating x with one of the X i . A parametrized random variable (PR V) is of the form F ( t 1 , . . . , t k ) where F is a predicate symbol and each t i is a L V or a constant. A unary PR V contains exactly one L V and a binary PR V contains exactly two L Vs. A grounding of a PR V is obtained by replacing each of its L Vs x by one of the individuals in ∆ x . A literal is a PR V or its negation. A formula ϕ is a literal, a disjunction ϕ 1 ∨ ϕ 2 of formulas, a conjunction ϕ 1 ∧ ϕ 2 of formulas, or a quantified formula ∀ x ∈ ∆ x : ϕ ( x ) or ∃ x ∈ ∆ x : ϕ ( x ) where x appears in ϕ ( x ) . A sentence is a formula with all L Vs quantified. A clause is a formula not using conjunction. A theory is a set of sentences. A theory is clausal if all its sentences are clauses. An interpr etation is an assignment of values to all ground PR Vs in a theory . An interpretation I is a model of a theory T , I | = T , if giv en its value assignments, all sentences in T ev aluate to T rue . Let F ( T ) be the set of predicate symbols in theory T , and Φ : F ( T ) → R and Φ : F ( T ) → R be two functions that map each predicate F to weights for ground PR Vs F ( C 1 , . . . , C k ) assigned T rue and F alse respectiv ely . For an interpretation I of T , let ψ T r ue be the set of ground PR Vs assigned T rue , and ψ F alse the ones assigned F alse . The weight of I is giv en by ω ( I ) = Q F ( C 1 ,...,C k ) ∈ ψ T rue Φ( F ) · Q F ( C 1 ,...,C k ) ∈ ψ F alse Φ( F ) . Given a theory T and two functions Φ and Φ , the weighted first-order model count (WFOMC) of the theory giv en Φ and Φ is: WFOMC( T | Φ , Φ) = P I | = T ω ( I ) . In this paper , we assume that all theories are clausal and do not contain e xistential quantifiers. The latter can be achiev ed using the skolemization procedure of V an den Broeck et al. [30] , which 2 transforms a theory T with existential quantifiers into a theory T 0 without existential quantifiers that has the same weighted model count, in time polynomial in the size of T . That is, our theories are sets of finite-domain, function-free first-order clauses whose L Vs are all univ ersally quantified (and typed with a population). Furthermore, when a clause mentions two L Vs x 1 and x 2 with the same population ∆ x , or a L V x with population ∆ x and a constant C ∈ ∆ x , we assume they refer to different indi viduals. 1 Example 1. Consider the theory ∀ x ∈ ∆ x : ¬ Smok es ( x ) ∨ Cancer ( x ) having only one clause and assume ∆ x = { A, B } . The assignment Smok es ( A ) = T rue , Smokes ( B ) = F alse , Cancer ( A ) = T rue , Cancer ( B ) = T rue is a model. Assuming Φ( Smok es ) = 0 . 2 , Φ( Cancer ) = 0 . 8 , Φ( Smok es ) = 0 . 5 and Φ( Cancer ) = 1 . 2 , the weight of this model is 0 . 2 · 0 . 5 · 0 . 8 · 0 . 8 . This theory has eight other models. The WFOMC can be calculated by summing the weights of all nine models. 2.1 Con verting Inference f or SRL Models into WFOMC For man y SRL models, (lifted) inference can be con verted into a WFOMC problem. As an example, consider a Marko v logic network (MLN) [ 24 ] with weighted formulae ( w 1 : F 1 , . . . , w k : F k ) . For e very weighted formula w i : F i of this MLN, let theory T hav e a sentence Aux i ⇔ F i such that Aux i is a predicate having all L Vs appearing in F i . Assuming Φ( Aux i ) = exp( w i ) , and Φ and Φ are 1 for the other predicates, the partition function of the MLN is equal to WF OMC( T ) . 2.2 Calculating the WFOMC of a Theory W e now describe a set of rules R that can be applied to a theory to find its WFOMC efficiently; for more details, readers are directed to [ 28 ], [ 22 ] or [ 11 ]. W e use the following theory T with two clauses and four PR Vs ( S ( x, m ) , R ( x, m ) , T ( x ) and Q ( x ) ) as our running e xample: ∀ x ∈ ∆ x , m ∈ ∆ m : Q ( x ) ∨ R ( x, m ) ∨ S ( x, m ) ∀ x ∈ ∆ x , m ∈ ∆ m : S ( x, m ) ∨ T ( x ) Lifted Decomposition Assume we ground x in T . Then the clauses mentioning an arbitrary X i ∈ ∆ x are ∀ m ∈ ∆ m : Q ( X i ) ∨ R ( X i , m ) ∨ S ( X i , m ) and ∀ m ∈ ∆ m : S ( X i , m ) ∨ T ( X i ) . These clauses are totally disconnected from clauses mentioning X j ∈ ∆ x ( j 6 = i ), and are the same up to renaming X i to X j . Gi ven the exchangeability of the individuals, we can calculate the WFOMC of only the clauses mentioning X i and raise the result to the po wer of the number of connected components ( | ∆ x | ). Assuming T 1 is the theory that results from substituting x with X i , WF OMC( T ) = WFOMC( T 1 ) | ∆ x | . Case-Analysis The WFOMC of T 1 can be computed by a case-analysis over dif ferent assignments of values to a ground PR V , e.g., Q ( X i ) . Let T 2 and T 3 represent T 1 ∧ Q ( X i ) and T 1 ∧ ¬ Q ( X i ) respectiv ely . Then, WF OMC( T 1 ) = WFOMC( T 2 ) + WF OMC( T 3 ) . W e follow the process for T 3 (the process for T 2 will be similar) having clauses ¬ Q ( X i ) , ∀ m ∈ ∆ m : Q ( X i ) ∨ R ( X i , m ) ∨ S ( X i , m ) and ∀ m ∈ ∆ m : S ( X i , m ) ∨ T ( X i ) . Unit Propagation When a clause in the theory has only one literal, we can propagate the effect of this clause through the theory and remove it 2 . In T 3 , ¬ Q ( X i ) is a unit clause. Having this unit clause, we can simplify the second clause and get the theory T 4 having clauses ∀ m ∈ ∆ m : R ( X i , m ) ∨ S ( X i , m ) and ∀ m ∈ ∆ m : S ( X i , m ) ∨ T ( X i ) . Lifted Case-Analysis Case-analysis can be done for PR Vs having one logical v ariable in a lifted way . Consider the S ( X i , m ) in T 4 . Due to the exchangeability of the individuals, we do not hav e to consider all possible assignments to all ground PR Vs of S ( X i , m ) , but only the ones where the number of individuals M ∈ ∆ m for which S ( X i , M ) is T rue (or equiv alently F alse ) is different. This means considering | ∆ m | + 1 cases suf fice, corresponding to S ( X i , M ) being T rue for exactly j = 0 , . . . , | ∆ m | individuals. Note that we must multiply by  | ∆ m | j  to account for the number of ways one can select j out of | ∆ m | individuals. Let T 4 j represent T 4 with two more clauses: 1 Equiv alently , we can disjoin x 1 6 = x 2 or x 6 = C to the clause. 2 Note that unit propagation may remove clauses and random v ariables from the theory . T o account for them, smoothing multiplies the WFOMC by 2 # rv , where # r v represents the number of removed v ariables. 3 ∀ m ∈ ∆ m T : S ( X i , m ) and ∀ m ∈ ∆ m F : ¬ S ( X i , m ) , where ∆ m T represents the j individuals in ∆ m for which S ( X i , M ) is T rue , and ∆ m F represents the other | ∆ m | − j individuals. Then WF OMC( T 4 ) = P ∆ m j =0  ∆ m j  WF OMC( T 4 j ) . Shattering In T 4 j , the individuals in ∆ m are no longer exchangeable: we know dif ferent things about those in ∆ m T and those in ∆ m F . W e need to shatter ev ery clause having indi viduals coming from ∆ m to make the theory exchangeable. T o do so, the clause ∀ m ∈ ∆ m : R ( X i , m ) ∨ S ( X i , m ) in T 4 j must be shattered to ∀ m ∈ ∆ m T : R ( X i , m ) ∨ S ( X i , m ) and ∀ m ∈ ∆ m F : R ( X i , m ) ∨ S ( X i , m ) (and similarly for the other formulae). The shattered theory T 5 j after unit propagation will have clauses ∀ m ∈ ∆ m F : R ( X i , m ) and ∀ m ∈ ∆ m F : T ( X i ) . Decomposition, Caching, and Grounding In T 5 j , the two clauses ha ve dif ferent PR Vs, i.e., the y are disconnected. In such cases, we apply decomposition, i.e., find the WFOMC of each connected component separately and return the product. The WFOMC of the theory can be found by continuing to apply the abov e rules. In all the abov e steps, after finding the WFOMC of each (sub-)theory , we store the results in a cache so we can reuse them if the same WFOMC is required again. By following these steps, one can find the WFOMC of many theories in polynomial time. Howe ver , if we reach a point where none of the abov e rules are applicable, we ground one of the populations which makes the process exponential in the number of indi viduals. 2.3 Domain-Liftability Definition 1. A theory is domain-liftable [ 31 ] if calculating its WFOMC is polynomial in | ∆ x 1 | , | ∆ x 2 | , . . . , | ∆ x k | where x 1 , x 2 , . . . , x k represent the L Vs in the theory . A class C of the- ories is domain-liftable if ∀ T ∈ C , T is domain-liftable. So far , two classes of domain-liftable theories hav e been recognized: F O 2 [ 30 , 31 ] and r ecursively unary [15, 22]. Definition 2. A theory is in FO 2 if all its clauses hav e up to two L Vs. Definition 3. Let T be a theory . T is r ecursively unary (R U) if for ev ery theory T 0 resulting from applying rules in R except lifted case-analysis to T until no more rules apply , there e xists some unary PR V in T 0 and a generic case of lifted case-analysis on this unary PR V is R U . Definition 4. Let C be a domain-liftable class of theories. W e define C to be linear if for any gi ven theory T , determining whether T ∈ C (i.e. membership checking) can be done in time linear in the size of T , and to be domain size independent if determining whether T ∈ C is independent of the size of the domains in T . Note that a linear class is domain size independent. Giv en the above definitions, F O 2 is linear . Membership checking can be done for it by a single pass through the theory , counting the number of L Vs of each sentence. RU is not linear as its membership checking may be e xponential in the size of theory , but it is domain size independent as none of the operations it applies to the input theory depend on the domain sizes. F O 2 offers f aster membership checking than RU , but as we will show later, RU subsumes F O 2 . This gives rise to a trade-off between fast membership checking and modelling po wer for , e.g., (lifted) learning purposes. 3 The Domain Recursion Rule V an den Broeck [31] considered another rule called domain r ecursion in the set of rules for calculating the WFOMC of a theory . The intuition behind domain recursion is that it modifies a domain ∆ x by making one element explicit: ∆ x = ∆ x 0 ∪ { A } with A 6∈ ∆ x 0 . Then, by applying standard rules in R on this modified theory , the problem is reduced to a WFOMC problem on the original theory , but on a smaller domain ∆ x 0 . This lets us compute WFOMC using dynamic programming. W e refer to R extended with the domain recursion rule as R D . Example 2. Suppose we have a theory whose only clause is ∀ x, y ∈ ∆ p : ¬ Friend ( x, y ) ∨ F riend ( y , x ) , stating if x is friends with y , y is also friends with x . One way to calculate the WFOMC of this theory is by grounding only one individual in ∆ p and then using R . Let A be an individual in ∆ p and let ∆ p 0 = ∆ p − { A } . W e can (using domain recursion) rewrite the theory 4 as: ∀ x ∈ ∆ p 0 : ¬ F riend ( x, A ) ∨ Friend ( A, x ) , ∀ y ∈ ∆ p 0 : ¬ F riend ( A, y ) ∨ F riend ( y , A ) , and ∀ x, y ∈ ∆ p 0 : ¬ F riend ( x, y ) ∨ Friend ( y , x ) . Lifted case-analysis on F riend ( p 0 , A ) and F riend ( A, p 0 ) , shattering and unit propagation giv e ∀ x, y ∈ ∆ p 0 : ¬ Friend ( x, y ) ∨ Friend ( y, x ) . This theory is equiv alent to our initial theory , with the only difference being that the population of people has decreased by one. By keeping a cache of the values of each sub-theory , one can verify that this process finds the WFOMC of the abov e theory in polynomial-time. Note that the theory in Example 2 is in F O 2 and as proved in [ 27 ], its WFOMC can be computed without using the domain recursion rule 3 . This proof has caused the domain recursion rule to be forgotten, or e ven unkno wn in lifted inference community . In the next section, we re viv e this rule and identify a class of theories that are only domain-liftable when using the domain recursion rule. 4 Domain Recursion Makes Mor e Theories Domain-Liftable S4 Clause: Beame et al. [3] identified a clause (S4) with four binary PR Vs having the same predicate and prov ed that ev en though the rules R in Section 2.2 cannot calculate the WFOMC of that clause, there is a polynomial-time algorithm for finding its WFOMC. They concluded that this set of rules R for finding the WFOMC of theories does not suf fice, asking for new rules to compute their theory . W e prove that adding domain recursion to the set achie ves this goal. Proposition 1. The theory consisting of the S4 clause ∀ x 1 , x 2 ∈ ∆ x , y 1 , y 2 ∈ ∆ y : S ( x 1 , y 1 ) ∨ ¬ S ( x 2 , y 1 ) ∨ S ( x 2 , y 2 ) ∨ ¬ S ( x 1 , y 2 ) is domain-liftable using R D . Symmetric T ransitivity: Domain-liftable calculation of WFOMC for the transitivity formula is a long-lasting open problem. Symmetric-transitivity is easier as the number of its models corresponds to the Bell number , b ut solving it using general-purpose rules has been an open problem. Consider clauses ∀ x, y , z ∈ ∆ p : ¬ F ( x, y ) ∨ ¬ F ( y , z ) ∨ F ( x, z ) and ∀ x, y ∈ ∆ p : ¬ F ( x, y ) ∨ F ( y , x ) defining a symmetric-transitivity relation. For example, ∆ p may indicate the population of people and F may indicate friendship. Proposition 2. The symmetric-transitivity theory is domain-liftable using R D . Birthday Paradox: The birthday paradox problem [ 2 ] concerns finding the probability that in a set of n randomly chosen people, a pair of them have the same birthday . A first-order encoding of this problem requires WFOMC for a theory with clauses ∀ p ∈ ∆ p , ∃ d ∈ ∆ d : Born ( p, d ) , ∀ p ∈ ∆ p , d 1 , d 2 ∈ ∆ d : ¬ Bo rn ( p, d 1 ) ∨ ¬ Born ( p, d 2 ) , and ∀ p 1 , p 2 ∈ ∆ p , d ∈ ∆ d : ¬ Bo rn ( p 1 , d ) ∨ ¬ Bo rn ( p 2 , d ) , where ∆ p and ∆ d represent the population of people and days. The first two clauses impose the condition that e very person is born in exactly one day , and the third clause imposes the "no two people are born in the same day" query . Proposition 3. The birthday-paradox theory is domain-liftable using R D . 5 S 2 F O 2 and S 2 R U : New Domain-Liftable Classes Definition 5. Let α ( S ) represent a clausal theory using a single binary predicate S such that each clause has exactly two different literals of S , let α = α ( S 1 ) ∧ α ( S 2 ) ∧ · · · ∧ α ( S n ) where S i s are different binary predicates, and let β represent a theory where all clauses c ∈ β contain at most one S i literal, and the clauses c ∈ β that contain an S i literal contain no other literals with more than one L V . Then, S 2 F O 2 and S 2 R U are the classes of theories of the form α ∧ β where β ∈ FO 2 and β ∈ RU respectiv ely . Theorem 1. S 2 F O 2 and S 2 R U ar e domain-liftable using R D . It can be easily verified that S 2 F O 2 is a linear and S 2 RU is a domain size independent class. Example 3. Suppose we have a set ∆ j of jobs and a set ∆ v of volunteers. Every volunteer must be assigned to at most one job, and e very job requires no more than one person. If the job in volv es working with gas, the assigned volunteer must be a non-smoker . And we know that smok ers are most probably friends with each other . Then we will have the follo wing first-order theory: 3 This can be done by realizing that the theory is disconnected in the grounding for ev ery pair ( A, B ) of individuals and applying the lifted case-analysis. 5 0.0 01 0.0 1 0.1 1 10 10 0 10 00 1 10 10 0 Ti m e in se c o n d s Pop u l ation si ze WFO MC - v 3 .0 Dom ain R e curs ion 0.0 01 0.0 1 0.1 1 10 10 0 10 00 1 10 10 0 Ti m e in s e c o n d s Pop u l ation si ze WFO MC- v 3 .0 Dom ain R e cu rs ion 0.0 01 0.0 1 0.1 1 10 10 0 10 00 3 30 30 0 30 00 Ti m e in se c o n d s Pop u l ation si ze WFO MC- v 3 .0 Dom ain R e cu rs ion ( a) ( b ) ( c ) Figure 1: Run-times for calculating the WFOMC of (a) the theory in Example 3, (b) the S4 clause, and (c) the symmetric-transiti vity , using the WFOMC-v3.0 software (which only uses R ) and comparing it to the case where we use the domain recursion rule, referred to as Domain Recursion in the diagrams. ∀ v 1 , v 2 ∈ ∆ v , j ∈ ∆ j : ¬ Assigned ( v 1 , j ) ∨ ¬ Assigned ( v 2 , j ) ∀ v ∈ ∆ v , j 1 , j 2 ∈ ∆ j : ¬ Assigned ( v , j 1 ) ∨ ¬ Assigned ( v , j 2 ) ∀ v ∈ ∆ v , j ∈ ∆ j : InvolvesGas ( j ) ∧ Assigned ( v , j ) ⇒ ¬ Smokes ( v ) ∀ v 1 , v 2 ∈ ∆ v : Aux ( v 1 , v 2 ) ⇔ ( Smok es ( v 1 ) ∧ Friends ( v 1 , v 2 ) ⇒ Smok es ( v 2 )) Aux ( v 1 , v 2 ) is added to capture the probability assigned to the last rule. This theory is not in F O 2 and not in RU and is not domain-liftable using R . Ho wev er , the first two clauses are instances of αAssig ned in Def. 5, the third and fourth are in F O 2 (and also in RU ), and the third clause which contains Assigned ( v , j ) has no other PR Vs with more than one L V . Therefore, this theory is in S 2 F O 2 (and also in S 2 R U ) and domain-liftable based on Theorem 1. Proposition 4. F O 2 ⊂ RU , FO 2 ⊂ S 2 F O 2 , F O 2 ⊂ S 2 RU , RU ⊂ S 2 R U , S 2 F O 2 ⊂ S 2 R U . 6 Experiments and Results In order to see the ef fect of using domain recursion in practice, we find the WFOMC of three theories with and without using the domain recursion rule: 1- the theory in Example 3, 2- the S4 clause, and 3- the symmetric-transiti vity . W e implemented the domain recursion rule in C++ and compiled the codes using the g++ compiler . W e compare our results with the WFOMC-v3.0 software 4 . Since this software requires domain-liftable input theories, for the first theory we grounded the jobs, for the second we grounded ∆ x , and for the third we grounded ∆ p . For each of these three theories, assuming | ∆ x | = n for all L Vs x in the theory , we v aried n and plotted the run-time as a function of n . All experiments were done on a 2.8GH core with 4GB RAM under MacOSX. The run-times are reported in seconds. W e allowed a maximum of 1000 s for each run. Obtained results can be vie wed in Fig. 1. These results are consistent with our theory and indicate the clear advantage of using the domain recursion rule in practice. In Fig. 1(a), the slope of the diagram for domain recursion is approximately 4 which indicates the de gree of the polynomial for the time complexity . Similar analysis can be done for the results on S 4 clause and the symmetric-transitivity clause represented in Fig. 1(b), (c). The slope of the diagram in these two diagrams is around 5 and 2 respectiv ely , indicating that the time comple xity for finding the WFOMC of the S 4 clause and the symmetric-transitivity theories are n 5 and n 2 respectiv ely , where n shows the size of the population. 7 Discussion W e can categorize the theories with respect to the domain recursion rule as: 1- theories proved to be domain-liftable using domain recursion (e.g., S4, symmetric-transitivity , and theories in S 2 F O 2 ), 2- theories that are domain-liftable using domain recursion, but we ha ve not identified them yet, and 3- theories that are not domain-liftable e ven when using domain recursion. W e lea ve disco vering and characterizing the theories in cate gory 2 and 3 as future work. But here we sho w that ev en though the theories in category 3 are not domain-liftable using domain recursion, this rule may still result in exponential speedup for these theories. 4 A v ailable at: https://dtai.cs.kuleuven.be/software/wfomc 6 Consider the (non-symmetric) transitivity rule: ∀ x, y , z ∈ ∆ p : ¬ Friend ( x, y ) ∨ ¬ Friend ( y, z ) ∨ F riend ( x, z ) . Since none of the rules in R apply to the above theory , the existing lifted inference engines ground ∆ p and calculate the weighted model count (WMC) of the ground theory . By grounding ∆ p , these engines lose great amounts of symmetry . Suppose ∆ p = { A, B , C } and assume we select F riend ( A, B ) and F riend ( A, C ) as the first two random variables for case-analysis. Due to the e xchangeability of the individuals, the case where F riend ( A, B ) and F riend ( A, C ) are assigned to T rue and F alse respecti vely has the same WMC as the case where they are assigned to F alse and T rue . Howe ver , the current engines fail to exploit this symmetry as they consider grounded individuals non-exchangeable. By applying domain recursion to the abo ve theory , one can exploit the symmetries of the theory . Suppose ∆ p 0 = ∆ p − { P } . Then we can rewrite the theory as follo ws: ∀ y , z ∈ ∆ p 0 : ¬ F riend ( P , y ) ∨ ¬ Friend ( y, z ) ∨ Friend ( P, z ) ∀ x, z ∈ ∆ p 0 : ¬ F riend ( x, P ) ∨ ¬ Friend ( P, z ) ∨ Friend ( x, z ) ∀ x, y ∈ ∆ p 0 : ¬ F riend ( x, y ) ∨ ¬ Friend ( y, P ) ∨ Friend ( x, P ) ∀ x, y , z ∈ ∆ p 0 : ¬ F riend ( x, y ) ∨ ¬ Friend ( y, z ) ∨ Friend ( x, z ) By applying lifted case-analysis on F riend ( P , y ) , we do not get back the same theory with reduced population and calculating the WFOMC is still exponential. Howe ver , we only generate one branch for the case where F riend ( P , y ) is T rue only once. This branch covers both the symmetric cases mentioned above. Exploiting these symmetries reduces the time-complexity exponentially . This suggests that for any gi ven theory , when the rules in R are not applicable one may want to try the domain recursion rule before giving up and resorting to grounding a population. 8 Conclusion W e identified new classes of domain-liftable theories called S 2 F O 2 and S 2 RU by revi ving the domain recursion rule. W e also demonstrated how this rule is useful for theories outside these classes. Our work opens up a future research direction for identifying and characterizing larger classes of theories that are domain-liftable using domain recursion. It also helps us get closer to finding a dichotomy between the theories that are domain-liftable and those that are not, similar to the dichotomy result of Dalvi and Suciu [6] for query answering in probabilistic databases. It has been shown [ 15 , 16 ] that compiling the WFOMC rules into low-le vel programs (e.g., C++ programs) offers (approx.) 175x speedup compared to other approaches. While compiling the previously kno wn rules to low-le vel programs was straightforw ard, compiling the domain recursion rule to low-le vel programs without using recursion might be trick y as it relies on the population size of the logical variables. A future research direction would be finding if the domain recursion rule can be efficiently compiled into lo w-le vel programs, and measuring the amount of speedup it of fers. 9 Proofs of the Theor ems, Propositions, and Lemmas 9.1 Proof of Pr oposition 1 Pr oof. Let ∆ x 0 = ∆ x − { N } . Applying domain recur sion on ∆ x (choosing ∆ y is analogous) giv es the following shatter ed theory on the reduced domain ∆ x 0 . ∀ x 1 , x 2 ∈ ∆ x 0 , y 1 , y 2 ∈ ∆ y : S ( x 1 , y 1 ) ∨ ¬ S ( x 1 , y 2 ) ∨ ¬ S ( x 2 , y 1 ) ∨ S ( x 2 , y 2 ) (1) ∀ x 2 ∈ ∆ x 0 , y 1 , y 2 ∈ ∆ y : S ( N , y 1 ) ∨ ¬ S ( N , y 2 ) ∨ ¬ S ( x 2 , y 1 ) ∨ S ( x 2 , y 2 ) (2) ∀ x 1 ∈ ∆ x 0 , y 1 , y 2 ∈ ∆ y : S ( x 1 , y 1 ) ∨ ¬ S ( x 1 , y 2 ) ∨ ¬ S ( N , y 1 ) ∨ S ( N , y 2 ) (3) ∀ y 1 , y 2 ∈ ∆ y : S ( N , y 1 ) ∨ ¬ S ( N , y 2 ) ∨ ¬ S ( N , y 1 ) ∨ S ( N , y 2 ) (4) W e now reach to the standard rules R to simplify the output of domain recursion. The last clause is a tautology and can be dropped. The theory contains a unary PR V , namely S ( N , y ) , which is a candidate for lifted case-analysis . Let ∆ y T ⊆ ∆ y be the individuals of ∆ y for which S ( N , y ) is 7 satisfied, and let ∆ y F = ∆ y \ ∆ y T be its complement in ∆ y . This giv es ∀ x 1 , x 2 ∈ ∆ x 0 , y 1 , y 2 ∈ ∆ y : S ( x 1 , y 1 ) ∨ ¬ S ( x 1 , y 2 ) ∨ ¬ S ( x 2 , y 1 ) ∨ S ( x 2 , y 2 ) (5) ∀ x 2 ∈ ∆ x 0 , y 1 , y 2 ∈ ∆ y : S ( N , y 1 ) ∨ ¬ S ( N , y 2 ) ∨ ¬ S ( x 2 , y 1 ) ∨ S ( x 2 , y 2 ) (6) ∀ x 1 ∈ ∆ x 0 , y 1 , y 2 ∈ ∆ y : S ( x 1 , y 1 ) ∨ ¬ S ( x 1 , y 2 ) ∨ ¬ S ( N , y 1 ) ∨ S ( N , y 2 ) (7) ∀ y ∈ ∆ y T : S ( N , y ) (8) ∀ y ∈ ∆ y F : ¬ S ( N , y ) (9) Unit pr opagation creates two independent theories: one containing the S ( N , y ) atoms, which is trivially liftable, and one containing the other atoms, namely ∀ x 1 , x 2 ∈ ∆ x 0 , y 1 , y 2 ∈ ∆ y : S ( x 1 , y 1 ) ∨ ¬ S ( x 1 , y 2 ) ∨ ¬ S ( x 2 , y 1 ) ∨ S ( x 2 , y 2 ) (10) ∀ x 2 ∈ ∆ x 0 , y 1 ∈ ∆ y T , y 2 ∈ ∆ y F : ¬ S ( x 2 , y 1 ) ∨ S ( x 2 , y 2 ) (11) ∀ x 1 ∈ ∆ x 0 , y 1 ∈ ∆ y T , y 2 ∈ ∆ y F : S ( x 1 , y 1 ) ∨ ¬ S ( x 1 , y 2 ) (12) The last two clauses are equi valent, hence, we ha ve ∀ x 1 , x 2 ∈ ∆ x 0 , y 1 , y 2 ∈ ∆ y : S ( x 1 , y 1 ) ∨ ¬ S ( x 1 , y 2 ) ∨ ¬ S ( x 2 , y 1 ) ∨ S ( x 2 , y 2 ) (13) ∀ x ∈ ∆ x 0 , y 1 ∈ ∆ y F , y 2 ∈ ∆ y T : ¬ S ( x, y 1 ) ∨ S ( x, y 2 ) (14) After shattering , we get four copies of the first clause: ∀ x 1 , x 2 ∈ ∆ x 0 , y 1 ∈ ∆ y T , y 2 ∈ ∆ y T : S ( x 1 , y 1 ) ∨ ¬ S ( x 1 , y 2 ) ∨ ¬ S ( x 2 , y 1 ) ∨ S ( x 2 , y 2 ) (15) ∀ x 1 , x 2 ∈ ∆ x 0 , y 1 ∈ ∆ y T , y 2 ∈ ∆ y F : S ( x 1 , y 1 ) ∨ ¬ S ( x 1 , y 2 ) ∨ ¬ S ( x 2 , y 1 ) ∨ S ( x 2 , y 2 ) (16) ∀ x 1 , x 2 ∈ ∆ x 0 , y 1 ∈ ∆ y F , y 2 ∈ ∆ y T : S ( x 1 , y 1 ) ∨ ¬ S ( x 1 , y 2 ) ∨ ¬ S ( x 2 , y 1 ) ∨ S ( x 2 , y 2 ) (17) ∀ x 1 , x 2 ∈ ∆ x 0 , y 1 ∈ ∆ y F , y 2 ∈ ∆ y F : S ( x 1 , y 1 ) ∨ ¬ S ( x 1 , y 2 ) ∨ ¬ S ( x 2 , y 1 ) ∨ S ( x 2 , y 2 ) (18) ∀ x ∈ ∆ x 0 , y 1 ∈ ∆ y F , y 2 ∈ ∆ y T : ¬ S ( x, y 1 ) ∨ S ( x, y 2 ) (19) The second and third clauses are subsumed by the last clause, and can be remov ed: ∀ x 1 , x 2 ∈ ∆ x 0 , y 1 ∈ ∆ y T , y 2 ∈ ∆ y T : S ( x 1 , y 1 ) ∨ ¬ S ( x 1 , y 2 ) ∨ ¬ S ( x 2 , y 1 ) ∨ S ( x 2 , y 2 ) (20) ∀ x 1 , x 2 ∈ ∆ x 0 , y 1 ∈ ∆ y F , y 2 ∈ ∆ y F : S ( x 1 , y 1 ) ∨ ¬ S ( x 1 , y 2 ) ∨ ¬ S ( x 2 , y 1 ) ∨ S ( x 2 , y 2 ) (21) ∀ x ∈ ∆ x 0 , y 1 ∈ ∆ y F , y 2 ∈ ∆ y T : ¬ S ( x, y 1 ) ∨ S ( x, y 2 ) (22) Let us now consider the last clause, and ignore the first two for the time being. The last clause is actually in FO 2 , and the Skolemization -re writing of reused FO 2 variables [ 30 ] can be applied, for example to y 2 in its second PR V . The last clause is thus replaced by ∀ x ∈ ∆ x 0 , y ∈ ∆ y F : ¬ S ( x, y ) ∨ ¬ A ( x ) (23) ∀ x ∈ ∆ x 0 , y ∈ ∆ y T : S ( x, y ) ∨ A ( x ) (24) ∀ x ∈ ∆ x 0 : A ( x ) ∨ B ( x ) (25) ∀ x ∈ ∆ x 0 , y ∈ ∆ y T : S ( x, y ) ∨ B ( x ) (26) Next, we perform lifted case-analysis on A ( x 0 ) . Let ∆ α ⊆ ∆ x 0 be the indi viduals in ∆ x 0 for which A ( x 0 ) is satisfied, and let ∆ ¯ α = ∆ x 0 \ ∆ α be its complement in ∆ x 0 : ∀ x ∈ ∆ x 0 , y ∈ ∆ y F : ¬ S ( x, y ) ∨ ¬ A ( x ) (27) ∀ x ∈ ∆ x 0 , y ∈ ∆ y T : S ( x, y ) ∨ A ( x ) (28) ∀ x ∈ ∆ x 0 : A ( x ) ∨ B ( x ) (29) ∀ x ∈ ∆ x 0 , y ∈ ∆ y T : S ( x, y ) ∨ B ( x ) (30) ∀ x ∈ ∆ α : A ( x ) (31) ∀ x ∈ ∆ ¯ α : ¬ A ( x ) (32) Unit pr opagation gives two independent theories: a theory containing the predicate A , which is trivially liftable, and the theory ∀ x ∈ ∆ α , y ∈ ∆ y F : ¬ S ( x, y ) (33) ∀ x ∈ ∆ ¯ α , y ∈ ∆ y T : S ( x, y ) (34) ∀ x ∈ ∆ ¯ α : B ( x ) (35) ∀ x ∈ ∆ α , y ∈ ∆ y T : S ( x, y ) ∨ B ( x ) (36) 8 Next, we perform atom counting on B ( x 0 ) . Let ∆ β ⊆ ∆ α be the indi viduals of ∆ α for which B ( x 0 ) is satisfied, and let ∆ ¯ β = ∆ α \ ∆ β be its complement in ∆ α . In other words, the original domain ∆ x is now split up into four parts: ∆ ¯ x = { N } , ∆ ¯ α , ∆ β , and ∆ ¯ β . This giv es the theory ∀ x ∈ ∆ α , y ∈ ∆ y F : ¬ S ( x, y ) (37) ∀ x ∈ ∆ ¯ α , y ∈ ∆ y T : S ( x, y ) (38) ∀ x ∈ ∆ ¯ α : B ( x ) (39) ∀ x ∈ ∆ α , y ∈ ∆ y T : S ( x, y ) ∨ B ( x ) (40) ∀ x ∈ ∆ β : B ( x ) (41) ∀ x ∈ ∆ ¯ β : ¬ B ( x ) (42) Unit pr opagation gives two independent theories: a theory containing the predicate B , which is trivially liftable, and the theory ∀ x ∈ ∆ α , y ∈ ∆ y F : ¬ S ( x, y ) (43) ∀ x ∈ ∆ ¯ α , y ∈ ∆ y T : S ( x, y ) (44) ∀ x ∈ ∆ ¯ β , y ∈ ∆ y T : S ( x, y ) (45) W e now reintroduce the first remo ved clause. Clause 20 has nine copies after shattering : ∀ x 1 ∈ ∆ ¯ α , x 2 ∈ ∆ ¯ α , y 1 , y 2 ∈ ∆ y T : S ( x 1 , y 1 ) ∨ ¬ S ( x 1 , y 2 ) ∨ ¬ S ( x 2 , y 1 ) ∨ S ( x 2 , y 2 ) (46) ∀ x 1 ∈ ∆ ¯ α , x 2 ∈ ∆ β , y 1 , y 2 ∈ ∆ y T : S ( x 1 , y 1 ) ∨ ¬ S ( x 1 , y 2 ) ∨ ¬ S ( x 2 , y 1 ) ∨ S ( x 2 , y 2 ) (47) ∀ x 1 ∈ ∆ ¯ α , x 2 ∈ ∆ ¯ β , y 1 , y 2 ∈ ∆ y T : S ( x 1 , y 1 ) ∨ ¬ S ( x 1 , y 2 ) ∨ ¬ S ( x 2 , y 1 ) ∨ S ( x 2 , y 2 ) (48) ∀ x 1 ∈ ∆ β , x 2 ∈ ∆ ¯ α , y 1 , y 2 ∈ ∆ y T : S ( x 1 , y 1 ) ∨ ¬ S ( x 1 , y 2 ) ∨ ¬ S ( x 2 , y 1 ) ∨ S ( x 2 , y 2 ) (49) ∀ x 1 ∈ ∆ β , x 2 ∈ ∆ β , y 1 , y 2 ∈ ∆ y T : S ( x 1 , y 1 ) ∨ ¬ S ( x 1 , y 2 ) ∨ ¬ S ( x 2 , y 1 ) ∨ S ( x 2 , y 2 ) (50) ∀ x 1 ∈ ∆ β , x 2 ∈ ∆ ¯ β , y 1 , y 2 ∈ ∆ y T : S ( x 1 , y 1 ) ∨ ¬ S ( x 1 , y 2 ) ∨ ¬ S ( x 2 , y 1 ) ∨ S ( x 2 , y 2 ) (51) ∀ x 1 ∈ ∆ ¯ β , x 2 ∈ ∆ ¯ α , y 1 , y 2 ∈ ∆ y T : S ( x 1 , y 1 ) ∨ ¬ S ( x 1 , y 2 ) ∨ ¬ S ( x 2 , y 1 ) ∨ S ( x 2 , y 2 ) (52) ∀ x 1 ∈ ∆ ¯ β , x 2 ∈ ∆ β , y 1 , y 2 ∈ ∆ y T : S ( x 1 , y 1 ) ∨ ¬ S ( x 1 , y 2 ) ∨ ¬ S ( x 2 , y 1 ) ∨ S ( x 2 , y 2 ) (53) ∀ x 1 ∈ ∆ ¯ β , x 2 ∈ ∆ ¯ β , y 1 , y 2 ∈ ∆ y T : S ( x 1 , y 1 ) ∨ ¬ S ( x 1 , y 2 ) ∨ ¬ S ( x 2 , y 1 ) ∨ S ( x 2 , y 2 ) (54) Unit pr opagation of clauses 44 and 45 satisfies any clause that has a positi ve literal whose x domain is ∆ ¯ α or ∆ ¯ β . This removes all clauses e xcept for ∀ x 1 ∈ ∆ β , x 2 ∈ ∆ β , y 1 , y 2 ∈ ∆ y T : S ( x 1 , y 1 ) ∨ ¬ S ( x 1 , y 2 ) ∨ ¬ S ( x 2 , y 1 ) ∨ S ( x 2 , y 2 ) (55) W e now reintroduce the second remo ved clause. Clause 21 has four copies after shattering : ∀ x 1 ∈ ∆ α , x 2 ∈ ∆ α , y 1 , y 2 ∈ ∆ y F : S ( x 1 , y 1 ) ∨ ¬ S ( x 1 , y 2 ) ∨ ¬ S ( x 2 , y 1 ) ∨ S ( x 2 , y 2 ) (56) ∀ x 1 ∈ ∆ α , x 2 ∈ ∆ ¯ α , y 1 , y 2 ∈ ∆ y F : S ( x 1 , y 1 ) ∨ ¬ S ( x 1 , y 2 ) ∨ ¬ S ( x 2 , y 1 ) ∨ S ( x 2 , y 2 ) (57) ∀ x 1 ∈ ∆ ¯ α , x 2 ∈ ∆ α , y 1 , y 2 ∈ ∆ y F : S ( x 1 , y 1 ) ∨ ¬ S ( x 1 , y 2 ) ∨ ¬ S ( x 2 , y 1 ) ∨ S ( x 2 , y 2 ) (58) ∀ x 1 ∈ ∆ ¯ α , x 2 ∈ ∆ ¯ α , y 1 , y 2 ∈ ∆ y F : S ( x 1 , y 1 ) ∨ ¬ S ( x 1 , y 2 ) ∨ ¬ S ( x 2 , y 1 ) ∨ S ( x 2 , y 2 ) (59) Unit pr opagation of clauses 43 satisfies an y clause that has a ne gativ e literal whose x domain is α . This remov es all clauses except for ∀ x 1 ∈ ∆ ¯ α , x 2 ∈ ∆ ¯ α , y 1 , y 2 ∈ ∆ y F : S ( x 1 , y 1 ) ∨ ¬ S ( x 1 , y 2 ) ∨ ¬ S ( x 2 , y 1 ) ∨ S ( x 2 , y 2 ) (60) Putting it all together , we hav e the theory ∀ x 1 , x 2 ∈ ∆ β , y 1 , y 2 ∈ ∆ y T : S ( x 1 , y 1 ) ∨ ¬ S ( x 1 , y 2 ) ∨ ¬ S ( x 2 , y 1 ) ∨ S ( x 2 , y 2 ) (61) ∀ x 1 , x 2 ∈ ∆ ¯ α , y 1 , y 2 ∈ ∆ y F : S ( x 1 , y 1 ) ∨ ¬ S ( x 1 , y 2 ) ∨ ¬ S ( x 2 , y 1 ) ∨ S ( x 1 , y 2 ) (62) ∀ x ∈ ∆ α , y ∈ ∆ y F : ¬ S ( x, y ) (63) ∀ x ∈ ∆ ¯ α , y ∈ ∆ y T : S ( x, y ) (64) ∀ x ∈ ∆ ¯ β , y ∈ ∆ y T : S ( x, y ) (65) These fi ve clauses are all independent . The last three are tri vially liftable. The first two are simply copies of S4 with modified domains ∆ β , ∆ y T , ∆ ¯ α and ∆ y F instead of ∆ x and ∆ y . Howev er , we hav e that | ∆ β | < | ∆ x | , | ∆ y T | ≤ | ∆ y | , | ∆ ¯ α | < | ∆ x | , and | ∆ y F | ≤ | ∆ y | . The recursion is thus guaranteed to terminate with ∆ β = ∆ ¯ α = ∅ . By keeping a cache of WFOMCs for all sizes of ∆ x and ∆ y , we can compute the WFOMC of S4 in PTIME. 9 9.2 Proof of Pr oposition 2 Pr oof. Symmetric-transitivity has the follo wing two sentences: ∀ x, y , z ∈ ∆ p : ¬ F ( x, y ) ∨ ¬ F ( y , z ) ∨ F ( x, z ) (66) ∀ x, y ∈ ∆ p : ¬ F ( x, y ) ∨ F ( y , x ) (67) Assuming ∆ q = ∆ p − { N } : ∀ y , z ∈ ∆ q : ¬ F ( N , y ) ∨ ¬ F ( y , z ) ∨ F ( N , z ) (68) ∀ x, z ∈ ∆ q : ¬ F ( x, N ) ∨ ¬ F ( N , z ) ∨ F ( x, z ) (69) ∀ x, y ∈ ∆ q : ¬ F ( x, y ) ∨ ¬ F ( y , N ) ∨ F ( x, N ) (70) ∀ x, y , z ∈ ∆ q : ¬ F ( x, y ) ∨ ¬ F ( y , z ) ∨ F ( x, z ) (71) ∀ y ∈ ∆ q : ¬ F ( N , y ) ∨ F ( y , N ) (72) ∀ x ∈ ∆ q : ¬ F ( x, N ) ∨ F ( N , x ) (73) ∀ x, y ∈ ∆ q : ¬ F ( x, y ) ∨ F ( y , x ) (74) Lifted case-analysis on F ( N , q ) assuming ∆ q T contains indi viduals in ∆ q for which F ( N , q ) is true and ∆ q F is the other individuals in ∆ q : ∀ y , z ∈ ∆ q : ¬ F ( N , y ) ∨ ¬ F ( y , z ) ∨ F ( N , z ) (75) ∀ x, z ∈ ∆ q : ¬ F ( x, N ) ∨ ¬ F ( N , z ) ∨ F ( x, z ) (76) ∀ x, y ∈ ∆ q : ¬ F ( x, y ) ∨ ¬ F ( y , N ) ∨ F ( x, N ) (77) ∀ x, y , z ∈ ∆ q : ¬ F ( x, y ) ∨ ¬ F ( y , z ) ∨ F ( x, z ) (78) ∀ y ∈ ∆ q : ¬ F ( N , y ) ∨ F ( y , N ) (79) ∀ x ∈ ∆ q : ¬ F ( x, N ) ∨ F ( N , x ) (80) ∀ x, y ∈ ∆ q : ¬ F ( x, y ) ∨ F ( y , x ) (81) ∀ x ∈ ∆ q T : F ( N , x ) (82) ∀ x ∈ ∆ q F : ¬ F ( N , x ) (83) Unit propagation: ∀ y ∈ ∆ q T , z ∈ ∆ q F : ¬ F ( y , z ) (84) ∀ x ∈ ∆ q , z ∈ ∆ q T : ¬ F ( x, N ) ∨ F ( x, z ) (85) ∀ x, y ∈ ∆ q : ¬ F ( x, y ) ∨ ¬ F ( y , N ) ∨ F ( x, N ) (86) ∀ x, y , z ∈ ∆ q : ¬ F ( x, y ) ∨ ¬ F ( y , z ) ∨ F ( x, z ) (87) ∀ y ∈ ∆ q T : F ( y , N ) (88) ∀ x ∈ ∆ q F : ¬ F ( x, N ) (89) ∀ x, y ∈ ∆ q : ¬ F ( x, y ) ∨ F ( y , x ) (90) 10 Shattering: ∀ y ∈ ∆ q T , z ∈ ∆ q F : ¬ F ( y , z ) (91) ∀ x ∈ ∆ q T , z ∈ ∆ q T : ¬ F ( x, N ) ∨ F ( x, z ) (92) ∀ x ∈ ∆ q F , z ∈ ∆ q T : ¬ F ( x, N ) ∨ F ( x, z ) (93) ∀ x ∈ ∆ q T , y ∈ ∆ q T : ¬ F ( x, y ) ∨ ¬ F ( y , N ) ∨ F ( x, N ) (94) ∀ x ∈ ∆ q T , y ∈ ∆ q F : ¬ F ( x, y ) ∨ ¬ F ( y , N ) ∨ F ( x, N ) (95) ∀ x ∈ ∆ q F , y ∈ ∆ q T : ¬ F ( x, y ) ∨ ¬ F ( y , N ) ∨ F ( x, N ) (96) ∀ x ∈ ∆ q F , y ∈ ∆ q F : ¬ F ( x, y ) ∨ ¬ F ( y , N ) ∨ F ( x, N ) (97) ∀ x ∈ ∆ q T , y ∈ ∆ q T , z ∈ ∆ q T : ¬ F ( x, y ) ∨ ¬ F ( y , z ) ∨ F ( x, z ) (98) ∀ x ∈ ∆ q T , y ∈ ∆ q T , z ∈ ∆ q F : ¬ F ( x, y ) ∨ ¬ F ( y , z ) ∨ F ( x, z ) (99) ∀ x ∈ ∆ q T , y ∈ ∆ q F , z ∈ ∆ q T : ¬ F ( x, y ) ∨ ¬ F ( y , z ) ∨ F ( x, z ) (100) ∀ x ∈ ∆ q T , y ∈ ∆ q F , z ∈ ∆ q F : ¬ F ( x, y ) ∨ ¬ F ( y , z ) ∨ F ( x, z ) (101) ∀ x ∈ ∆ q F , y ∈ ∆ q T , z ∈ ∆ q T : ¬ F ( x, y ) ∨ ¬ F ( y , z ) ∨ F ( x, z ) (102) ∀ x ∈ ∆ q F , y ∈ ∆ q T , z ∈ ∆ q F : ¬ F ( x, y ) ∨ ¬ F ( y , z ) ∨ F ( x, z ) (103) ∀ x ∈ ∆ q F , y ∈ ∆ q F , z ∈ ∆ q T : ¬ F ( x, y ) ∨ ¬ F ( y , z ) ∨ F ( x, z ) (104) ∀ x ∈ ∆ q F , y ∈ ∆ q F , z ∈ ∆ q F : ¬ F ( x, y ) ∨ ¬ F ( y , z ) ∨ F ( x, z ) (105) ∀ y ∈ ∆ q T : F ( y , N ) (106) ∀ x ∈ ∆ q F : ¬ F ( x, N ) (107) ∀ x ∈ ∆ q T , y ∈ ∆ q T : ¬ F ( x, y ) ∨ F ( y , x ) (108) ∀ x ∈ ∆ q T , y ∈ ∆ q F : ¬ F ( x, y ) ∨ F ( y , x ) (109) ∀ x ∈ ∆ q F , y ∈ ∆ q T : ¬ F ( x, y ) ∨ F ( y , x ) (110) ∀ x ∈ ∆ q F , y ∈ ∆ q F : ¬ F ( x, y ) ∨ F ( y , x ) (111) Unit propagation: ∀ y ∈ ∆ q T , z ∈ ∆ q F : ¬ F ( y , z ) (112) ∀ x ∈ ∆ q T , z ∈ ∆ q T : F ( x, z ) (113) ∀ x ∈ ∆ q F , y ∈ ∆ q T : ¬ F ( x, y ) (114) ∀ x ∈ ∆ q F , y ∈ ∆ q F , z ∈ ∆ q F : ¬ F ( x, y ) ∨ ¬ F ( y , z ) ∨ F ( x, z ) (115) ∀ y ∈ ∆ q T : F ( y , N ) (116) ∀ x ∈ ∆ q F : ¬ F ( x, N ) (117) ∀ x ∈ ∆ q F , y ∈ ∆ q F : ¬ F ( x, y ) ∨ F ( y , x ) (118) The first, second, third, fifth, and sixth clauses are independent of the other clauses and can be reasoned about separately . They can be tri vially lifted. The remaining clauses are: ∀ x ∈ ∆ q F , y ∈ ∆ q F , z ∈ ∆ q F : ¬ F ( x, y ) ∨ ¬ F ( y , z ) ∨ F ( x, z ) (119) ∀ x ∈ ∆ q F , y ∈ ∆ q F : ¬ F ( x, y ) ∨ F ( y , x ) (120) The above clauses are an instance of our initial clauses but with smaller domain sizes. W e can reason about them by following a similar process, and if we keep sub-results in a cache, the process will be polynomial. 9.3 Proof of Pr oposition 3 Pr oof. After skolemization [ 30 ] for removing the existential quantifier , the birthday-paradox theory contains ∀ p ∈ ∆ p , ∀ d ∈ ∆ d : S ( p ) ∨ ¬ Born ( p, d ) , ∀ p ∈ ∆ p , d 1 , d 2 ∈ ∆ d : ¬ Born ( p, d 1 ) ∨ ¬ Bo rn ( p, d 2 ) , and ∀ p 1 , p 2 ∈ ∆ p , d ∈ ∆ d : ¬ Born ( p 1 , d ) ∨ ¬ Born ( p 2 , d ) , where S is the Skolem predicate. This theory is not in F O 2 and not in RU and is not domain-liftable using R . Howe ver , this theory is both S 2 F O 2 and S 2 R U as the last two clauses are instances of αB or n , the first one is in F O 2 and also in RU and has no PR Vs with more than one L V other than Bo rn . Therefore, this theory is domain-liftable based on Theorem 1. 11 9.4 Proof of Theor em 1 Pr oof. The case where α = ∅ is trivial. Let α = α ( S 1 ) ∧ α ( S 2 ) ∧ · · · ∧ α ( S n ) . Once we remove all PR Vs having none or one L V by (lifted) case-analysis, the remaining clauses can be divided into n + 1 components: the i -th component in the first n components only contains S i literals, and the ( n + 1) -th component contains no S i literals. These components are disconnected from each other , so we can consider each of them separately . The ( n + 1) -th component comes from clauses in β and is domain-liftable by definition. The follo wing two Lemmas prov e that the clauses in the other components are also domain-liftable. The proofs of both lemmas rely on domain recursion. Lemma 1. A clausal theory with only one pr edicate S is domain-liftable if all clauses have e xactly two differ ent liter als of S . Lemma 2. Suppose { ∆ p 1 , ∆ p 2 , . . . , ∆ p n } ar e mutually exclusive subsets of ∆ x and { ∆ q 1 , ∆ q 2 , . . . , ∆ q m } ar e mutually exclusive subsets of ∆ y . W e can add any unit clause of the form ∀ p i ∈ ∆ p i , q j ∈ ∆ q j : S ( p i , q j ) or ∀ p i ∈ ∆ p i , q j ∈ ∆ q j : ¬ S ( p i , q j ) to the theory in Lemma 1 and the theory is still domain-liftable. Therefore, theories in S 2 F O 2 and S 2 R U are domain-liftable. 9.5 Proof of Lemma 1 Pr oof. A theory in this form has a subset of the following clauses: ∀ x ∈ ∆ x , y 1 , y 2 ∈ ∆ y : S ( x, y 1 ) ∨ S ( x, y 2 ) (121) ∀ x ∈ ∆ x , y 1 , y 2 ∈ ∆ y : S ( x, y 1 ) ∨ ¬ S ( x, y 2 ) (122) ∀ x ∈ ∆ x , y 1 , y 2 ∈ ∆ y : ¬ S ( x, y 1 ) ∨ ¬ S ( x, y 2 ) (123) ∀ x 1 , x 2 ∈ ∆ x , y ∈ ∆ y : S ( x 1 , y ) ∨ S ( x 2 , y ) (124) ∀ x 1 , x 2 ∈ ∆ x , y ∈ ∆ y : S ( x 1 , y ) ∨ ¬ S ( x 2 , y ) (125) ∀ x 1 , x 2 ∈ ∆ x , y ∈ ∆ y : ¬ S ( x 1 , y ) ∨ ¬ S ( x 2 , y ) (126) ∀ x 1 , x 2 ∈ ∆ x , y 1 , y 2 ∈ ∆ y : S ( x 1 , y 1 ) ∨ S ( x 2 , y 2 ) (127) ∀ x 1 , x 2 ∈ ∆ x , y 1 , y 2 ∈ ∆ y : S ( x 1 , y 1 ) ∨ ¬ S ( x 2 , y 2 ) (128) ∀ x 1 , x 2 ∈ ∆ x , y 1 , y 2 ∈ ∆ y : ¬ S ( x 1 , y 1 ) ∨ ¬ S ( x 2 , y 2 ) (129) Let N be an individual in ∆ x . Applying domain recursion on ∆ x 0 = ∆ x 0 − { N } for all clauses giv es: for (1): ∀ y 1 , y 2 ∈ ∆ y : S ( N , y 1 ) ∨ S ( N , y 2 ) (130) ∀ x ∈ ∆ x 0 , y 1 , y 2 ∈ ∆ y : S ( x, y 1 ) ∨ S ( x, y 2 ) (131) for (2): ∀ y 1 , y 2 ∈ ∆ y : S ( N , y 1 ) ∨ ¬ S ( N , y 2 ) (132) ∀ x ∈ ∆ x 0 , y 1 , y 2 ∈ ∆ y : S ( x, y 1 ) ∨ ¬ S ( x, y 2 ) (133) for (3): ∀ y 1 , y 2 ∈ ∆ y : ¬ S ( N , y 1 ) ∨ ¬ S ( N , y 2 ) (134) ∀ x ∈ ∆ x 0 , y 1 , y 2 ∈ ∆ y : ¬ S ( x, y 1 ) ∨ ¬ S ( x, y 2 ) (135) for (4): ∀ x ∈ ∆ x 0 , y ∈ ∆ y : S ( N , y ) ∨ S ( x, y ) (136) ∀ x 1 , x 2 ∈ ∆ x 0 , y ∈ ∆ y : S ( x 1 , y ) ∨ S ( x 2 , y ) (137) 12 for (5): ∀ x ∈ ∆ x 0 , y ∈ ∆ y : S ( N , y ) ∨ ¬ S ( x, y ) (138) ∀ x ∈ ∆ x 0 , y ∈ ∆ y : ¬ S ( N , y ) ∨ S ( x, y ) (139) ∀ x 1 , x 2 ∈ ∆ x 0 , y ∈ ∆ y : S ( x 1 , y ) ∨ ¬ S ( x 2 , y ) (140) for (6): ∀ x ∈ ∆ x 0 , y ∈ ∆ y : ¬ S ( N , y ) ∨ ¬ S ( x, y ) (141) ∀ x 1 , x 2 ∈ ∆ x 0 , y ∈ ∆ y : ¬ S ( x 1 , y ) ∨ ¬ S ( x 2 , y ) (142) for (7): ∀ x ∈ ∆ x 0 , y 1 , y 2 ∈ ∆ y : S ( N , y 1 ) ∨ S ( x, y 2 ) (143) ∀ x 1 , x 2 ∈ ∆ x 0 , y 1 , y 2 ∈ ∆ y : S ( x 1 , y 1 ) ∨ S ( x 2 , y 2 ) (144) for (8): ∀ x ∈ ∆ x 0 , y 1 , y 2 ∈ ∆ y : S ( N , y 1 ) ∨ ¬ S ( x, y 2 ) (145) ∀ x ∈ ∆ x 0 , y 1 , y 2 ∈ ∆ y : ¬ S ( N , y 1 ) ∨ S ( x, y 2 ) (146) ∀ x 1 , x 2 ∈ ∆ x 0 , y 1 , y 2 ∈ ∆ y : S ( x 1 , y 1 ) ∨ ¬ S ( x 2 , y 2 ) (147) for (9): ∀ x ∈ ∆ x 0 , y 1 , y 2 ∈ ∆ y : ¬ S ( N , y 1 ) ∨ ¬ S ( x, y 2 ) (148) ∀ x 1 , x 2 ∈ ∆ x 0 , y 1 , y 2 ∈ ∆ y : ¬ S ( x 1 , y 1 ) ∨ ¬ S ( x 2 , y 2 ) (149) Then we can perform lifted case-analysis on S ( N , y ) . For the case where S ( N , y ) is true for exactly k of the indi viduals in ∆ y , we update all clauses assuming ∆ y T and ∆ y F represent the individuals for which S ( N , y ) is T rue and F alse respectiv ely , and assuming ∀ y ∈ ∆ y T : S ( N , y ) and ∀ y ∈ ∆ y F : ¬ S ( N , y ) : for (1): ∀ x ∈ ∆ x 0 , y 1 , y 2 ∈ ∆ y : S ( x, y 1 ) ∨ S ( x, y 2 ) (150) for (2): ∀ x ∈ ∆ x 0 , y 1 , y 2 ∈ ∆ y : S ( x, y 1 ) ∨ ¬ S ( x, y 2 ) (151) for (3): ∀ x ∈ ∆ x 0 , y 1 , y 2 ∈ ∆ y : ¬ S ( x, y 1 ) ∨ ¬ S ( x, y 2 ) (152) for (4): ∀ x ∈ ∆ x 0 , y ∈ ∆ y F : S ( x, y ) (153) ∀ x 1 , x 2 ∈ ∆ x 0 , y ∈ ∆ y : S ( x 1 , y ) ∨ S ( x 2 , y ) (154) for (5): ∀ x ∈ ∆ x 0 , y ∈ ∆ y F : ¬ S ( x, y ) (155) ∀ x ∈ ∆ x 0 , y ∈ ∆ y T : S ( x, y ) (156) ∀ x 1 , x 2 ∈ ∆ x 0 , y ∈ ∆ y : S ( x 1 , y ) ∨ ¬ S ( x 2 , y ) (157) for (6): ∀ x ∈ ∆ x 0 , y ∈ ∆ y T : ¬ S ( x, y ) (158) ∀ x 1 , x 2 ∈ ∆ x 0 , y ∈ ∆ y : ¬ S ( x 1 , y ) ∨ ¬ S ( x 2 , y ) (159) 13 for (7): ∀ x ∈ ∆ x 0 , y 1 ∈ ∆ y F , y 2 ∈ ∆ y : S ( x, y 2 ) (160) ∀ x 1 , x 2 ∈ ∆ x 0 , y 1 , y 2 ∈ ∆ y : S ( x 1 , y 1 ) ∨ S ( x 2 , y 2 ) (161) for (8): ∀ x ∈ ∆ x 0 , y 1 ∈ ∆ y F , y 2 ∈ ∆ y : ¬ S ( x, y 2 ) (162) ∀ x ∈ ∆ x 0 , y 1 ∈ ∆ y T , y 2 ∈ ∆ y : S ( x, y 2 ) (163) ∀ x 1 , x 2 ∈ ∆ x 0 , y 1 , y 2 ∈ ∆ y : S ( x 1 , y 1 ) ∨ ¬ S ( x 2 , y 2 ) (164) (165) for (9): ∀ x ∈ ∆ x 0 , y 1 ∈ ∆ y T , y 2 ∈ ∆ y : ¬ S ( x, y 2 ) (166) ∀ x 1 , x 2 ∈ ∆ x 0 , y 1 , y 2 ∈ ∆ y : ¬ S ( x 1 , y 1 ) ∨ ¬ S ( x 2 , y 2 ) (167) After subsumptions and shattering: for (1): ∀ x ∈ ∆ x 0 , y 1 , y 2 ∈ ∆ y T : S ( x, y 1 ) ∨ S ( x, y 2 ) (168) ∀ x ∈ ∆ x 0 , y 1 ∈ ∆ y T , y 2 ∈ ∆ y F : S ( x, y 1 ) ∨ S ( x, y 2 ) (169) ∀ x ∈ ∆ x 0 , y 1 ∈ ∆ y F , y 2 ∈ ∆ y T : S ( x, y 1 ) ∨ S ( x, y 2 ) (170) ∀ x ∈ ∆ x 0 , y 1 , y 2 ∈ ∆ y F : S ( x, y 1 ) ∨ S ( x, y 2 ) (171) (172) for (2): ∀ x ∈ ∆ x 0 , y 1 , y 2 ∈ ∆ y T : S ( x, y 1 ) ∨ ¬ S ( x, y 2 ) (173) ∀ x ∈ ∆ x 0 , y 1 ∈ ∆ y T , y 2 ∈ ∆ y F : S ( x, y 1 ) ∨ ¬ S ( x, y 2 ) (174) ∀ x ∈ ∆ x 0 , y 1 ∈ ∆ y F , y 2 ∈ ∆ y T : S ( x, y 1 ) ∨ ¬ S ( x, y 2 ) (175) ∀ x ∈ ∆ x 0 , y 1 ∈ ∆ y F , y 2 ∈ ∆ y F : S ( x, y 1 ) ∨ ¬ S ( x, y 2 ) (176) for (3): ∀ x ∈ ∆ x 0 , y 1 , y 2 ∈ ∆ y T : ¬ S ( x, y 1 ) ∨ ¬ S ( x, y 2 ) (177) ∀ x ∈ ∆ x 0 , y 1 ∈ ∆ y T , y 2 ∈ ∆ y F : ¬ S ( x, y 1 ) ∨ ¬ S ( x, y 2 ) (178) ∀ x ∈ ∆ x 0 , y 1 ∈ ∆ y F , y 2 ∈ ∆ y T : ¬ S ( x, y 1 ) ∨ ¬ S ( x, y 2 ) (179) ∀ x ∈ ∆ x 0 , y 1 ∈ ∆ y F , y 2 ∈ ∆ y F : ¬ S ( x, y 1 ) ∨ ¬ S ( x, y 2 ) (180) for (4): (For the second clause, the case where y ∈ ∆ y F becomes subsumed by the first clause) ∀ x ∈ ∆ x 0 , y ∈ ∆ y F : S ( x, y ) (181) ∀ x 1 , x 2 ∈ ∆ x 0 , y ∈ ∆ y T : S ( x 1 , y ) ∨ S ( x 2 , y ) (182) for (5): (The third clause was subsumed by the first two) ∀ x ∈ ∆ x 0 , y ∈ ∆ y F : ¬ S ( x, y ) (183) ∀ x ∈ ∆ x 0 , y ∈ ∆ y T : S ( x, y ) (184) for (6): (Similar to (4)) ∀ x ∈ ∆ x 0 , y ∈ ∆ y T : ¬ S ( x, y ) (185) ∀ x 1 , x 2 ∈ ∆ x 0 , y ∈ ∆ y F : ¬ S ( x 1 , y ) ∨ ¬ S ( x 2 , y ) (186) 14 for (7): ∀ x ∈ ∆ x 0 , y 1 ∈ ∆ y F , y 2 ∈ ∆ y T : S ( x, y 2 ) (187) ∀ x ∈ ∆ x 0 , y 1 ∈ ∆ y F , y 2 ∈ ∆ y F : S ( x, y 2 ) (188) ∀ x 1 , x 2 ∈ ∆ x 0 , y 1 ∈ ∆ y T , y 2 ∈ ∆ y T : S ( x 1 , y 1 ) ∨ S ( x 2 , y 2 ) (189) ∀ x 1 , x 2 ∈ ∆ x 0 , y 1 ∈ ∆ y T , y 2 ∈ ∆ y F : S ( x 1 , y 1 ) ∨ S ( x 2 , y 2 ) (190) for (8): ∀ x ∈ ∆ x 0 , y 1 ∈ ∆ y F , y 2 ∈ ∆ y T : ¬ S ( x, y 2 ) (191) ∀ x ∈ ∆ x 0 , y 1 ∈ ∆ y F , y 2 ∈ ∆ y F : ¬ S ( x, y 2 ) (192) ∀ x ∈ ∆ x 0 , y 1 ∈ ∆ y T , y 2 ∈ ∆ y T : S ( x, y 2 ) (193) ∀ x ∈ ∆ x 0 , y 1 ∈ ∆ y T , y 2 ∈ ∆ y F : S ( x, y 2 ) (194) for (9): ∀ x ∈ ∆ x 0 , y 1 ∈ ∆ y T , y 2 ∈ ∆ y T : ¬ S ( x, y 2 ) (195) ∀ x ∈ ∆ x 0 , y 1 ∈ ∆ y T , y 2 ∈ ∆ y F : ¬ S ( x, y 2 ) (196) ∀ x 1 , x 2 ∈ ∆ x 0 , y 1 ∈ ∆ y F , y 2 ∈ ∆ y T : ¬ S ( x 1 , y 1 ) ∨ ¬ S ( x 2 , y 2 ) (197) ∀ x 1 , x 2 ∈ ∆ x 0 , y 1 ∈ ∆ y F , y 2 ∈ ∆ y F : ¬ S ( x 1 , y 1 ) ∨ ¬ S ( x 2 , y 2 ) (198) Looking at the first clause for (7) (and some other clauses), we see that there exists a ∀ y 1 ∈ ∆ y T but y 1 does not appear in the formula. If ∆ y T = ∅ , we can ignore this clause. Otherwise, we can ignore ∀ y 1 ∈ ∆ y T . So we consider three cases. When k = 0 (i.e. ∆ y F = ∆ y , ∆ y T = ∅ ): for (1): ∀ x ∈ ∆ x 0 , y 1 , y 2 ∈ ∆ y : S ( x, y 1 ) ∨ S ( x, y 2 ) (199) for (2): ∀ x ∈ ∆ x 0 , y 1 , y 2 ∈ ∆ y : S ( x, y 1 ) ∨ ¬ S ( x, y 2 ) (200) for (3): ∀ x ∈ ∆ x 0 , y 1 , y 2 ∈ ∆ y : ¬ S ( x, y 1 ) ∨ ¬ S ( x, y 2 ) (201) for (4): ∀ x ∈ ∆ x 0 , y ∈ ∆ y : S ( x, y ) (202) for (5): ∀ x ∈ ∆ x 0 , y ∈ ∆ y : ¬ S ( x, y ) (203) for (6): ∀ x 1 , x 2 ∈ ∆ x 0 , y ∈ ∆ y : ¬ S ( x 1 , y ) ∨ ¬ S ( x 2 , y ) (204) for (7): ∀ x ∈ ∆ x 0 , y 2 ∈ ∆ y : S ( x, y 2 ) (205) for (8): ∀ x ∈ ∆ x 0 , y 2 ∈ ∆ y : ¬ S ( x, y 2 ) (206) for (9): ∀ x 1 , x 2 ∈ ∆ x 0 , y 1 ∈ ∆ y , y 2 ∈ ∆ y : ¬ S ( x 1 , y 1 ) ∨ ¬ S ( x 2 , y 2 ) (207) 15 If clause #4 is one of the clauses in the theory , then unit propagation either giv es F alse , or satisfies all the clauses. The same is true for clauses #5, #7, and #8. In a theory not having any of these four clauses, we will be left with a set of clauses that are again a subset of the initial 9 clauses that we started with, but with a smaller domain size. By applying the same procedure, we can count the number of models. When k = | ∆ y | (i.e. ∆ y F = ∅ , ∆ y T = ∆ y ), everything is just similar to the k = 0 case. When 0 < k < | ∆ y | (i.e. neither ∆ y T nor ∆ y F are empty): for (1): ∀ x ∈ ∆ x 0 , y 1 , y 2 ∈ ∆ y T : S ( x, y 1 ) ∨ S ( x, y 2 ) (208) ∀ x ∈ ∆ x 0 , y 1 ∈ ∆ y T , y 2 ∈ ∆ y F : S ( x, y 1 ) ∨ S ( x, y 2 ) (209) ∀ x ∈ ∆ x 0 , y 1 ∈ ∆ y F , y 2 ∈ ∆ y T : S ( x, y 1 ) ∨ S ( x, y 2 ) (210) ∀ x ∈ ∆ x 0 , y 1 , y 2 ∈ ∆ y F : S ( x, y 1 ) ∨ S ( x, y 2 ) (211) for (2): ∀ x ∈ ∆ x 0 , y 1 , y 2 ∈ ∆ y T : S ( x, y 1 ) ∨ ¬ S ( x, y 2 ) (212) ∀ x ∈ ∆ x 0 , y 1 ∈ ∆ y T , y 2 ∈ ∆ y F : S ( x, y 1 ) ∨ ¬ S ( x, y 2 ) (213) ∀ x ∈ ∆ x 0 , y 1 ∈ ∆ y F , y 2 ∈ ∆ y T : S ( x, y 1 ) ∨ ¬ S ( x, y 2 ) (214) ∀ x ∈ ∆ x 0 , y 1 ∈ ∆ y F , y 2 ∈ ∆ y F : S ( x, y 1 ) ∨ ¬ S ( x, y 2 ) (215) for (3): ∀ x ∈ ∆ x 0 , y 1 , y 2 ∈ ∆ y T : ¬ S ( x, y 1 ) ∨ ¬ S ( x, y 2 ) (216) ∀ x ∈ ∆ x 0 , y 1 ∆ y T , y 2 ∈ ∆ y F : ¬ S ( x, y 1 ) ∨ ¬ S ( x, y 2 ) (217) ∀ x ∈ ∆ x 0 , y 1 ∈ ∆ y F , y 2 ∈ ∆ y T : ¬ S ( x, y 1 ) ∨ ¬ S ( x, y 2 ) (218) ∀ x ∈ ∆ x 0 , y 1 ∈ ∆ y F , y 2 ∈ ∆ y F : ¬ S ( x, y 1 ) ∨ ¬ S ( x, y 2 ) (219) for (4): ∀ x ∈ ∆ x 0 , y ∈ ∆ y F : S ( x, y ) (220) ∀ x 1 , x 2 ∈ ∆ x 0 , y ∈ ∆ y T : S ( x 1 , y ) ∨ S ( x 2 , y ) (221) for (5): ∀ x ∈ ∆ x 0 , y ∈ ∆ y F : ¬ S ( x, y ) (222) ∀ x ∈ ∆ x 0 , y ∈ ∆ y T : S ( x, y ) (223) for (6): ∀ x ∈ ∆ x 0 , y ∈ ∆ y T : ¬ S ( x, y ) (224) ∀ x 1 , x 2 ∈ ∆ x 0 , y ∈ ∆ y F : ¬ S ( x 1 , y ) ∨ ¬ S ( x 2 , y ) (225) for (7): ∀ x ∈ ∆ x 0 , y ∈ ∆ y T : S ( x, y ) (226) ∀ x ∈ ∆ x 0 , y ∈ ∆ y F : S ( x, y ) (227) for (8): F alse (228) for (9): ∀ x ∈ ∆ x 0 , y ∈ ∆ y T : ¬ S ( x, y ) (229) ∀ x ∈ ∆ x 0 , y ∈ ∆ y F : ¬ S ( x, y ) (230) 16 If either one of clauses #5, #7, #8 or #9 are in the theory , then unit propagation either giv es F alse or satisfies all clauses. Assume none of these four clauses are in the theory . If both clauses #4 and #6 are in a theory , again unit propagation gi ves either F alse or satisfies all clauses. If none of them are in the theory , then the other clauses are a subset of the initial 9 clauses that we started with. So let’ s consider the case where we hav e clause #4 and a subset of the first three clauses (the case with #6 instead of #4 is similar). In this case, if clauses #2 or #3 are in the theory , unit propagation either giv es F alse or satisfies all the clauses. If none of them are in the theory and only #1 is in the theory , we will hav e the following clauses after unit propagation: ∀ x ∈ ∆ x 0 , y ∈ ∆ y F : S ( x, y ) (231) ∀ x 1 , x 2 ∈ ∆ x 0 , y ∈ ∆ y T : S ( x 1 , y ) ∨ S ( x 2 , y ) (232) ∀ x ∈ ∆ x 0 , y 1 , y 2 ∈ ∆ y T : S ( x, y 1 ) ∨ S ( x, y 2 ) (233) The first clause is independent of the other two clauses. The second and third clauses are just similar to clauses #4 and #1 in the initial list of clauses and we can handle them using the same procedure. If we use a cache to store computations for all subproblems, WFOMC is domain-liftable, i.e. polynomial in the population sizes. 9.6 Proof of Lemma 2 Pr oof. Let ψ be the set of pairs ( i, j ) such that the singleton clause ∀ p i ∈ ∆ p i , q j ∈ ∆ q j : S ( p i , q j ) is in the theory , and ψ be the set of pairs ( i, j ) such that the singleton clause ∀ p i ∈ ∆ p i , q j ∈ ∆ q j : ¬ S ( p i , q j ) is in the theory . Then the singleton clauses can be written as follows: ∀ ( i, j ) ∈ ψ : ∀ p i ∈ ∆ p i , q j ∈ ∆ q j : S ( p i , q j ) (234) ∀ ( i, j ) ∈ ψ : ∀ p i ∈ ∆ p i , q j ∈ ∆ q j : ¬ S ( p i , q j ) (235) And the 2S clauses are as in Lemma 1. W ithout loss of generality , let’ s assume we select an individual N ∈ ∆ p 1 for domain recursion, and re-write all clauses to separate N from ∆ p 1 . Assuming ∆ p 0 1 , = ∆ p 1 − { N } and ∆ x 0 = ∆ x − { N } , the theory will be: For singletons: ∀ (1 , j ) ∈ ψ : ∀ q j ∈ ∆ q j : S ( N , q j ) (236) ∀ (1 , j ) ∈ ψ : ∀ q j ∈ ∆ q j : ¬ S ( N , q j ) (237) ∀ (1 , j ) ∈ ψ : ∀ p 0 1 ∈ ∆ p 0 1 , , q j ∈ ∆ q j : S ( p 0 1 , q j ) (238) ∀ (1 , j ) ∈ ψ : ∀ p 0 1 ∈ ∆ p 0 1 , , q j ∈ ∆ q j : ¬ S ( p 0 1 , q j ) (239) ∀ ( i 6 = 1 , j ) ∈ ψ : ∀ p i ∈ ∆ p i , q j ∈ ∆ q j : S ( p i , q j ) (240) ∀ ( i 6 = 1 , j ) ∈ ψ : ∀ p i ∈ ∆ p i , q j ∈ ∆ q j : ¬ S ( p i , q j ) (241) for (1): ∀ y 1 , y 2 ∈ ∆ y : S ( N , y 1 ) ∨ S ( N , y 2 ) (242) ∀ x ∈ ∆ x 0 , y 1 , y 2 ∈ ∆ y : S ( x, y 1 ) ∨ S ( x, y 2 ) (243) for (2): ∀ y 1 , y 2 ∈ ∆ y : S ( N , y 1 ) ∨ ¬ S ( N , y 2 ) (244) ∀ x ∈ ∆ x 0 , y 1 , y 2 ∈ ∆ y : S ( x, y 1 ) ∨ ¬ S ( x, y 2 ) (245) for (3): ∀ y 1 , y 2 ∈ ∆ y : ¬ S ( N , y 1 ) ∨ ¬ S ( N , y 2 ) (246) ∀ x ∈ ∆ x 0 , y 1 , y 2 ∈ ∆ y : ¬ S ( x, y 1 ) ∨ ¬ S ( x, y 2 ) (247) for (4): ∀ x ∈ ∆ x 0 , y ∈ ∆ y : S ( N , y ) ∨ S ( x, y ) (248) ∀ x 1 , x 2 ∈ ∆ x 0 , y ∈ ∆ y : S ( x 1 , y ) ∨ S ( x 2 , y ) (249) 17 for (5): ∀ x ∈ ∆ x 0 , y ∈ ∆ y : S ( N , y ) ∨ ¬ S ( x, y ) (250) ∀ x ∈ ∆ x 0 , y ∈ ∆ y : ¬ S ( N , y ) ∨ S ( x, y ) (251) ∀ x 1 , x 2 ∈ ∆ x 0 , y ∈ ∆ y : S ( x 1 , y ) ∨ ¬ S ( x 2 , y ) (252) for (6): ∀ x ∈ ∆ x 0 , y ∈ ∆ y : ¬ S ( N , y ) ∨ ¬ S ( x, y ) (253) ∀ x 1 , x 2 ∈ ∆ x 0 , y ∈ ∆ y : ¬ S ( x 1 , y ) ∨ ¬ S ( x 2 , y ) (254) for (7): ∀ x ∈ ∆ x 0 , y 1 , y 2 ∈ ∆ y : S ( N , y 1 ) ∨ S ( x, y 2 ) (255) ∀ x 1 , x 2 ∈ ∆ x 0 , y 1 , y 2 ∈ ∆ y : S ( x 1 , y 1 ) ∨ S ( x 2 , y 2 ) (256) for (8): ∀ x ∈ ∆ x 0 , y 1 , y 2 ∈ ∆ y : S ( N , y 1 ) ∨ ¬ S ( x, y 2 ) (257) ∀ x ∈ ∆ x 0 , y 1 , y 2 ∈ ∆ y : ¬ S ( N , y 1 ) ∨ S ( x, y 2 ) (258) ∀ x 1 , x 2 ∈ ∆ x 0 , y 1 , y 2 ∈ ∆ y : S ( x 1 , y 1 ) ∨ ¬ S ( x 2 , y 2 ) (259) for (9): ∀ x ∈ ∆ x 0 , y 1 , y 2 ∈ ∆ y : ¬ S ( N , y 1 ) ∨ ¬ S ( x, y 2 ) (260) ∀ x 1 , x 2 ∈ ∆ x 0 , y 1 , y 2 ∈ ∆ y : ¬ S ( x 1 , y 1 ) ∨ ¬ S ( x 2 , y 2 ) (261) W e apply lifted case-analysis on each S ( N , ∆ q j ) . For each j , let ∆ q T j represent the indi viduals in ∆ q j for which S ( N , q j ) is true and ∆ q F j be the other individuals. For each j , lifted case-analysis adds two clauses to the theory as follo ws: ∀ q j ∈ ∆ q T j : S ( N , q j ) (262) ∀ q j ∈ ∆ q F j : ¬ S ( N , q j ) (263) W e shatter all other singleton clauses based on these newly added singletons. If the singletons are inconsistent, there is no model. Otherwise, let y T represent ∪ j q T j and y F represent ∪ j q F j . W e add the following tw o singleton clauses to the theory: ∀ y ∈ ∆ y T : S ( N , y ) (264) ∀ y ∈ ∆ y F : ¬ S ( N , y ) (265) W e shatter all clauses having 2S based on these two singletons (not considering the shattering caused by the other singletons) and apply unit propagation. Then the theory will be as follo ws (the details can be checked in Lemma 1. Here we only consider the case where y T 6 = ∅ and y F 6 = ∅ ; the case where one of them is empty can be considered similarly as in Lemma 1): For singletons: ∀ j : ∀ q j ∈ ∆ q T j : S ( N , q j ) (266) ∀ j : ∀ q j ∈ ∆ q F j : ¬ S ( N , q j ) (267) ∀ (1 , j ) ∈ ψ : ∀ p 0 1 ∈ ∆ p 0 1 , q j ∈ ∆ q T j : S ( p 0 1 , q j ) (268) ∀ (1 , j ) ∈ ψ : ∀ p 0 1 ∈ ∆ p 0 1 , q j ∈ ∆ q F j : S ( p 0 1 , q j ) (269) ∀ (1 , j ) ∈ ψ : ∀ p 0 1 ∈ ∆ p 0 1 , q j ∈ ∆ q T j : ¬ S ( p 0 1 , q j ) (270) ∀ (1 , j ) ∈ ψ : ∀ p 0 1 ∈ ∆ p 0 1 , q j ∈ ∆ q F j : ¬ S ( p 0 1 , q j ) (271) ∀ ( i 6 = 1 , j ) ∈ ψ : ∀ p i ∈ ∆ p i , q j ∈ ∆ q T j : S ( p i , q j ) (272) ∀ ( i 6 = 1 , j ) ∈ ψ : ∀ p i ∈ ∆ p i , q j ∈ ∆ q F j : S ( p i , q j ) (273) ∀ ( i 6 = 1 , j ) ∈ ψ : ∀ p i ∈ ∆ p i , q j ∈ ∆ q T j : ¬ S ( p i , q j ) (274) ∀ ( i 6 = 1 , j ) ∈ ψ : ∀ p i ∈ ∆ p i , q j ∈ ∆ q F j : ¬ S ( p i , q j ) (275) 18 The two singletons on ∆ y F and ∆ y T : ∀ y ∈ ∆ y T : S ( N , y ) (276) ∀ y ∈ ∆ y F : ¬ S ( N , y ) (277) for (1): ∀ x ∈ ∆ x 0 , y 1 , y 2 ∈ ∆ y T : S ( x, y 1 ) ∨ S ( x, y 2 ) (278) ∀ x ∈ ∆ x 0 , y 1 ∈ ∆ y T , y 2 ∈ ∆ y F : S ( x, y 1 ) ∨ S ( x, y 2 ) (279) ∀ x ∈ ∆ x 0 , y 1 ∈ ∆ y F , y 2 ∈ ∆ y T : S ( x, y 1 ) ∨ S ( x, y 2 ) (280) ∀ x ∈ ∆ x 0 , y 1 , y 2 ∈ ∆ y F : S ( x, y 1 ) ∨ S ( x, y 2 ) (281) for (2): ∀ x ∈ ∆ x 0 , y 1 , y 2 ∈ ∆ y T : S ( x, y 1 ) ∨ ¬ S ( x, y 2 ) (282) ∀ x ∈ ∆ x 0 , y 1 ∈ ∆ y T , y 2 ∈ ∆ y F : S ( x, y 1 ) ∨ ¬ S ( x, y 2 ) (283) ∀ x ∈ ∆ x 0 , y 1 ∈ ∆ y F , y 2 ∈ ∆ y T : S ( x, y 1 ) ∨ ¬ S ( x, y 2 ) (284) ∀ x ∈ ∆ x 0 , y 1 ∈ ∆ y F , y 2 ∈ ∆ y F : S ( x, y 1 ) ∨ ¬ S ( x, y 2 ) (285) for (3): ∀ x ∈ ∆ x 0 , y 1 , y 2 ∈ ∆ y T : ¬ S ( x, y 1 ) ∨ ¬ S ( x, y 2 ) (286) ∀ x ∈ ∆ x 0 , y 1 ∆ y T , y 2 ∈ ∆ y F : ¬ S ( x, y 1 ) ∨ ¬ S ( x, y 2 ) (287) ∀ x ∈ ∆ x 0 , y 1 ∈ ∆ y F , y 2 ∈ ∆ y T : ¬ S ( x, y 1 ) ∨ ¬ S ( x, y 2 ) (288) ∀ x ∈ ∆ x 0 , y 1 ∈ ∆ y F , y 2 ∈ ∆ y F : ¬ S ( x, y 1 ) ∨ ¬ S ( x, y 2 ) (289) for (4): ∀ x ∈ ∆ x 0 , y ∈ ∆ y F : S ( x, y ) (290) ∀ x 1 , x 2 ∈ ∆ x 0 , y ∈ ∆ y T : S ( x 1 , y ) ∨ S ( x 2 , y ) (291) for (5): ∀ x ∈ ∆ x 0 , y ∈ ∆ y F : ¬ S ( x, y ) (292) ∀ x ∈ ∆ x 0 , y ∈ ∆ y T : S ( x, y ) (293) for (6): ∀ x ∈ ∆ x 0 , y ∈ ∆ y T : ¬ S ( x, y ) (294) ∀ x 1 , x 2 ∈ ∆ x 0 , y ∈ ∆ y F : ¬ S ( x 1 , y ) ∨ ¬ S ( x 2 , y ) (295) for (7): ∀ x ∈ ∆ x 0 , y ∈ ∆ y T : S ( x, y ) (296) ∀ x ∈ ∆ x 0 , y ∈ ∆ y F : S ( x, y ) (297) for (8): F alse (298) for (9): ∀ x ∈ ∆ x 0 , y ∈ ∆ y T : ¬ S ( x, y ) (299) ∀ x ∈ ∆ x 0 , y ∈ ∆ y F : ¬ S ( x, y ) (300) Clauses number 266, 267, 276 and 277 are disconnected from the rest of the theory and can be reasoned about separately . It is trivial to lift these clauses. Now let’ s consider the other clauses. 19 If either one of the clauses #5, #7, #8. or #9 are in the theory , then unit propagation either giv es false or satisfies all clauses. The same is true when both #4 and #6 are in the theory . If neither #4 nor #6 are in the theory , then we can conjoin the indi viduals in ∆ y T and ∆ y F as well as those in ∆ q j T and ∆ q j F and write the theory as follows: For singletons: ∀ (1 , j ) ∈ ψ : ∀ p 0 1 ∈ ∆ p 0 1 , q j ∈ ∆ q j : S ( p 0 1 , q j ) (301) ∀ (1 , j ) ∈ ψ : ∀ p 0 1 ∈ ∆ p 0 1 , q j ∈ ∆ q j : ¬ S ( p 0 1 , q j ) (302) ∀ ( i 6 = 1 , j ) ∈ ψ : ∀ p i ∈ ∆ p i , q j ∈ ∆ q j : S ( p i , q j ) (303) ∀ ( i 6 = 1 , j ) ∈ ψ : ∀ p i ∈ ∆ p i , q j ∈ ∆ q j : ¬ S ( p i , q j ) (304) for (1): ∀ x ∈ ∆ x 0 , y 1 , y 2 ∈ ∆ y : S ( x, y 1 ) ∨ S ( x, y 2 ) (305) for (2): ∀ x ∈ ∆ x 0 , y 1 , y 2 ∈ ∆ y : S ( x, y 1 ) ∨ ¬ S ( x, y 2 ) (306) for (3): ∀ x ∈ ∆ x 0 , y 1 , y 2 ∈ ∆ y : ¬ S ( x, y 1 ) ∨ ¬ S ( x, y 2 ) (307) This theory is an instance of our initial theory , b ut with p 1 having a smaller domain size. So we can continue this process recursiv ely on the remaining clauses. Now let’ s consider the case where #4 is in the theory but #6 is not (the case where #6 is in the theory and #4 is not is similar). In this case, if #2 or #3 are in the theory , then unit propagation either gives false or satisfies all the clauses. If #4 and #1 are in the theory , then the theory is as follows: For singletons: ∀ (1 , j ) ∈ ψ : ∀ p 0 1 ∈ ∆ p 0 1 , q j ∈ ∆ q T j : S ( p 0 1 , q j ) (308) ∀ (1 , j ) ∈ ψ : ∀ p 0 1 ∈ ∆ p 0 1 , q j ∈ ∆ q F j : S ( p 0 1 , q j ) (309) ∀ (1 , j ) ∈ ψ : ∀ p 0 1 ∈ ∆ p 0 1 , q j ∈ ∆ q T j : ¬ S ( p 0 1 , q j ) (310) ∀ (1 , j ) ∈ ψ : ∀ p 0 1 ∈ ∆ p 0 1 , q j ∈ ∆ q F j : ¬ S ( p 0 1 , q j ) (311) ∀ ( i 6 = 1 , j ) ∈ ψ : ∀ p i ∈ ∆ p i , q j ∈ ∆ q T j : S ( p i , q j ) (312) ∀ ( i 6 = 1 , j ) ∈ ψ : ∀ p i ∈ ∆ p i , q j ∈ ∆ q F j : S ( p i , q j ) (313) ∀ ( i 6 = 1 , j ) ∈ ψ : ∀ p i ∈ ∆ p i , q j ∈ ∆ q T j : ¬ S ( p i , q j ) (314) ∀ ( i 6 = 1 , j ) ∈ ψ : ∀ p i ∈ ∆ p i , q j ∈ ∆ q F j : ¬ S ( p i , q j ) (315) (316) for (1): ∀ x ∈ ∆ x 0 , y 1 , y 2 ∈ ∆ y T : S ( x, y 1 ) ∨ S ( x, y 2 ) (317) for (4): ∀ x ∈ ∆ x 0 , y ∈ ∆ y F : S ( x, y ) (318) ∀ x 1 , x 2 ∈ ∆ x 0 , y ∈ ∆ y T : S ( x 1 , y ) ∨ S ( x 2 , y ) (319) Clause number 318 and the singleton clauses having q j ∈ ∆ q F j are disconnected from the rest of the theory and can reasoned about separately . They can be trivially lifted. Once we remove these clauses, the theory will be as follows: 20 ∀ (1 , j ) ∈ ψ : ∀ p 0 1 ∈ ∆ p 0 1 , q j ∈ ∆ q T j : S ( p 0 1 , q j ) (320) ∀ (1 , j ) ∈ ψ : ∀ p 0 1 ∈ ∆ p 0 1 , q j ∈ ∆ q T j : ¬ S ( p 0 1 , q j ) (321) ∀ ( i 6 = 1 , j ) ∈ ψ : ∀ p i ∈ ∆ p i , q j ∈ ∆ q T j : S ( p i , q j ) (322) ∀ ( i 6 = 1 , j ) ∈ ψ : ∀ p i ∈ ∆ p i , q j ∈ ∆ q T j : ¬ S ( p i , q j ) (323) ∀ x ∈ ∆ x 0 , y 1 , y 2 ∈ ∆ y T : S ( x, y 1 ) ∨ S ( x, y 2 ) (324) ∀ x 1 , x 2 ∈ ∆ x 0 , y ∈ ∆ y T : S ( x 1 , y ) ∨ S ( x 2 , y ) (325) which is an instance of our initial theory , but where ∆ q j s have smaller domain sizes. So we can continue this process recursiv ely on the remaining clauses. W e showed that in all cases, after domain recursion we will hav e an instance of our initial theory again, b ut with smaller domain sizes. By keeping the WFOMC of sub-problems in a cache, the whole process will be domain-liftable: i.e. polynomial in the population sizes. 9.7 Proof of Pr oposition 4 Pr oof. Let T ∈ FO 2 and T 0 be any of the theories resulting from exhaustiv ely applying rules in R expect lifted case-analysis on T . If T initially contains a unary PR V with predicate S , either it is still unary in T 0 or lifted decomposition has replaced the L V with a constant. In the first case, we can follow a generic branch of lifted case-analysis on S , and in the second case, either T 0 is empty or all binary PR Vs in T hav e become unary in T 0 due to applying the lifted decomposition and we can follow a generic branch of lifted case-analysis for any of these PR Vs. The generic branch in both cases is in F O 2 and the same procedure can be followed until all theories become empty . If T initially contains only binary PR Vs, lifted decomposition applies as the grounding of T is disconnected for each pair of individuals, and after lifted decomposition all PR Vs have no L Vs. Applying case analysis on all PR Vs gives empty theories. Therefore, T ∈ RU . The theory ∀ x, y , z ∈ ∆ p : F ( x, y ) ∨ F ( y , z ) ∨ F ( x, y , z ) is an example of a RU theory that is not in F O 2 , showing RU 6⊂ F O 2 . F O 2 and RU are special cases of S 2 F O 2 and S 2 RU respectiv ely , where α = ∅ , showing F O 2 ⊂ S 2 F O 2 and RU ⊂ S 2 R U . Howe ver , Example 3 is both in S 2 F O 2 and S 2 RU but is not in F O 2 and not in RU , showing S 2 F O 2 6⊂ FO 2 and S 2 R U 6⊂ R U . Since F O 2 ⊂ RU and the class of added α ( S ) clauses are the same, S 2 F O 2 ⊂ S 2 R U . References [1] Babak Ahmadi, Kristian Kersting, and Sriraam Natarajan. Lifted online training of relational models with stochastic gradient methods. In ECML PKDD , pages 585–600, 2012. [2] W . W . Rouse Ball. Other questions on probability . Mathematical Recreations and Essays , page 45, 1960. [3] Paul Beame, Guy V an den Broeck, Eric Gribkof f, and Dan Suciu. Symmetric weighted first-order model counting. In PODS , pages 313–328, 2015. [4] Hung Hai Bui, T uyen N Huynh, Artificial Intelligence Center , and Sebastian Riedel. Automorphism groups of graphical models and lifted variational inference. In U AI , page 132, 2013. [5] Jaesik Choi, Rodrigo de Salvo Braz, and Hung H. Bui. Efficient methods for lifted inference with aggregate factors. In AAAI , 2011. [6] Nilesh Dalvi and Dan Suciu. Ef ficient query ev aluation on probabilistic databases. The VLDB Journal , 16(4):523–544, 2007. [7] Luc De Raedt, Angelika Kimmig, and Hannu T oi vonen. ProbLog: A probabilistic Prolog and its application in link discov ery . In IJCAI , volume 7, 2007. [8] Luc De Raedt, Kristian Kersting, Sriraam Natarajan, and David Poole. Statistical relational artificial intelligence: Logic, probability , and computation. Synthesis Lectures on Artificial Intelligence and Mac hine Learning , 10(2):1–189, 2016. [9] Rodrigo de Salvo Braz, Eyal Amir , and Dan Roth. Lifted first-order probabilistic inference. In IJCAI , pages 1319–1325, 2005. 21 [10] Lise Getoor and Ben T askar . Intr oduction to statistical r elational learning . MIT press, 2007. [11] V ibhav Gogate and Pedro Domingos. Probabilistic theorem proving. In U AI , pages 256–265, 2011. [12] Manfred Jaeger . Relational Bayesian networks. In U AI . Morgan Kaufmann Publishers Inc., 1997. [13] Y acine Jernite, Alexander M Rush, and Da vid Sontag. A fast v ariational approach for learning Markov random field language models. In ICML , 2015. [14] Abhay Jha, V ibhav Gogate, Ale xandra Meliou, and Dan Suciu. Lifted inference seen from the other side: The tractable features. In NIPS , pages 973–981, 2010. [15] Seyed Mehran Kazemi and David Poole. Kno wledge compilation for lifted probabilistic inference: Compiling to a low-le vel language. In KR , 2016. [16] Seyed Mehran Kazemi and Da vid Poole. Why is compiling lifted inference into a lo w-level language so effecti ve? arXiv pr eprint arXiv:1606.04512 , 2016. [17] Kristian Kersting, Babak Ahmadi, and Sriraam Natarajan. Counting belief propagation. In U AI , pages 277–284, 2009. [18] Daphne K oller and Nir Friedman. Pr obabilistic Graphical Models: Principles and T echniques . MIT Press, Cambridge, MA, 2009. [19] T imothy K opp, Parag Singla, and Henry Kautz. Lifted symmetry detection and breaking for MAP inference. In NIPS , pages 1315–1323, 2015. [20] Brian Milch, Luke S. Zettlemoyer , Kristian Kersting, Michael Haimes, and Leslie P ack Kaelbling. Lifted probabilistic inference with counting formulae. In AAAI , pages 1062–1068, 2008. [21] Mathias Niepert. Markov chains on orbits of permutation groups. In U AI , 2012. [22] David Poole, F ahiem Bacchus, and Jacek Kisynski. T o wards completely lifted search-based probabilistic inference. arXiv:1107.4035 [cs.AI] , 2011. [23] David Poole. First-order probabilistic inference. In IJCAI , pages 985–991, 2003. [24] Matthew Richardson and Pedro Domingos. Markov logic netw orks. Machine Learning , 62:107–136, 2006. [25] Parag Singla and Pedro M Domingos. Lifted first-order belief propagation. In AAAI , volume 8, pages 1094–1099, 2008. [26] Dan Suciu, Dan Olteanu, Christopher Ré, and Christoph K och. Probabilistic databases. Synthesis Lectures on Data Management , 3(2):1–180, 2011. [27] Nima T aghipour, Daan Fierens, Guy V an den Broeck, Jesse Davis, and Hendrik Block eel. Completeness results for lifted variable elimination. In AIST A TS , pages 572–580, 2013. [28] Guy V an den Broeck, Nima T aghipour , W annes Meert, Jesse Davis, and Luc De Raedt. Lifted probabilistic inference by first-order knowledge compilation. In IJCAI , pages 2178–2185, 2011. [29] Guy V an den Broeck, Arthur Choi, and Adnan Darwiche. Lifted relax, compensate and then recov er: From approximate to exact lifted probabilistic inference. In U AI , 2012. [30] Guy V an den Broeck, W annes Meert, and Adnan Darwiche. Skolemization for weighted first-order model counting. In KR , 2014. [31] Guy V an den Broeck. On the completeness of first-order kno wledge compilation for lifted probabilistic inference. In NIPS , pages 1386–1394, 2011. [32] Jan V an Haaren, Guy V an den Broeck, W annes Meert, and Jesse Davis. Lifted generativ e learning of Markov logic netw orks. Machine Learning , pages 1–29, 2015. [33] Deepak V enugopal and V ibha v Gogate. Evidence-based clustering for scalable inference in Markov logic. In ECML PKDD , pages 258–273, 2014. [34] Deepak V enugopal and V ibha v G Gogate. Scaling-up importance sampling for Markov logic networks. In NIPS , pages 2978–2986, 2014. 22

Original Paper

Loading high-quality paper...

Comments & Academic Discussion

Loading comments...

Leave a Comment