A. Darwiche Knowledge Compilation Jinbo Huang NICTA and ANU Slides made by Adnan Darwiche and Jinbo Huang
A. Darwiche Propositional Logic X Y A C B A okX B A okX B B okY C B okY C KB = Is A, C a normal device behavior?
A. Darwiche Propositional Reasoning A okX B A okX B B okY C B okY C Is A, C a normal device behavior? A okX B A okX B B okY C B okY C A, C, okX, okY Satisfiability Algorithm
A. Darwiche SAT Solvers: Significant growth in last decade; many solvers publicly available (source code); millions of clauses not uncommon. Applications: Verification, planning, diagnosis, CAD, non-propositional reasoning (e.g., SMT), … Satisfiability (SAT)
A. Darwiche A okX B A okX B B okY C B okY C Compiled Structure Compiler Evaluator (Polytime) Queries Knowledge Compilation
A. Darwiche ? Compiler Evaluator (Polytime) Queries Knowledge Compilation A okX B A okX B B okY C B okY C
A. Darwiche..... Prime Implicates OBDD … Compiler Evaluator (Polytime) Queries Knowledge Compilation A okX B A okX B B okY C B okY C
A. Darwiche Knowledge Compilation Map What’s the space of possible target compilation languages? Can it be synthesized in a semantically systematic way? How do the languages compare? Succinctness (relative size) Operations they support in polytime
A. Darwiche Diagnosis Is this a normal behavior? What are the possible faults? Planning Can this goal be achieved? Generate plan with highest reward Generate plan with highest success probability Probabilistic reasoning What is the probability of X given Y Formal verification / CAD: Is it possible that the design will exhibit behavior X? Are two designs equivalent? Applications
A. Darwiche Knowledge Compilation Map For a given application: identify needed operations Choose most succinct language that supports desired operations Compile knowledge base into chosen language
A. Darwiche Agenda Part I: Languages Part II: Operations Part III: Compilers Part IV: Applications
A. Darwiche Part I: Languages
A. Darwiche Succinctness Polytime Operations Consistency (CO) Validity (VA) Clausal entailment (CE) Sentential entailment (SE) Implicant testing (IP) Equivalence testing (EQ) Model Counting (CT) Model enumeration (ME) Projection (exist. quantification) Conditioning Conjoin, Disjoin, Negate Decomposability Determinism Smoothness Flatness Decision Ordering Negation Normal Form AA B B AC D D C and or and or A Knowledge Compilation MAP
A. Darwiche Propositional Logic Literal Clause Term CNF: Conjunctive Normal Form DNF: Disjunctive Normal Form
A. Darwiche Propositional Logic Truth assignment (TA) TA satisfies sentence (model) Following TA is not a model
A. Darwiche Succinctness Polytime Operations Consistency (CO) Validity (VA) Clausal entailment (CE) Sentential entailment (SE) Implicant testing (IP) Equivalence testing (EQ) Model Counting (CT) Model enumeration (ME) Projection (exist. quantification) Conditioning Conjoin, Disjoin, Negate Decomposability Determinism Smoothness Flatness Decision Ordering Negation Normal Form AA B B AC D D C and or and or A Knowledge Compilation MAP
A. Darwiche Queries Consistency (CO) Validity (VA) Sentential entailment (SE) Clausal entailment (CE): KB implies clause Implicant testing (IP): term implies KB Equivalence testing (EQ) Model Counting (CT) Model enumeration (ME)
A. Darwiche Transformations Projection (existential quantification) Conditioning Conjoin Disjoin Negate
A. Darwiche Representation vs Compilation Languags Representation Language (intuitive): CNF DNF Target Compilation Language (tractable): Binary Decision Diagrams (BDDs) DNNF
A. Darwiche AA B B AC D D C and or and or rooted DAG (Circuit) Negation Normal Form
A. Darwiche AA B B AC D D C and or and or Decomposability Determinism Smoothness Flatness Decision Ordering Negation Normal Form
A. Darwiche AA B B AC D D C and or and or A,B C,D Decomposability
A. Darwiche NNF DNNF CO, CE, ME NNF Subsets
A. Darwiche AA B B AC D D C and or and or Determinism
A. Darwiche AA B B AC D D C and or and or Smoothness
A. Darwiche NNF d-NNFs-NNF sd-DNNF DNNF CO, CE, ME d-DNNF VA,IP,CT NNF Subsets EQ?
A. Darwiche XXX YYY ZZZ and or and Nested vs Flat languages (X Y Z) (Z X Y) (Y Z X) ( X Y Z) Flatness
A. Darwiche XXX YYY ZZZ and or and Simple conjunction implies decomposability Simple Conjunction
A. Darwiche XXXYZ or and or Simple Disjunction
A. Darwiche NNF d-NNFs-NNFf-NNF sd-DNNF DNNF CO, CE, ME d-DNNF VA,IP,CT EQ? CNF DNF NNF Subsets
A. Darwiche Prime Implicates (PI) A CNF such that: No clause subsumes another If a clause is implied by the CNF, it must be implied by a clause in the CNF CNF: PI: Resolution
A. Darwiche Prime Implicants (IP) A DNF such that: No term subsumes another If a term implies the DNF, it must imply a term in the DNF DNF: IP: Consensus
A. Darwiche NNF d-NNFs-NNFf-NNF sd-DNNF DNNF CO, CE, ME d-DNNF VA,IP,CT EQ? CNF DNF IP PI CO,CE,ME VA,IP,SE,EQ VA,IP, SE,EQ NNF Subsets
A. Darwiche X XX and or and Decision Are decision nodes
A. Darwiche or and X1 X1 or and X2 X2 and X3 X3 or truefalse Decision
A. Darwiche X XX and or and X Decision
A. Darwiche X1 X2 X3 1 0 or and X1 X1 or and X2 X2 and X3 X3 or truefalse Binary Decision Diagrams (BDDs) Decision implies determinism
A. Darwiche NNF d-NNFs-NNFf-NNF sd-DNNF DNNF CO, CE, ME d-DNNF VA,IP,CT EQ? CNF DNF IP PI CO,CE,ME VA,IP,SE,EQ VA,IP, SE,EQ BDD NNF Subsets
A. Darwiche X1 X2 X3 1 0 or and X1 X1 or and X2 X2 and X3 X3 or truefalse Binary Decision Diagrams (BDDs) Decision + decomposability = FBDD Test once property
A. Darwiche NNF d-NNFs-NNFf-NNF sd-DNNF DNNF CO, CE, ME d-DNNF VA,IP,CT EQ? CNF DNF IP PI CO,CE,ME VA,IP,SE,EQ VA,IP, SE,EQ BDD FBDD EQ? MODS SE,EQ NNF Subsets
A. Darwiche X1 X2 X3 1 0 or and X1 X1 or and X2 X2 and X3 X3 or truefalse Binary Decision Diagrams (BDDs) Decision + decomposability + ordering = OBDD
A. Darwiche NNF d-NNFs-NNFf-NNF sd-DNNF DNNF CO, CE, ME d-DNNF VA,IP,CT EQ? CNF DNF IP PI CO,CE,ME VA,IP,SE,EQ VA,IP, SE,EQ BDD FBDD EQ? OBDD SE,EQ MODS SE,EQ NNF Subsets
A. Darwiche OBDD Example: Odd Parity X1 X2 X3 X4 1 X2 X3 X4 0 Symmetric Functions
A. Darwiche Language Succinctness Size n Size p(n) L1 <= L2 L1 at least as succinct as L2 L1 < L2 L1 is more succinct than L2
A. Darwiche AA B B AC D D C and or and or Odd Parity Function A B C D 1 B C D 0
NNF DNNF CNF d-DNNF DNF PI FBDD OBDD IP MODS sd-DNNF PI <= DNNF DNNF <=? PI DNF <= OBDD OBDD <= DNF = *
A. Darwiche OBDD FBDD d-DNNF DNNF Space Efficiency (succinctness) Tractable Operations NNF decomposability determinism decision ordering Diagnosis, Non-mon Probabilistic reasoning Tractability & Succinctness
A. Darwiche Separating Functions OBDD/FBDD: Hidden weighted bit function hwb(x 1,..,x n ) DNNF/DNF: odd parity function parity(x 1,..,x n ) DNNF/OBDD: Distinct integers function distinct(x 1,..,x n )
A. Darwiche Agenda Part I: Languages Part II: Operations Part III: Compilers Part IV: Applications
A. Darwiche Part II: Operations
A. Darwiche KB Compiled Structure Compiler Evaluator (Polytime) Queries Knowledge Compilation
A. Darwiche Queries Consistency (CO) Validity (VA) Sentential entailment (SE) Clausal entailment (CE): KB implies clause Implicant testing (IP): term implies KB Equivalence testing (EQ) Model Counting (CT) Model enumeration (ME)
A. Darwiche Transformations Projection (existential quantification) Conditioning Conjoin Disjoin Negate
A. Darwiche Decomposability
A. Darwiche AA B B AC D D C and or and or A,B C,D Decomposability
A. Darwiche X Y A C B A okX B A okX B B okY C B okY C Example Knowledge Base
A. Darwiche Decomposable or and or AC ~A ~C ~okX~okY B~B
A. Darwiche Decomposable or and or AC ~A ~C ~okX~okY B~B B A, okX C, okY
A. Darwiche Decomposable or and or AC ~A ~C ~okX~okY B~B
A. Darwiche Satisfiability or and or AC ~A ~C ~okX~okY B~B y y y y y y y y y y y y y y y SAT(A or B) iff SAT(A) or SAT(B) SAT(A and B) iff SAT(A) and SAT(B) SAT(X) is true SAT(~X) is true SAT(True) is true SAT(False) is false
A. Darwiche Satisfiability or and or AC ~A ~C ~okX~okY B~B
A. Darwiche Satisfiability or and or false C ~C false ~okY B~B n y y y y n n y n n n y n y n
A. Darwiche Partial Decomposability or and or AC ~A ~C ~okZokZ B~B Decomposable except on okZ
A. Darwiche KB entails L 1 v L 2 v … v L n ? KB L 1 L 2 … L n SAT ? Clausal Entailment
A. Darwiche or and or AC ~A ~C ~okX~okY B~B and A Literal Conjoin
A. Darwiche or and or AC ~A ~C ~okX~okY B~B A Literal Conjoin
A. Darwiche or and or true C ~C ~okX~okY B~B A false Literal Conjoin Conditioning
A. Darwiche or and or true C ~C ~okX~okY B~B and A false Literal Conjoin
or and or AC ~A ~C ~okX~okY B~B A~CokXokY X Y A C B
or and or false B~B A and ~CokXokY X Y A C B false true
or and or false B~B A and ~CokXokY X Y A C B false true y n y y n n n y n n n n y y n n
A. Darwiche Partial Decomposability or and or AC ~A ~C ~okZokZ B~B Decomposable except on okZ Clausal entailment test works as long as clause mentioned all variables on which we don’t have decomposability!
or and or AC ~A ~C ~okZokZ B~B
or and or AC ~A ~C falsetrue B~B and okZ
or and or AC ~A ~C truefalse B~B and ~okZ
A. Darwiche Projection: Existential Quantification Knowledge Base Existentially quantifying B,C Forgetting B,C Projecting on A,D
A. Darwiche Projection: Existential Quantification Formal Definition If Knowledge base is a CNF: Close under resolution Remove all clauses that mention X
A. Darwiche Projection: Existential Quantification or and or AC ~A ~C ~okX~okY B~B X Y A C B
A. Darwiche Projection: Existential Quantification or and or A ~A true ~okX B~B true X Y A C B A okX B A okX B
I1 I2 I3 I4 I5 I6 O + {O} project(, I1..I6)
A. Darwiche Minimum Cardinality okY ABC true false true. false. true. false. false. okX A okX B A okX B B okY C B okY C
A. Darwiche Minimum Cardinality or and or AC ~A ~C ~okX~okY B~B
A. Darwiche Minimizing: Requires Smoothness AA B B AC D D C and or and or
A. Darwiche Minimizing AA B B AC D D C and or and or
A. Darwiche Minimizing AA B B AC D D C and or and or
A. Darwiche Minimizing AA B B AC D D C and or and or
A. Darwiche Minimizing AA B B AC D D C and or and or A,B,C,D
A. Darwiche Minimizing AA B B AC D D C and or and or A, B,C,D
A. Darwiche Minimizing AA B B AC D D C and or and or A, B,C, D
A. Darwiche Minimizing AA B B AC D D C and or and or A, B, C,D
A. Darwiche Decomposability QueryDNNF CO: ConsistencyYes VA: Validity CE: Clausal entailmentYes SE: Sentential entailment IP: Implicant testing EQ: Equivalence testing MC: Model Counting ME: Model enumerationYes
A. Darwiche Decomposability TransformationDNNF CD: ConditioningYes SFO: Single variableYes FO: Multiple variableYes &: Conjoin B&: Bounded Conjoin |: DisjoinYes B|: Bounded DisjoinYes ~: Negate
A. Darwiche Determinism
A. Darwiche AA B B AC D D C and or and or Determinism
A. Darwiche Satisfiability ABCokXokY TTTTT TTTTF ……...…… …………… …………… FFFFF A okX B A okX B B okY C B okY C A, C, okX, okY Satisfiability Algorithm Is there a satisfying assignment?
A. Darwiche Model Counting ABCokXokY TTTTT TTTTF ……...…… …………… …………… FFFFF A okX B A okX B B okY C B okY C A, C, okX, okY Counting Algorithm How many satisfying assignments?
A. Darwiche Counting Models AA B B AC D D C and or and or
A. Darwiche Counting Graph ******** ++++ ** AA B B AC D D C
A. Darwiche Counting Models AA B B AC D D C and or and or S={A, B}
A. Darwiche Counting Models false true C D D C and or and or S={A, B}
A. Darwiche Counting Graph ******** ++++ ** false true C D D C S={A, B}
A. Darwiche Counting Graph AA B B AC D D C ******** ++++ ** +
A. Darwiche Counting Graph VAVA VBVB V B VAVA VCVC V D VDVD V C ******** ++++ ** +
A. Darwiche Counting Graph VAVA VBVB V B VAVA VCVC V D VDVD V C ******** ++++ ** + S={A, B}
A. Darwiche Counting Graph VAVA VBVB V B VAVA VCVC V D VDVD V C ******** ++++ ** +
A. Darwiche Counting Graph VAVA VBVB V B VAVA VCVC V D VDVD V C ******** ++++ ** + S={A, B,C}
A. Darwiche Asserting Literals VAVA VBVB V B VAVA VCVC V D VDVD V C ******** ++++ ** + S={A, B,C} { D} 1 + (-1)1 = 0 0
A. Darwiche Retracting Literals VAVA VBVB V B VAVA VCVC V D VDVD V C ******** ++++ ** + S={A, B,C} \ { B} 1 + (+1)1 = 2 1
A. Darwiche Flipping Literals VAVA VBVB V B VAVA VCVC V D VDVD V C ******** ++++ ** + S={A, B,C} \ { B} { B } 1 + (+1)1 + (-1)1 = 1 1 0
A. Darwiche Testing Equivalence p okY ABC TTTTF T..T.. F..F.. T..T.. F..F.. F..F.. okX A okX B A okX B B okY C B okY C Pr(A)=.4 Pr(B)=.7 Pr(C)=.1 Pr(okX)=.9 Pr(okY)=.8
A. Darwiche Testing Equivalence Pr(A)=.50 Pr(B)=.05 Pr(C)=.74 Pr(okX)=.33 Pr(okY)=.80 KB1(A,B,C,okX,okY) KB2(A,B,C,okX,okY) : p : q If p <> q, then KB1 and KB2 not equivalent If p = q, then Pr(KB1 and KB2 are equivalent)> 1/2 Run test 100 times error is <
AA B B AC D D C and or and or
A. Darwiche Probabilistic Equivalence Testing Given propositional theories F & G Compute p(F), p(G) If p(F) p(G), F & G are not equivalent Otherwise, equivalent with probability > ½
A. Darwiche Equivalence Testing Map x y z to {1,2,3,4,5,6} x 2, y 3, z 5 x y zF(xyz) = -15(1-2) 3 5 = -202 (1-3) 5 = 12(1-2) 3 (1 - 5) = 10(1-2) (1-3) 5 Add: p(F) = -13 p(F) = p(G) F & G are equivalent with probability ≥ (m – 1) n / m n ( > ½ for m ≥ 2n)
A. Darwiche Projection under determinism or and or AC ~A ~C ~okX~okY B~B
A. Darwiche Projection under determinism or and or AC ~A ~C ~okX~okY true
A. Darwiche Determinism Queryd-DNNF CO: ConsistencyYes VA: ValidityYes CE: Clausal entailmentYes SE: Sentential entailment IP: Implicant testingYes EQ: Equivalence testing? MC: Model CountingYes ME: Model enumerationYes
A. Darwiche Determinism Transformationd-DNNF CD: ConditioningYes SFO: Single variable FO: Multiple variable &: Conjoin B&: Bounded Conjoin |: Disjoin B|: Bounded Disjoin ~: Negate?
A. Darwiche Decision
A. Darwiche X1 X2 X3 1 0 or and X1 X1 or and X2 X2 and X3 X3 or truefalse Decision
A. Darwiche Decision QueryFBDD CO: ConsistencyYes VA: ValidityYes CE: Clausal entailmentYes SE: Sentential entailment IP: Implicant testingYes EQ: Equivalence testing? MC: Model CountingYes ME: Model enumerationYes
A. Darwiche Decison TransformationFBDD CD: ConditioningYes SFO: Single variable FO: Multiple variable &: Conjoin B&: Bounded Conjoin |: Disjoin B|: Bounded Disjoin ~: NegateYes
A. Darwiche Ordering
A. Darwiche Ordering QueryOBDD CO: ConsistencyYes VA: ValidityYes CE: Clausal entailmentYes SE: Sentential entailmentYes IP: Implicant testingYes EQ: Equivalence testingYes MC: Model CountingYes ME: Model enumerationYes
A. Darwiche Ordering TransformationOBDD CD: ConditioningYes SFO: Single variableYes FO: Multiple variable &: Conjoin B&: Bounded ConjoinYes |: Disjoin B|: Bounded DisjoinYes ~: NegateYes
A. Darwiche Agenda Part I: Languages Part II: Operations Part III: Compilers Part IV: Applications
A. Darwiche Succinctness Polytime Operations Consistency (CO) Validity (VA) Clausal entailment (CE) Sentential entailment (SE) Implicant testing (IP) Equivalence testing (EQ) Model Counting (CT) Model enumeration (ME) Projection (exist. quantification) Conditioning Conjoin, Disjoin, Negate Decomposability Determinism Smoothness Flatness Decision Ordering Negation Normal Form AA B B AC D D C and or and or A Knowledge Compilation MAP
A. Darwiche NNF d-NNFs-NNFf-NNF sd-DNNF DNNF CO, CE, ME d-DNNF VA,IP,CT EQ? CNF DNF IP PI CO,CE,ME VA,IP,SE,EQ VA,IP, SE,EQ BDD FBDD EQ? OBDD SE,EQ MODS SE,EQ NNF Subsets
A. Darwiche Part III: Compilers
A. Darwiche Building Compilers To-down approaches: Based on exhaustive search Bottom-up approaches: Based on transformations
A. Darwiche x y ¬x ¬z ¬w z ¬v v w z Terminating condition for recursion: empty set (satisfied), or empty clause (contradiction) SAT? x y ¬x ¬z w z v = false SAT? x y ¬x ¬z ¬w z v = true SAT? SAT by DPLL Search Unit resolution Conflict-directed backtracking Clause learning Branching heuristics Restarts
A. Darwiche Recent Trend: Exhaustive DPLL Count number of models: Model counters, e.g., relsat, cachet Generate all/subset of models: Image computation in model checking SMT (non-propositional reasoning) Variations on DPLL Search
A. Darwiche Knowledge Compiler Exhaustive DPLL Record Trace VariationsLanguages The Language of Search
A. Darwiche Trace of DPLL X Y Z unsat sat X Y X Y Z X Y Z
A. Darwiche X YY ZZ unsat sat unsat sat X Y X Y Z X Y Z Run to Exhaustion Exhaustive DPLL
A. Darwiche XX or X and YY Y0 or YY Y and or 1 ZZ ZZ X YY ZZ unsat sat unsat sat Trace of DPLL:a Formula
A. Darwiche XX or X and YY Y0 or YY Y and or 1 ZZ ZZ Equivalent to original CNF Tractable (e.g., count models) Trace of DPLL: a Formula
A. Darwiche X YY ZZ unsat sat Level One: Do not record redundant portions of trace Level Two: Try not to solve equivalent subproblems Dealing with Redundancy
A. Darwiche X YY ZZ unsat sat Dealing with Redundancy
A. Darwiche X YY ZZ unsatsat Do not createSimply point to existing node Dealing with Redundancy
A. Darwiche X YY Z 01 This is an OBDD!
A. Darwiche X YY Z 01 XX or X and 0 or YY Y and or 1 ZZ This is an OBDD! NNF + decision, decomposability, ordering
A. Darwiche X Y X Y Z X Y Z Compile 0 X YY Z 1 A Non-traditional OBDD Compiler Exhaustive DPLL, Fixed variable order, Unique nodes New complexity guarantees
A. Darwiche 0 X YZ Z 1 Y FBDD Compile Exhaustive DPLL, Dynamic variable order, Unique nodes X Y X Y Z X Y Z NNF + decision, decomposability
A. Darwiche FBDD more succinct than OBDD (dynamic var ordering in SAT) OBDD: equivalence test (canonical) FBDD: probabilistic equivalence test Both allow model counting FBDD vs OBDD
A. Darwiche Level One: Unique nodes (done) Level Two: Avoid redundant compilation (search) Dealing with Redundancy
A. Darwiche Redundant Compilation x 5 x 6 x 4 x 5 x 6 x 1 x 3 x 4 x 5 x 2 x 3 x 1 x 2 x 3 X1X1 X2X2 X2X2 X3X3 X3X x 5 x 6 x 4 x 5 x 6 x 5 x 6 x 4 x 5 x 6 Formula Caching: complexity guarantees
A. Darwiche Formula Caching Majercik and Litmman, 1998 Darwiche, 2002 Bacchus et al, 2003, 2004 Huang & Darwiche, 2004 Sang, Kautz, Beam, 2004, 2005 Thurley, 2006
A. Darwiche Caching for DPLL v1v1 OBDD(Δ| v1=0 ) OBDD(Δ| v1=1 ) OBDD(Δ)= v2v2 OBDD(Δ| v1=0,v2=0 ) OBDD(Δ| v1=1,v2=1 ) = = … Recursive calls may be made on equivalent CNFs
A. Darwiche Caching for DPLL Δ = {v 5 + v 6 v 4 + v 5 + v 6 v 1 + v 3 + v 4 + v 5 v 2 + v 3 v 1 + v 2 + v 3 } OBDD(Δ) …… ……………… v1v2v3v1v2v3 Δ’Δ’ 0 0 0contradiction 0 0 1contradiction v 5 + v 6, v 4 + v 5 + v 6, v 4 + v v 5 + v 6, v 4 + v 5 + v contradiction v 5 + v 6, v 4 + v 5 + v v 5 + v 6, v 4 + v 5 + v v 5 + v 6, v 4 + v 5 + v 6
A. Darwiche Caching for DPLL v1v2v3v4v5v6v1v2v3v4v5v6 Cutset_3 c 1 : v 1 + v 2 + v 3 c 3 : v 1 + v 3 + v 4 + v 5 c 2 : v 2 + v 3 c 4 : v 4 + v 5 + v 6 c 5 : v 5 + v 6 After instantiation of v 1 v 2 v 3, Δ’ is either contradictory, or determined by clause c 3 alone. c 3 can only be in one of two states: satisfied or shrunk to v 4 v 5
A. Darwiche Caching for Basic DPLL In general, cutset_i is set of clauses mentioning a variable v i and one > v i After instantiation of v 1 v 2 …v i, Δ’ is either contradictory, or determined by states of clauses cutset_i Number of distinct Δ’ is 2 |cutset_i| + 1 Maintain a cache for each i, and use the value of cutset_i—a bit vector—as key
A. Darwiche CNF to OBDD OBDD(Δ, i){ if(contradiction) return 0-sink if(satisfied) return 1-sink key = value(cutset i-1 ) lookup = cache i-1 [key] if(lookup ≠ nil) return lookup result = getnode_node(v i, OBDD(Δ| vi=0, i+1), OBDD(Δ| vi=1, i+1)) cache i-1 [key] = result return result }
A. Darwiche Complexity For each i, 2 |cutset_i| bounds number of recursive calls OBDD(Δ, i+1) number of entries in cache i number of OBDD nodes labeled with v i Size of largest cutset is known as cutwidth of variable order Time and space complexities of algorithm and size of OBDD are all linear in number of variables, and exponential only in cutwidth Variable orders with small cutwidth can help
A. Darwiche Complexity Theorems size(OBDD) n2 w + 2 n: number of variables w: cutwidth of variable order (size of largest cutset) Time complexity = O(sn2 w ) s: size of CNF Also hold for w = pathwidth, using a slightly different caching scheme Cutwidth and pathwidth are incomparable
A. Darwiche Plain DPLL FBDD Fixed Variable Ordering OBDD Beyond BDDs…
A. Darwiche Combine as AND node d-DNNF Decomposition (Component Analysis) Solve disjoint subproblems independently
A. Darwiche A B C A B C A D E A D E B C D E B C and 0 A B 1 DB C D E Deterministic Decomposable Negation Norm Form (d-DNNF)
A. Darwiche or and AA A or and BB C or and DD E or BD and Deterministic Decomposable Negation Norm Form (d-DNNF)
A. Darwiche Dynamically detect disjoint components Most effective, but very expensive Static structural analysis Constructs a decomposition tree (dtree) Does not detect all decompositions Low overhead at runtime Decomposition Methods
A. Darwiche d-DNNF more succinct than FBDD (effectiveness of decomposition) Deterministic equivalence test open Probabilistic equivalence test applies Other queries same… FBDD vs d-DNNF
A. Darwiche Plain DPLLFBDD Fixed Variable Ordering OBDD Allowing Decomposition d-DNNF The Language of Search Other languages: deterministic DNF
A. Darwiche Relation to AND/OR Search (CP) AND/OR graphs are deterministic and decomposable AND/OR search algorithms are doing enough work to compile networks into (multi-valued equivalent of) d-DNNF Capable of more than answering a single query (model counting, belief revision, etc)
A. Darwiche Implications SAT techniques harnessed for knowledge compilation c2d compiler based on Rsat Solver (SAT Competition 2007): uses dtrees Language properties (succinctness/tractability) help characterize power and limitations of search
A. Darwiche Understanding DPLL Take any program X that runs exhaustive DPLL-style search Examine traces, if traces L, then X can answer all queries tractable for L X is hopeless on any input having no polynomial-size representation in L
A. Darwiche Power of DPLL Traces of several model counters (Relsat, Cachet, e.g.) are in d-DNNF Are doing enough work to compile formulas into d-DNNF solve tasks beyond model counting (e.g., minimum cardinality, probabilistic equivalent testing)
A. Darwiche or and XX X Decision nodes (d-DNNF’) Deterministic nodes (d-DNNF) or A B C and or A B A B Limitation of DPLL: General Determinism
A. Darwiche Beyond DPLL: Decomposability (D) Without Determinism (d) or and X1X1 X2X2 X3X3 DNNF: CO, CE, ME, exist quant
A. Darwiche Approximate DNNF dnnf( l ) r ) and l r U = XY
A. Darwiche Approximate Compilation l r U dnnf( l ) r ) and XY |XY or and ~X~YX~Y~XY
A. Darwiche Approximate Compilation l r U dnnf( l ) r ) and XY |XY or and ~X~YX~Y~XY Sound, but not complete
A. Darwiche Approximate Compilation dnnf( l ) r ) and ~X dnnf( l ) r ) and or X |X |~X l r U Complete, but not sound
A. Darwiche sat ? sat sat n y sat y n n y ? Sound Incomplete Unsound Complete
A. Darwiche Bottom-up Compilation
A. Darwiche 01 z y DEAD NODES x y x x CNF: (x + y) (y + z) Variable order: x, y, z The Apply algorithm: combines two OBDDs using any one of the 16 binary Boolean operators x + y y + z Final OBDD Bottom-up OBDD Construction
A. Darwiche Bottom-Up OBDD Construction OBDD packages, such as CUDD implement Apply (conjoin, disjoin, etc) garbage-collect dead nodes Apply is efficient: quadratic in operand size Problem: intermediate OBDDs can be much larger than final one—many dead nodes uf (32 models): OBDD has 176 nodes under MINCE order; 30,640,582 intermediate nodes using CUDD; taking 25 mins
A. Darwiche DPLL Based Construction Δ| x=0 = yΔ| x=1 = y + z 01 z y y x Δ = (x + y) (y + z)
A. Darwiche Missing Opportunities Bottom up construction methods for DNNF and d-DNNF
A. Darwiche Agenda Part I: Languages Part II: Operations Part III: Compilers Part IV: Applications
A. Darwiche Part IV: Applications
A. Darwiche Applications Model-based diagnosis Planning Probabilistic reasoning
A. Darwiche C D A Y X B System model : okX (A C) okY (B C) D Health variables: okX, okY Observables: A, B, D Nonobservable: C Model-based Diagnosis
A. Darwiche C D A Y X B Abnormal observation : A B D Diagnosis: Values of (okX, okY) consistent with : (0, 0), (0, 1), (1, 0) Model-based Diagnosis System model : okX (A C) okY (B C) D
A. Darwiche C D A Y X B Abnormal observation : A B D Minimum cardinality Diagnoses: (0, 0), (0, 1), (1, 0) Model-based Diagnosis System model : okX (A C) okY (B C) D
A. Darwiche Model-based Diagnosis Methods for characterizing diagnoses: Conflicts Kernel diagnoses Methods for manipulating diagnoses: Find minimal diagnoses Find minimum-cardinality diagnoses Characterize lost functionality
A. Darwiche A C E B D F G Characterizing Diagnoses
A. Darwiche A C E B D F G Characterizing Diagnoses
A. Darwiche A C E B D F G Characterizing Diagnoses low high low
A. Darwiche Minimal Conflicts An instantiation of ok1,…ok5 is a diagnosis iff it is consistent with (conjunction of) minimal conflicts
A. Darwiche Kernel Diagnoses An instantiation of ok1,…ok5 is a diagnosis iff it is consistent with (disjunction of) kernel diagnoses
A. Darwiche Characterizing Diagnosis Device Model Observables Health Variables Others Health Condition
5 ok OBDD
DNNF
A. Darwiche CNF/PI Minimal Conflicts
A. Darwiche DNF/IP Kernel Diagnoses
A. Darwiche Characterizing Diagnosis Device Model Observables Health Variables Others Health Condition Compile Model
System Model Compile ? Succinctness Efficient computation of diagnoses
System Model Compile OBDD vs. DNNF Succinctness Efficient computation of diagnoses
A. Darwiche DNNF is more succinct: can lead to smaller compilation Smaller compilation of system model does not imply faster on-line diagnosis Although less succinct, OBDD is more powerful (DNNF is a weaker form) Is this extra power relevant? Compiling System Models
A. Darwiche C D A Y X B Observation: A B D TF FFTT TT System model : okX (A C) okY (B C) D Diagnosis Using DNNF
A. Darwiche C D A Y X B Observation: A B D or okX okY Diagnosis Using DNNF System model : okX (A C) okY (B C) D
A. Darwiche Set observables Linear time Project out nonobservables Linear time Projection exponential for OBDD (can be made linear with particular orders) Diagnosis Using DNNF
A. Darwiche Number of diagnoses can be large Some may be more preferable than others Minimize number of faulty components in diagnosis Again, easy for DNNF Minimum Cardinality Diagnoses
A. Darwiche or okX okY Smoothing: make disjuncts mention same set of variables; O(| ’| |H|) Minimum Cardinality Diagnoses
A. Darwiche or okX okY Minimizing the DNNF
A. Darwiche or and okX okY okXokY Minimum Cardinality Diagnoses
A. Darwiche Create “filter” OBDD that asserts a given cardinality k Conjoin it with OBDD that represents set of diagnoses Repeat for k = 0, 1, 2... until result is nonempty Minimum Cardinality Diagnoses Using OBDDs
A. Darwiche OperationOBDDDNNF Condition( ’, )O(| ’|) Project( , H) exponential O(| |) Minimize( d )O(mc | d | |H| 2 )O(| d | |H|) Comparison
A. Darwiche Characterizing Lost Functionality
A. Darwiche Hierarchical Diagnosis
A. Darwiche Scalability Requires a health variable for each component c1908 has 880 gates; basic encoding fails to compile New technique to reduce number of health variables Preserves soundness and completeness w.r.t. min- cardinality diagnoses Requires only 160 health variables for c1908
A. Darwiche Hierarchical Diagnosis
A. Darwiche Hierarchical Diagnosis
A. Darwiche Hierarchical Diagnosis
A. Darwiche Identifying Cones Gate G dominates gate X if any path from X to output of circuit contains G All gates dominated by G form a cone Dominators found by breath-first traversal of circuit Treat maximal cones as blackboxes
A. Darwiche Abstraction of Circuit C = {T, U, V, A, B, C}
A. Darwiche Top-level Diagnosis Diagnosis: {A, B, C}
A. Darwiche Diagnosis of Cone Need to set inputs/output of cone according to top-level diagnosis Rest is similar, but not a simple recursive call (to avoid redundancy) Once cone diagnoses found, global diagnoses obtained by substitution
A. Darwiche Diagnosis of Cone Top-level diagnosis: {A, B, C} 3 diagnoses for cone A: {A}, {D}, {E} 3 global diagnoses by substitution: {A, B, C} {D, B, C} {E, B, C}
A. Darwiche Soundness Top-level diagnoses have same cardinality. Substitutions do not alter cardinality (cones do not overlap). Remains to show that cardinality of these diagnoses, d, is smallest. Proof by contradiction: Suppose there is diagnosis |P| < d. Replace every gate in P with its highest dominator to obtain P’. P’ is a valid top-level diagnosis, contradicting soundness of baseline diagnoser
A. Darwiche Completeness Need to show every min-cardinality diagnosis is found Given diagnosis P of min cardinality d, replace every gate in P with its highest dominator to obtain P’ P’ has cardinality d, and only mentions gates in top-level abstraction, and hence will be found by top-level diagnosis (by completeness of baseline diagnoser) P itself will be found by substitution (by completeness of cone diagnosis)
A. Darwiche Sequential Diagnosis
A. Darwiche Sequential Diagnosis Set of min-cardinality diagnoses may still be large Faults not identified with certainty Take measurements, one at a time, until faults identified Would like to minimize number of measurement Use heuristic based on amount of information gain
A. Darwiche Sequential Diagnosis Assume a probabilistic model of the system Failure probabilities for components Output behavior of faulty component (e.g., 1 and 0 with equal probability) These implicitly define a joint probability distribution over all system variables Encoding and compilation described later Pick component with highest posterior probability of failure, measure variable with highest entropy in that component
θJθJ or and okA okJ and θAθA okA and θJθJ okJ and J PDA
A. Darwiche Hierarchical Sequential Diagnosis To improve scalability, previous idea of abstraction applies Treat each cone (blackbox) as a single “big” component Need to compute a single failure probability that “summarizes” the failure behavior of the cone Create copy of cone with all gates healthy, feed outputs of two cones into XOR gate, compute Pr(output = 1)
A. Darwiche Planning
A. Darwiche Slippery Gripper Probabilistic action effects: Paint: paints block w. p. 1; makes gripper dirty w. p. 1 if it holds block, w. p. 0.1 if not Pick-up: succeeds w. p. 0.5 if gripper wet, 0.95 if gripper dry Dry: dries wet gripper w. p. 0.8; doesn’t affect dry gripper Probabilistic initial state: block not painted, not held gripper clean, but dry with probability 0.7 Goal: block painted and held, gripper clean
A. Darwiche Conformant Probabilistic Planning Probabilistic initial state and action effects Conformant: action effects not observable Can’t decide next action by observing environment Needs straight-line plan with max probability of success, for given horizon (number of steps) Example 2-step plan: [paint, pickup] (succeeds with probability )
A. Darwiche Brute-force Approach Compute success probability for all plans of length one Given success probabilities of plans of length i, compute probability of success for plans of length i + 1 Iterate to planning horizon n Pick n-step plan with max success probability Exponential in planning horizon
A. Darwiche Why is it hard? Consider decision version Does there exist plan of success probability > p, for given horizon Given plan, deciding if success probability > p is PP-complete Can be reduced to MAJ-SAT: does majority of assignments satisfy CNF Alternatively: Is CNF satisfiable with probability > ½ Finding plan with given property (that is free to test) is NP-complete, for given horizon Conformant probabilistic planning for given horizon is NP PP -complete NP PP NP PP
A. Darwiche Propositional Encoding: Initial State State space: BP (block-painted), BH (block-held), GC (gripper-clean), GD (gripper-dry) Probabilistic initial state: { BP, BH, GC, p GD} Chance variable: p (labeled with 0.7) p = 1: { BP, BH, GC, GD} probability 0.7 p = 0: { BP, BH, GC, GD} probability ( ) Encoded as propositional sentence; some variables labeled with numbers (probabilities)
A. Darwiche Propositional Encoding: Action Effects Dry: dries wet gripper w. p. 0.8; doesn’t affect dry gripper dry GD (q GD’), dry GD GD’ Frame axiom dry (BP BP’), dry (BH BH’), dry (GC GC’) Each setting of chance variable selects one effect probability of effect is label of chance variable, or 1 minus that depending on value of variable multiple chance variables: multiply the numbers Define Pr(e) where e is an event (setting of chance vars)
A. Darwiche Propositional Encoding: Goal Goal: {BP’, BH’, GC’}
A. Darwiche Propositional Encoding: Horizon n State variables: S 0, S 1, S 2, …, S n Chance variables: P -1, P 0, P 1, …, P n-1 Action variables: A 0, A 1, A 2, …, A n-1 Initial state: I(P -1, S 0 )Goal: G(S n ) Plan step: A k A(S k, A k, P k, S k+1 ) Δ n I(P -1, S 0 ) A 0 A 1 … A n-1 G(S n )
A. Darwiche Plan Assessment Given propositional encoding Δ n and n-step plan What’s probability of success Pr(Δ n, )? Plan is instantiation of action vars Pr(Δ n, ) is sum of Pr(e) for e consistent with Δ n Computation intractable (has to enumerate models)
A. Darwiche Brute-force Algorithm Search through all plans (instantiations of action vars) For each plan , compute Pr(Δ n, ) Return plan with max Pr(Δ n, ) Improve in two ways Efficient plan assessment Search space pruning Both achieved by compiling Δ n to d-DNNF
A. Darwiche Compilation to d-DNNF Use existing compiler c2d, Compilation intractable in general For structured problems, exponential only in treewidth Treewidth does not grow with horizon in this encoding Can scale to large horizons
A. Darwiche d-DNNF or and pp t’t’ s’s’p dry paint pickup rr dry’ paint’ pickup’
A. Darwiche [paint, pickup’] or and pp t’t’ s’s’p dry paint pickup rr dry’ paint’ pickup’ Plan Assessment on d-DNNF
A. Darwiche or and pp t’t’ s’s’p dry paint pickup rr dry’ paint’ pickup’ Plan Assessment on d-DNNF [paint, pickup’]
A. Darwiche [paint, pickup’] or and pp t’t’ s’s’p dry paint pickup rr dry’ paint’ pickup’ Plan Assessment on d-DNNF
A. Darwiche or and pp t’t’ s’s’p dry paint pickup rr dry’ paint’ pickup’ Plan Assessment on d-DNNF [paint, pickup’]
A. Darwiche [paint, pickup’] or and pp t’t’ s’s’p dry paint pickup rr dry’ paint’ pickup’ Plan Assessment on d-DNNF
A. Darwiche [paint, pickup’] or and pp t’t’ s’s’p dry paint pickup rr dry’ paint’ pickup’ Plan Assessment on d-DNNF
A. Darwiche Set action vars to constants according to plan Set all state vars to 1 (existential quantification) Turn chance vars and their negations into numbers Turn or into summation, and into multiplication Evaluate resulting arithmetic circuit Value at root is Pr(Δ n, ) Plan Assessment on d-DNNF
A. Darwiche Assessment of Partial Plan Partial plan : instantiation of a subset of action vars Pr(Δ n, ): success probability of best completion of Maximize over uninstantiated action vars Special d-DNNF: Turn corresponding or node into max β x or and x γ
A. Darwiche Assessment of Partial Plan Summations over state vars, followed by maximizations over action vars All max must be performed after sum Not guaranteed in d-DNNF Max and sum nodes mixed in any order Some max performed too early: Result incorrect!
A. Darwiche Depth-first Branch-and-Bound Key observation: performing max too early can only increase result Result is upper bound on true value Partial plan can be pruned if upper bound <= value of best plan already found Depth-first branch-and-bound: will find optimal plan Tighter bounds leads to more pruning
A. Darwiche Plan Search C B C BB t’cb.023 t’cb’.051 t’c’b.031 t’c’b’.055 B tc’b’.053 tc’b.117 tcb’.079 tcb.009 T
A. Darwiche Plan Search C B C BB t’cb.023 t’cb’.051 t’c’b.031 t’c’b’.055 B tc’b’.053 tc’b.117 tcb’.079 tcb.009 T Best Score: 0.151
A. Darwiche Plan Search C B C BB t’cb.023 t’cb’.051 t’c’b.031 t’c’b’.055 B tc’b’.053 tc’b.117 tcb’.079 tcb.009 T Best Score:
A. Darwiche Plan Search C B C BB t’cb.023 t’cb’.051 t’c’b.031 t’c’b’.055 B tc’b’.053 tc’b.117 tcb’.079 tcb.009 T Best Score:
A. Darwiche Plan Search C B C BB t’cb.023 t’cb’.051 t’c’b.031 t’c’b’.055 B tc’b’.053 tc’b.117 tcb’.079 tcb.009 T Best Score:
A. Darwiche Plan Search C B C BB t’cb.023 t’cb’.051 t’c’b.031 t’c’b’.055 B tc’b’.053 tc’b.117 tcb’.079 tcb.009 T Best Score:
A. Darwiche Plan Search C B C BB t’cb.023 t’cb’.051 t’c’b.031 t’c’b’.055 B tc’b’.053 tc’b.117 tcb’.079 tcb.009 T Best Score:
A. Darwiche Plan Search C B C BB t’cb.023 t’cb’.051 t’c’b.031 t’c’b’.055 B tc’b’.053 tc’b.117 tcb’.079 tcb.009 T Best Score:
A. Darwiche Plan Search C B C BB t’cb.023 t’cb’.051 t’c’b.031 t’c’b’.055 B tc’b’.053 tc’b.117 tcb’.079 tcb.009 T Best Score:
A. Darwiche Plan Search C B C BB t’cb.023 t’cb’.051 t’c’b.031 t’c’b’.055 B tc’b’.053 tc’b.117 tcb’.079 tcb.009 T Best Score:
A. Darwiche Plan Search C B C BB t’cb.023 t’cb’.051 t’c’b.031 t’c’b’.055 B tc’b’.053 tc’b.117 tcb’.079 tcb.009 T Best Score:
A. Darwiche Probabilistic Reasoning
A. Darwiche Bayesian Networks Battery Age Alternator Fan Belt Battery Charge Delivered Battery Power Starter Radio LightsEngine Turn Over Gas Gauge Gas Fuel Pump Fuel Line Distributor Spark Plugs Engine Start
A. Darwiche Bayesian Networks Battery Age Alternator Fan Belt Battery Charge Delivered Battery Power Starter Radio LightsEngine Turn Over Gas Gauge Gas Fuel Pump Fuel Line Distributor Spark Plugs Engine Start ON OFF OK WEAK DEAD Lights Battery Power If Battery Power = OK, then Lights = ON (99%) ….
A B C θ b|a θaθa θ c|a ABCPr(.) abcθ a θ b|a θ c|a ab~cθ a θ b|a θ ~c|a a~bcθ a θ ~b|a θ c|a a~b~cθ a θ ~b|a θ ~c|a...…
A. Darwiche Pr(a) = =.3 false B A true false Pr(.) false true Joint Distributions
A. Darwiche Pr(~b) = =.41 false B A true false true Pr(.) Joint Distributions
A. Darwiche.03λ a λ b +.27λ a λ ~b +.56λ ~a λ b +.14λ ~a λ ~b false B.03 A true false true λ a* λ b *.03 λ a* λ ~ b *.27 λ ~ a* λ b *.56 λ ~ a* λ ~ b*.14 F (λ ~a, λ ~b, λ a, λ b ) = Pr(.) Joint Distributions
=.03λ a λ b +.27λ a λ ~b +.56λ ~a λ b +.14λ ~a λ ~b F (λ ~a, λ ~b, λ a, λ b ) Pr(a,~b) = F (λ ~a :0, λ ~b :1, λ a :1, λ b :0) =.27 Pr(a) = F (λ ~a :0, λ ~b :1, λ a :1, λ b :1) =
A B C θ b|a θaθa θ c|a ABCPr(.) abcθ a θ b|a θ c|a ab~cθ a θ b|a θ ~c|a a~bcθ a θ ~b|a θ c|a a~b~cθ a θ ~b|a θ ~c|a...…
A B C θ b|a θaθa θ c|a ABCPr(.) abc λ a λ b λ c θ a θ b|a θ c|a ab~c λ a λ b λ ~c θ a θ b|a θ ~c|a a~bc λ a λ ~b λ c θ a θ ~b|a θ c|a a~b~c λ a λ ~b λ ~c θ a θ ~b|a θ ~c|a...…
F = λ a λ b λ c θ a θ b|a θ c|a + λ a λ b λ ~c θ a θ b|a θ ~c|a + λ a λ ~b λ c θ a θ ~b|a θ c|a + λ a λ ~b λ ~c θ a θ ~b|a θ ~c|a …. A B C
F = λ a λ b λ c λ d θ a θ b|a θ c|a θ d|bc + λ a λ b λ c λ ~d θ a θ b|a θ c|a θ ~d|bc + …. A B C D Each term has 2n variables (n indicators, n parameters) Each variable has degree one (multi-linear function) θaθa θ b|a θ c|a θ d|bc
A. Darwiche Multi-Linear Functions Arithmetic Circuits AB * * ** + ++ * ** * Factoring
A. Darwiche Compiler: d-DNNF CNF Multi-Linear Function Arithmetic Circuit Encode Decode Reduction to Logic
A. Darwiche a c + a b c + c Multi-linear function:Propositional theory: c ^ (a b) Encode c b 1 a 1 Arithmetic Circuit Decode c b bb a aa Smooth d-DNNF Compile MLFs ACs CNFs d-DNNF
A. Darwiche Propositional Encoding of Multi-Linear Functions Propositional theory: Δ = c ^ (a b) Encodes: F = a c + a b c + c abcEncodes TTT abc TTFab TFT ac TFFa FTTbc FTFb FFT c FFF1
A. Darwiche A B F = λ a λ b θ a θ b|a + λ a λ ~b θ a θ ~b|a + λ ~a λ b θ ~a θ b|~a + λ ~a λ ~b θ ~a θ ~b|~a λ a λ ~a ¬ λ a ¬ λ ~a λ b λ ~b ¬ λ b ¬ λ ~b ↔↔ λ a ↔ θ a λ ~a ↔ θ ~a ↔↔↔↔ λ a ^ λ b ↔ θ b|a λ a ^ λ ~ b ↔ θ ~ b|a λ ~ a ^ λ b ↔ θ b|~a λ ~ a ^ λ ~ b ↔ θ ~ b|~a Encoding Network as CNF
A. Darwiche Why Logic? Encoding local structure is easy: Determinism encoded by adding clauses: CSI encoded by collapsing variables:
A. Darwiche Global Structure: Treewidth w
A. Darwiche Battery Age Alternator Fan Belt Battery Charge Delivered Battery Power Starter Radio LightsEngine Turn Over Gas Gauge Gas Fuel Pump Fuel Line Distributor Spark Plugs Engine Start Local Structure: CSI and Determinism
A. Darwiche Battery Age Alternator Fan Belt Battery Charge Delivered Battery Power Starter Radio LightsEngine Turn Over Gas Gauge Gas Fuel Pump Fuel Line Distributor Spark Plugs Engine Start Context Specific Independence (CSI) Local Structure: CSI and Determinism
A. Darwiche Local Structure: CSI and Determinism Battery Age Alternator Fan Belt Battery Charge Delivered Battery Power Starter Radio LightsEngine Turn Over Gas Gauge Gas Fuel Pump Fuel Line Distributor Spark Plugs Engine Start ON OFF OK WEAK DEAD Lights Battery Power If Battery Power = Dead, then Lights = OFF Determinism
A. Darwiche ABC S 0.95 c abc A Pr(S|A,B,C) BC a a a a a a a b b b b b b b c c c c c c Tabular CPT -Functional constraints -Context-specific independence s|abe Local Structure
A. Darwiche 0.95 c abc A Pr(S|A,B,E) BC a a a a a a a b b b b b b b c c c c c c Tabular CPT ↔ λ ~a λ b λ c λ s ↔ θ s|~abc ¬ λ ~a ¬ λ b ¬ λ c ¬ λ s Determinism
A. Darwiche 0.95 c abc A Pr(S|A,B,C) BC a a a a a a a b b b b b b b c c c c c c Tabular CPT ↔ λ a λ b λ s ↔ θ s|ab ↔ λ a λ b λ c λ s ↔ θ s|abc ↔ λ a λ b λ ~c λ s ↔ θ s|ab~c Context-Specific Independence
A. Darwiche X Y Belief network x x x x x y x|y …. CNF Smooth d-DNNF x y x|y x x y x|y Arithmetic Circuit The Ace System:
A. Darwiche 1 st International Evaluation of Exact Probabilistic Reasoning Systems (UAI’06, Boston) 135 problem instances from speech, coding, bioinformatics, circuits, medical diagnosis,… Each team given 4 days of computation time UCLA: Only team to solve all problems in allotted time (solved all problems in 1 hr) Failure rates of other teams: 10%-40%
A. Darwiche Inference by Compiling to d-DNNF Deterministic Planning Blai Bonet and Hector Geffner (KR 2006) Probabilistic Conformant Planning Jinbo Huang (ICAPS 2006) Model-based diagnosis Paul Elliott and Brian Williams (AAAI 2006) Anthony Barrett (IJCAI 2005) Databases (query re-write) Yolife Arvelo, Blai Bonet and Maria Esther Vidal (AAAI 2006) Inference in Bayesian Networks (2006 competition) Mark Chavira, Adnan Darwiche (IJCAI 2005) Inference in Probabilistic Relational Models Mark Chavira, Adnan Darwiche and Manfred Jaeger (IJAR 2006) c2d compiler: