complexity of counting
play

Complexity of Counting Lecture 21 #P: Toda s Theorem 1 Last Time - PowerPoint PPT Presentation

Complexity of Counting Lecture 21 #P: Toda s Theorem 1 Last Time 2 Last Time #P: counting problems of the form #R(x) = |{w: R(x,w)=1}|, where R is a polynomial time relation 2 Last Time #P: counting problems of the form #R(x) = |{w:


  1. ♁ P ⊆ RP ⇒ NP=RP Randomized reduction of SAT to Unique-SAT: A probabilistic polynomial time algorithm A such that If φ ∈ SAT, with prob. ≥ ε (n), A φ will have exactly one satisfying assignment. Else A φ will have none. Add a filter which will pass exactly one witness (if any): A φ (w) = φ (w) and filter(w) filter(w): a Boolean formula saying h(w)=0. (If using auxiliary variables, i.e., ∃ z filter(w,z), use a parsimonious reduction.) 7

  2. ♁ P ⊆ RP ⇒ NP=RP Randomized reduction of SAT to Unique-SAT: A probabilistic polynomial time algorithm A such that If φ ∈ SAT, with prob. ≥ ε (n), A φ will have exactly one satisfying assignment. Else A φ will have none. Add a filter which will pass exactly one witness (if any): A φ (w) = φ (w) and filter(w) filter(w): a Boolean formula saying h(w)=0. (If using auxiliary variables, i.e., ∃ z filter(w,z), use a parsimonious reduction.) If witness n-bit long (|X|={0,1} n ), pick R={0,1} k , with k random in the range [1,n] 7

  3. Reducing PH to P #P 8

  4. Reducing PH to P #P Two steps 8

  5. Reducing PH to P #P Two steps Randomized reduction of PH to P ⊕ P 8

  6. Reducing PH to P #P Two steps Randomized reduction of PH to P ⊕ P Converting the probabilistic guarantee to a deterministic #P statement 8

  7. Quantifier Gallery! 9

  8. ∃ Quantifier Gallery! For at least one 9

  9. ∃ ∀ Quantifier Gallery! For at least one For all 9

  10. ∃ ∀ Quantifier Gallery! For at least one For all ∃ r For at least r fraction 9

  11. ∃ ∀ Quantifier Gallery! For at least one For all ∃ r For at least r fraction ∃ ! For exactly one 9

  12. ∃ ∀ ⊕ Quantifier Gallery! For at least one For all ∃ r For at least r fraction ∃ ! For exactly one For an odd number of 9

  13. QBF to ♁ BF 10

  14. QBF to ♁ BF We have a randomized reduction: φ to A φ such that 10

  15. QBF to ♁ BF We have a randomized reduction: φ to A φ such that ∃ w φ (w) ⇒ ⊕ w A φ (w) with prob. ≥ ε (n) 10

  16. QBF to ♁ BF We have a randomized reduction: φ to A φ such that ∃ w φ (w) ⇒ ⊕ w A φ (w) with prob. ≥ ε (n) ∀ w not φ (w) ⇒ not ⊕ w A φ (w) (with prob. = 1) 10

  17. QBF to ♁ BF We have a randomized reduction: φ to A φ such that ∃ w φ (w) ⇒ ⊕ w A φ (w) with prob. ≥ ε (n) ∀ w not φ (w) ⇒ not ⊕ w A φ (w) (with prob. = 1) i.e., with prob ≥ ε (n), we have ∃ w φ (w) ⇔ ⊕ w A φ (w) (and hence also ∀ w not φ (w) ⇔ not ⊕ w A φ (w)) 10

  18. QBF to ♁ BF We have a randomized reduction: φ to A φ such that ∃ w φ (w) ⇒ ⊕ w A φ (w) with prob. ≥ ε (n) ∀ w not φ (w) ⇒ not ⊕ w A φ (w) (with prob. = 1) i.e., with prob ≥ ε (n), we have ∃ w φ (w) ⇔ ⊕ w A φ (w) (and hence also ∀ w not φ (w) ⇔ not ⊕ w A φ (w)) Reduction works even if φ (w) is a partially quantified Boolean formula 10

  19. QBF to ♁ BF We have a randomized reduction: φ to A φ such that ∃ w φ (w) ⇒ ⊕ w A φ (w) with prob. ≥ ε (n) ∀ w not φ (w) ⇒ not ⊕ w A φ (w) (with prob. = 1) i.e., with prob ≥ ε (n), we have ∃ w φ (w) ⇔ ⊕ w A φ (w) (and hence also ∀ w not φ (w) ⇔ not ⊕ w A φ (w)) Reduction works even if φ (w) is a partially quantified Boolean formula Can all ∃ / ∀ be removed, by repeating, so that only ⊕ remain? 10

  20. Some # arithmetic 11

  21. Some # arithmetic Given two boolean formulas φ (x) and ψ (y), define 11

  22. Some # arithmetic Given two boolean formulas φ (x) and ψ (y), define F φ . ψ (x,y): φ (x) and ψ (y) 11

  23. Some # arithmetic Given two boolean formulas φ (x) and ψ (y), define F φ . ψ (x,y): φ (x) and ψ (y) #F φ . ψ = # φ . # ψ 11

  24. Some # arithmetic Given two boolean formulas φ (x) and ψ (y), define F φ . ψ (x,y): φ (x) and ψ (y) #F φ . ψ = # φ . # ψ F φ + ψ (x,y,z): (z=0,y=0 and φ (x)) or (z=1,x=0 and ψ (y)) 11

  25. Some # arithmetic Given two boolean formulas φ (x) and ψ (y), define F φ . ψ (x,y): φ (x) and ψ (y) #F φ . ψ = # φ . # ψ F φ + ψ (x,y,z): (z=0,y=0 and φ (x)) or (z=1,x=0 and ψ (y)) #F φ + ψ = # φ + # ψ 11

  26. Some # arithmetic Given two boolean formulas φ (x) and ψ (y), define F φ . ψ (x,y): φ (x) and ψ (y) #F φ . ψ = # φ . # ψ F φ + ψ (x,y,z): (z=0,y=0 and φ (x)) or (z=1,x=0 and ψ (y)) #F φ + ψ = # φ + # ψ F φ +1 := (z=0 and φ (x)) or (z=1 and x=0). #F φ +1 = # φ + 1 11

  27. Some # arithmetic Given two boolean formulas φ (x) and ψ (y), define F φ . ψ (x,y): φ (x) and ψ (y) #F φ . ψ = # φ . # ψ F φ + ψ (x,y,z): (z=0,y=0 and φ (x)) or (z=1,x=0 and ψ (y)) #F φ + ψ = # φ + # ψ F φ +1 := (z=0 and φ (x)) or (z=1 and x=0). #F φ +1 = # φ + 1 Works even if φ , ψ are partially quantified boolean formulas 11

  28. Some ⊕ arithmetic 12

  29. Some ⊕ arithmetic Boolean combinations of QBFs with ⊕ quantifiers 12

  30. Some ⊕ arithmetic Boolean combinations of QBFs with ⊕ quantifiers ⊕ x φ (x) and ⊕ y ψ (y) ⇔ ⊕ x,y F φ . ψ (x,y), i.e. ⊕ x,y φ (x) and ψ (y) 12

  31. Some ⊕ arithmetic Boolean combinations of QBFs with ⊕ quantifiers ⊕ x φ (x) and ⊕ y ψ (y) ⇔ ⊕ x,y F φ . ψ (x,y), i.e. ⊕ x,y φ (x) and ψ (y) not ⊕ x φ (x) ⇔ ⊕ x,z F φ +1 (x,z). i.e. ⊕ x,z (z=1,x=0) or (z=0, φ (x)) 12

  32. Some ⊕ arithmetic Boolean combinations of QBFs with ⊕ quantifiers ⊕ x φ (x) and ⊕ y ψ (y) ⇔ ⊕ x,y F φ . ψ (x,y), i.e. ⊕ x,y φ (x) and ψ (y) not ⊕ x φ (x) ⇔ ⊕ x,z F φ +1 (x,z). i.e. ⊕ x,z (z=1,x=0) or (z=0, φ (x)) ⊕ x ( ⊕ y φ (x,y)) ⇔ ⊕ x , y φ (x,y) 12

  33. Some ⊕ arithmetic Boolean combinations of QBFs with ⊕ quantifiers ⊕ x φ (x) and ⊕ y ψ (y) ⇔ ⊕ x,y F φ . ψ (x,y), i.e. ⊕ x,y φ (x) and ψ (y) not ⊕ x φ (x) ⇔ ⊕ x,z F φ +1 (x,z). i.e. ⊕ x,z (z=1,x=0) or (z=0, φ (x)) ⊕ x ( ⊕ y φ (x,y)) ⇔ ⊕ x , y φ (x,y) ( ⊕ , ∃ , ∀ )-QBF can be converted to the form ⊕ z F(z), where F is a ( ∃ , ∀ )-QBF , increasing the size by at most a constant factor, and not changing number of ∃ , ∀ 12

  34. QBF to ♁ BF 13

  35. QBF to ♁ BF Recall: with prob ≥ ε (n), we have ∃ w φ (w) ⇔ ⊕ w A φ (w) (and ∀ w not φ (w) ⇔ not ⊕ w A φ (w)) 13

  36. QBF to ♁ BF Recall: with prob ≥ ε (n), we have ∃ w φ (w) ⇔ ⊕ w A φ (w) (and ∀ w not φ (w) ⇔ not ⊕ w A φ (w)) Boosting the probability: ε (n) to 1- δ (n) 13

  37. QBF to ♁ BF Recall: with prob ≥ ε (n), we have ∃ w φ (w) ⇔ ⊕ w A φ (w) (and ∀ w not φ (w) ⇔ not ⊕ w A φ (w)) Boosting the probability: ε (n) to 1- δ (n) ⊕ w A 1 φ (w) or ⊕ w A 2 φ (w) or ... or ⊕ w A t φ (w) 13

  38. QBF to ♁ BF Recall: with prob ≥ ε (n), we have ∃ w φ (w) ⇔ ⊕ w A φ (w) (and ∀ w not φ (w) ⇔ not ⊕ w A φ (w)) Boosting the probability: ε (n) to 1- δ (n) ⊕ w A 1 φ (w) or ⊕ w A 2 φ (w) or ... or ⊕ w A t φ (w) Can rewrite in the form ⊕ z B φ (z) where B φ has no ⊕ 13

  39. QBF to ♁ BF Recall: with prob ≥ ε (n), we have ∃ w φ (w) ⇔ ⊕ w A φ (w) (and ∀ w not φ (w) ⇔ not ⊕ w A φ (w)) Boosting the probability: ε (n) to 1- δ (n) ⊕ w A 1 φ (w) or ⊕ w A 2 φ (w) or ... or ⊕ w A t φ (w) Can rewrite in the form ⊕ z B φ (z) where B φ has no ⊕ In prenex form ⊕ z B φ (z) has one less ∃ / ∀ than ∃ w φ (w) 13

  40. QBF to ♁ BF Recall: with prob ≥ ε (n), we have ∃ w φ (w) ⇔ ⊕ w A φ (w) (and ∀ w not φ (w) ⇔ not ⊕ w A φ (w)) Boosting the probability: ε (n) to 1- δ (n) ⊕ w A 1 φ (w) or ⊕ w A 2 φ (w) or ... or ⊕ w A t φ (w) Can rewrite in the form ⊕ z B φ (z) where B φ has no ⊕ In prenex form ⊕ z B φ (z) has one less ∃ / ∀ than ∃ w φ (w) If we start from ⊕ x ∃ w φ (w,x) we get equivalent (with probability 1- δ (n)) ⊕ x ⊕ z B φ (z,x) 13

  41. QBF to ♁ BF Recall: with prob ≥ ε (n), we have ∃ w φ (w) ⇔ ⊕ w A φ (w) (and ∀ w not φ (w) ⇔ not ⊕ w A φ (w)) Boosting the probability: ε (n) to 1- δ (n) ⊕ w A 1 φ (w) or ⊕ w A 2 φ (w) or ... or ⊕ w A t φ (w) Can rewrite in the form ⊕ z B φ (z) where B φ has no ⊕ In prenex form ⊕ z B φ (z) has one less ∃ / ∀ than ∃ w φ (w) If we start from ⊕ x ∃ w φ (w,x) we get equivalent (with probability 1- δ (n)) ⊕ x ⊕ z B φ (z,x) By repeating, QBF can be converted to the form ⊕ z F(z) where F is unquantified, equivalent with prob. close to 1 13

  42. Reducing PH to P #P 14

  43. Reducing PH to P #P Two steps 14

  44. Reducing PH to P #P Two steps Randomized reduction of PH to P ⊕ P 14

  45. Reducing PH to P #P Two steps Randomized reduction of PH to P ⊕ P TQBF instance ψ to ⊕ SAT instance φ ψ 14

  46. Reducing PH to P #P Two steps Randomized reduction of PH to P ⊕ P TQBF instance ψ to ⊕ SAT instance φ ψ ψ ⇒ ⊕ φ ψ w.p. > 2/3; ¬ ψ ⇒ ¬ ⊕ φ ψ (w.p. 1) 14

  47. Reducing PH to P #P Two steps Randomized reduction of PH to P ⊕ P TQBF instance ψ to ⊕ SAT instance φ ψ ψ ⇒ ⊕ φ ψ w.p. > 2/3; ¬ ψ ⇒ ¬ ⊕ φ ψ (w.p. 1) Converting the probabilistic guarantee to a deterministic #P calculation 14

  48. Reducing PH to P #P Two steps Randomized reduction of PH to P ⊕ P TQBF instance ψ to ⊕ SAT instance φ ψ ψ ⇒ ⊕ φ ψ w.p. > 2/3; ¬ ψ ⇒ ¬ ⊕ φ ψ (w.p. 1) Converting the probabilistic guarantee to a deterministic #P calculation ψ s.t. ¬ ⊕ φ ψ ⇒ # θ ψ = 0 (mod N) 14

  49. Reducing PH to P #P Two steps Randomized reduction of PH to P ⊕ P TQBF instance ψ to ⊕ SAT instance φ ψ ψ ⇒ ⊕ φ ψ w.p. > 2/3; ¬ ψ ⇒ ¬ ⊕ φ ψ (w.p. 1) Converting the probabilistic guarantee to a deterministic #P calculation ψ s.t. ¬ ⊕ φ ψ ⇒ # θ ψ = 0 (mod N) ψ s.t. ⊕ φ ψ w.p. > 2/3 ⇒ # θ ψ ≠ 0 (mod N) 14

  50. Reduction to #P 15

  51. Reduction to #P Converting the probabilistic guarantee to a deterministic #P calculation 15

  52. Reduction to #P Converting the probabilistic guarantee to a deterministic #P calculation ψ s.t. ¬ ⊕ φ ψ ⇒ # θ ψ = 0 (mod N) 15

  53. Reduction to #P Converting the probabilistic guarantee to a deterministic #P calculation ψ s.t. ¬ ⊕ φ ψ ⇒ # θ ψ = 0 (mod N) ψ s.t. ⊕ φ ψ w.p. > 2/3 ⇒ # θ ψ ≠ 0 (mod N) 15

  54. Reduction to #P Converting the probabilistic guarantee to a deterministic #P calculation ψ s.t. ¬ ⊕ φ ψ ⇒ # θ ψ = 0 (mod N) ψ s.t. ⊕ φ ψ w.p. > 2/3 ⇒ # θ ψ ≠ 0 (mod N) Attempt 1: let φ ψ r be the formula generated using random tape r. To determine if ψ is such that number of random tapes r for which ⊕ φ ψ r holds is 0 or > (2/3)2 m 15

  55. Reduction to #P Converting the probabilistic guarantee to a deterministic #P calculation ψ s.t. ¬ ⊕ φ ψ ⇒ # θ ψ = 0 (mod N) ψ s.t. ⊕ φ ψ w.p. > 2/3 ⇒ # θ ψ ≠ 0 (mod N) Attempt 1: let φ ψ r be the formula generated using random tape r. To determine if ψ is such that number of random tapes r for which ⊕ φ ψ r holds is 0 or > (2/3)2 m Enough to compute # r ⊕ φ ψ r 15

  56. Reduction to #P Converting the probabilistic guarantee to a deterministic #P calculation ψ s.t. ¬ ⊕ φ ψ ⇒ # θ ψ = 0 (mod N) ψ s.t. ⊕ φ ψ w.p. > 2/3 ⇒ # θ ψ ≠ 0 (mod N) Attempt 1: let φ ψ r be the formula generated using random tape r. To determine if ψ is such that number of random tapes r for which ⊕ φ ψ r holds is 0 or > (2/3)2 m Enough to compute # r ⊕ φ ψ r But ⊕ φ ψ r is not in P (though φ ψ r (x) is in P) 15

  57. Reduction to #P 16

  58. Reduction to #P Attempt 2: If ⊕ x φ ψ r = # x φ ψ r then enough to compute the number of (x,r) such that φ ψ r (x) 16

  59. Reduction to #P Attempt 2: If ⊕ x φ ψ r = # x φ ψ r then enough to compute the number of (x,r) such that φ ψ r (x) But ⊕ φ ψ is # φ ψ mod 2 16

Recommend


More recommend