Treewidth of Formulas treewidth measures the “tree-likeness” of a graph ( x 1 ∨ x 2 ∨ ¬ x 3 ) ∧ (¬ x 1 ∨ x 2 ∨ x 3 ) ∧ (¬ x 2 ∨ x 3 ) ∧ ( x 1 ∨ x 2 ∨ x 4 ) primal graph incidence graph x 2 x 1 x 2 x 3 x 4 x 1 x 3 x 4 5
Treewidth of Formulas treewidth measures the “tree-likeness” of a graph ( x 1 ∨ x 2 ∨ ¬ x 3 ) ∧ (¬ x 1 ∨ x 2 ∨ x 3 ) ∧ (¬ x 2 ∨ x 3 ) ∧ ( x 1 ∨ x 2 ∨ x 4 ) primal graph incidence graph x 2 x 1 x 2 x 3 x 4 x 1 x 3 x 4 5
Treewidth of Formulas treewidth measures the “tree-likeness” of a graph ( x 1 ∨ x 2 ∨ ¬ x 3 ) ∧ (¬ x 1 ∨ x 2 ∨ x 3 ) ∧ (¬ x 2 ∨ x 3 ) ∧ ( x 1 ∨ x 2 ∨ x 4 ) primal graph incidence graph x 2 x 1 x 2 x 3 x 4 x 1 x 3 x 4 5
Treewidth of Formulas treewidth measures the “tree-likeness” of a graph ( x 1 ∨ x 2 ∨ ¬ x 3 ) ∧ (¬ x 1 ∨ x 2 ∨ x 3 ) ∧ (¬ x 2 ∨ x 3 ) ∧ ( x 1 ∨ x 2 ∨ x 4 ) primal graph incidence graph x 2 x 1 x 2 x 3 x 4 x 1 x 3 x 4 5
Treewidth of Formulas treewidth measures the “tree-likeness” of a graph ( x 1 ∨ x 2 ∨ ¬ x 3 ) ∧ (¬ x 1 ∨ x 2 ∨ x 3 ) ∧ (¬ x 2 ∨ x 3 ) ∧ ( x 1 ∨ x 2 ∨ x 4 ) primal graph incidence graph x 2 x 1 x 2 x 3 x 4 x 1 x 3 x 4 5
#SAT and Treewidth
#SAT and Treewidth primal treewidth k
#SAT and Treewidth incidence treewidth k * primal treewidth k
#SAT and Treewidth incidence treewidth k * primal treewidth k
#SAT and Treewidth incidence treewidth k * primal treewidth k k * ≤ k + 1
#SAT and Treewidth incidence treewidth k * primal treewidth k k * ≤ k + 1 f ( k ) ⋅ p ( F )
#SAT and Treewidth incidence treewidth k * primal treewidth k k * ≤ k + 1 Courcelle, Makowsky, Rotics 2001 f ( k *) ⋅ p ( F ) f ( k ) ⋅ p ( F )
#SAT and Treewidth incidence treewidth k * primal treewidth k k * ≤ k + 1 Courcelle, Makowsky, Rotics 2001 f ( k *) ⋅ p ( F ) f ( k ) ⋅ p ( F ) 2 O ( k ) ⋅ p ( F )
#SAT and Treewidth incidence treewidth k * primal treewidth k k * ≤ k + 1 Courcelle, Makowsky, Rotics 2001 f ( k *) ⋅ p ( F ) f ( k ) ⋅ p ( F ) 2 O ( k ) ⋅ p ( F ) Bacchus, Dalmao, Pitassi 2003
#SAT and Treewidth incidence treewidth k * primal treewidth k k * ≤ k + 1 Courcelle, Makowsky, Rotics 2001 f ( k *) ⋅ p ( F ) f ( k ) ⋅ p ( F ) 2 O ( k ) ⋅ p ( F ) Bacchus, Dalmao, Pitassi 2003 4 k * ⋅ p ( F )
#SAT and Treewidth incidence treewidth k * primal treewidth k k * ≤ k + 1 Courcelle, Makowsky, Rotics 2001 f ( k *) ⋅ p ( F ) f ( k ) ⋅ p ( F ) 2 O ( k ) ⋅ p ( F ) Bacchus, Dalmao, Pitassi 2003 4 k * ⋅ p ( F ) Fischer, Makowsky, Ravve 2006 Samer and Szeider 2007
#SAT and Treewidth incidence treewidth k * primal treewidth k k * ≤ k + 1 Courcelle, Makowsky, Rotics 2001 f ( k *) ⋅ p ( F ) f ( k ) ⋅ p ( F ) 2 O ( k ) ⋅ p ( F ) Bacchus, Dalmao, Pitassi 2003 4 k * ⋅ p ( F ) 4 k ⋅ p ( F ) Fischer, Makowsky, Ravve 2006 Fischer, Makowsky, Ravve 2006 Samer and Szeider 2007
#SAT and Treewidth incidence treewidth k * primal treewidth k k * ≤ k + 1 Courcelle, Makowsky, Rotics 2001 f ( k *) ⋅ p ( F ) f ( k ) ⋅ p ( F ) 2 O ( k ) ⋅ p ( F ) Bacchus, Dalmao, Pitassi 2003 4 k * ⋅ p ( F ) 4 k ⋅ p ( F ) Fischer, Makowsky, Ravve 2006 Fischer, Makowsky, Ravve 2006 Samer and Szeider 2007 2 k ⋅ p ( F )
#SAT and Treewidth incidence treewidth k * primal treewidth k k * ≤ k + 1 Courcelle, Makowsky, Rotics 2001 f ( k *) ⋅ p ( F ) f ( k ) ⋅ p ( F ) 2 O ( k ) ⋅ p ( F ) Bacchus, Dalmao, Pitassi 2003 4 k * ⋅ p ( F ) 4 k ⋅ p ( F ) Fischer, Makowsky, Ravve 2006 Fischer, Makowsky, Ravve 2006 Samer and Szeider 2007 Samer and Szeider 2007 2 k ⋅ p ( F )
#SAT and Treewidth incidence treewidth k * primal treewidth k k * ≤ k + 1 Courcelle, Makowsky, Rotics 2001 f ( k *) ⋅ p ( F ) f ( k ) ⋅ p ( F ) 2 O ( k ) ⋅ p ( F ) Bacchus, Dalmao, Pitassi 2003 4 k * ⋅ p ( F ) 4 k ⋅ p ( F ) Fischer, Makowsky, Ravve 2006 Fischer, Makowsky, Ravve 2006 Samer and Szeider 2007 Samer and Szeider 2007 2 k * ⋅ p ( F ) 2 k ⋅ p ( F )
#SAT and Treewidth incidence treewidth k * primal treewidth k k * ≤ k + 1 Courcelle, Makowsky, Rotics 2001 f ( k *) ⋅ p ( F ) f ( k ) ⋅ p ( F ) 2 O ( k ) ⋅ p ( F ) Bacchus, Dalmao, Pitassi 2003 4 k * ⋅ p ( F ) 4 k ⋅ p ( F ) Fischer, Makowsky, Ravve 2006 Fischer, Makowsky, Ravve 2006 Samer and Szeider 2007 Samer and Szeider 2007 Our result 2 k * ⋅ p ( F ) 2 k ⋅ p ( F )
#SAT and Treewidth incidence treewidth k * primal treewidth k k * ≤ k + 1 Courcelle, Makowsky, Rotics 2001 f ( k *) ⋅ p ( F ) f ( k ) ⋅ p ( F ) 2 O ( k ) ⋅ p ( F ) Bacchus, Dalmao, Pitassi 2003 4 k * ⋅ p ( F ) 4 k ⋅ p ( F ) Fischer, Makowsky, Ravve 2006 Fischer, Makowsky, Ravve 2006 Samer and Szeider 2007 Samer and Szeider 2007 H T Our result E r e d n 2 k * ⋅ p ( F ) 2 k ⋅ p ( F ) u l a m i t p O
Tree Decompositions 7
Tree Decompositions 7
Tree Decompositions “node” 7
Tree Decompositions “node” 7
Tree Decompositions “node” “bag” 7
Tree Decompositions “node” 1. Each vertex appears in a bag. “bag” 7
Tree Decompositions “node” 1. Each vertex appears in a bag. 2. Each edge is contained in a bag. vw “bag” v w 7
Tree Decompositions “node” 1. Each vertex appears in a bag. 2. Each edge is contained in a bag. vw “bag” 3. The set of nodes in whose bags v appears form a connected subtree . v w 7
Tree Decompositions “node” 1. Each vertex appears in a bag. 2. Each edge is contained in a bag. vw “bag” 3. The set of nodes in whose bags v appears form a connected subtree . v v w 7
Tree Decompositions “node” 1. Each vertex appears in a bag. v 2. Each edge is contained in a bag. vw “bag” 3. The set of nodes in whose bags v appears form a connected subtree . v v w 7
Tree Decompositions “node” 1. Each vertex appears in a bag. v 2. Each edge is contained in a bag. vw “bag” 3. The set of nodes in whose bags v appears form a connected subtree . v v w The width of a tree decomposition is the size of its largest bag - . 1 7
Dynamic Programming for #SAT x 3 x 4 C 2 C 2 x 2 x 2 x 3 C 2 C 1 x 1 8
Dynamic Programming for #SAT x 3 x 4 C 2 C 2 t x 2 x 2 x 3 C 2 C 1 x 1 8
Dynamic Programming for #SAT x 3 x 4 C 2 C 2 t x 2 x 2 x 3 C 2 n ( t , α , A ) C 1 x 1 8
Dynamic Programming for #SAT x 3 x 4 C 2 C 2 t x 2 x 2 x 3 C 2 n ( t , α , A ) C 1 x 1 assignment of bag variables 8
Dynamic Programming for #SAT x 3 x 4 C 2 C 2 t x 2 x 2 x 3 C 2 subset of bag clauses n ( t , α , A ) C 1 x 1 assignment of bag variables 8
Join Nodes x 3 x 4 C 2 x 3 x 4 x 3 x 4 C 2 C 2 … … 9
Join Nodes t x 3 x 4 C 2 x 3 x 4 x 3 x 4 C 2 C 2 … … 9
Join Nodes t x 3 x 4 C 2 t 1 x 3 x 4 x 3 x 4 C 2 C 2 … … 9
Join Nodes t x 3 x 4 C 2 t 1 t 2 x 3 x 4 x 3 x 4 C 2 C 2 … … 9
Join Nodes t x 3 x 4 C 2 t 1 t 2 x 3 x 4 x 3 x 4 C 2 C 2 … … ∑ n ( t , α , A ) = n ( t 1 , α , A 1 ) n ( t 2 , α , A 2 ) A 1 , A 2 ⊆ χ c ( t ) A 1 ∩ A 2 = A 9
Covering Product ∑ n ( t , α , A ) = n ( t 1 , α , A 1 ) n ( t 2 , α , A 2 ) A 1 , A 2 ⊆ χ c ( t ) A 1 ∩ A 2 = A 10
Covering Product f , g : 2 S → ℤ ∑ n ( t , α , A ) = n ( t 1 , α , A 1 ) n ( t 2 , α , A 2 ) A 1 , A 2 ⊆ χ c ( t ) A 1 ∩ A 2 = A 10
Covering Product f , g : 2 S → ℤ | S | = k ∑ n ( t , α , A ) = n ( t 1 , α , A 1 ) n ( t 2 , α , A 2 ) A 1 , A 2 ⊆ χ c ( t ) A 1 ∩ A 2 = A 10
Covering Product ( f * c g )( Y ) = ∑ f , g : 2 S → ℤ f ( A ) g ( B ) A ∪ B = Y | S | = k ∑ n ( t , α , A ) = n ( t 1 , α , A 1 ) n ( t 2 , α , A 2 ) A 1 , A 2 ⊆ χ c ( t ) A 1 ∩ A 2 = A 10
Covering Product Y ⊆ S ( f * c g )( Y ) = ∑ f , g : 2 S → ℤ f ( A ) g ( B ) A ∪ B = Y | S | = k ∑ n ( t , α , A ) = n ( t 1 , α , A 1 ) n ( t 2 , α , A 2 ) A 1 , A 2 ⊆ χ c ( t ) A 1 ∩ A 2 = A 10
Covering Product Y ⊆ S ( f * c g )( Y ) = ∑ f , g : 2 S → ℤ f ( A ) g ( B ) A ∪ B = Y | S | = k Theorem (Björklund, Husfeldt, Kaski, Koivisto 2007) O (2 k k ) All values of the covering product can be computed with arithmetic operations. f * c g ∑ n ( t , α , A ) = n ( t 1 , α , A 1 ) n ( t 2 , α , A 2 ) A 1 , A 2 ⊆ χ c ( t ) A 1 ∩ A 2 = A 10
Summary #SAT with incidence treewidth k * 4 k * ⋅ p ( F )
Summary #SAT with incidence treewidth k * 4 k * ⋅ p ( F ) Fast Zeta- and Möbius Transform Covering Product
Summary #SAT with incidence treewidth k * 4 k * ⋅ p ( F ) Fast Zeta- and Möbius Transform Covering Product
Recommend
More recommend