computational complexity
play

Computational Complexity Lecture 5 in which we relate space and - PowerPoint PPT Presentation

Computational Complexity Lecture 5 in which we relate space and time, and see the essence of PSPACE (TQBF) 1 SPACE and TIME 2 SPACE and TIME NTIME(F) DTIME(F) 2 SPACE and TIME NTIME(F) DTIME(F) 2 SPACE and TIME NTIME(2 O(F) ) DTIME(2


  1. QBF game: examples Vars: x 1 , y 1 , x 2 , y 2 , x 3, y 3 . Formula: φ (x 1 ,y 1 ,x 2 ,y 1 ,x 3, y 3 ) Say, no variables for Adversary. Only x 1 Strategy for Alice? Is “ ∃ x 1 φ (x 1 )” true? Say, no variables for Alice. Only y 1 “Strategy” for Alice? Is “ ∀ y 1 φ (y 1 )” true? 11

  2. QBF game: examples Vars: x 1 , y 1 , x 2 , y 2 , x 3, y 3 . Formula: φ (x 1 ,y 1 ,x 2 ,y 1 ,x 3, y 3 ) Say, no variables for Adversary. Only x 1 Strategy for Alice? Is “ ∃ x 1 φ (x 1 )” true? Say, no variables for Alice. Only y 1 “Strategy” for Alice? Is “ ∀ y 1 φ (y 1 )” true? Say only x 1 , y 1 (now, that’ s more like a game): 11

  3. QBF game: examples Vars: x 1 , y 1 , x 2 , y 2 , x 3, y 3 . Formula: φ (x 1 ,y 1 ,x 2 ,y 1 ,x 3, y 3 ) Say, no variables for Adversary. Only x 1 Strategy for Alice? Is “ ∃ x 1 φ (x 1 )” true? Say, no variables for Alice. Only y 1 “Strategy” for Alice? Is “ ∀ y 1 φ (y 1 )” true? Say only x 1 , y 1 (now, that’ s more like a game): Strategy for Alice? Is “ ∃ x 1 ∀ y 1 φ (x 1 ,y 1 )” true? 11

  4. QBF game: examples Vars: x 1 , y 1 , x 2 , y 2 , x 3, y 3 . Formula: φ (x 1 ,y 1 ,x 2 ,y 1 ,x 3, y 3 ) Say, no variables for Adversary. Only x 1 Strategy for Alice? Is “ ∃ x 1 φ (x 1 )” true? Say, no variables for Alice. Only y 1 “Strategy” for Alice? Is “ ∀ y 1 φ (y 1 )” true? Say only x 1 , y 1 (now, that’ s more like a game): Strategy for Alice? Is “ ∃ x 1 ∀ y 1 φ (x 1 ,y 1 )” true? In general, winning strategy for Alice exists iff 11

  5. QBF game: examples Vars: x 1 , y 1 , x 2 , y 2 , x 3, y 3 . Formula: φ (x 1 ,y 1 ,x 2 ,y 1 ,x 3, y 3 ) Say, no variables for Adversary. Only x 1 Strategy for Alice? Is “ ∃ x 1 φ (x 1 )” true? Say, no variables for Alice. Only y 1 “Strategy” for Alice? Is “ ∀ y 1 φ (y 1 )” true? Say only x 1 , y 1 (now, that’ s more like a game): Strategy for Alice? Is “ ∃ x 1 ∀ y 1 φ (x 1 ,y 1 )” true? In general, winning strategy for Alice exists iff ∃ x 1 ∀ y 1 ... ∃ x n ∀ y n φ (x 1 ,y 1 ,...,x n ,y n ) is true 11

  6. QBF game: examples Vars: x 1 , y 1 , x 2 , y 2 , x 3, y 3 . Formula: φ (x 1 ,y 1 ,x 2 ,y 1 ,x 3, y 3 ) Say, no variables for Adversary. Only x 1 Strategy for Alice? Is “ ∃ x 1 φ (x 1 )” true? Say, no variables for Alice. Only y 1 “Strategy” for Alice? Is “ ∀ y 1 φ (y 1 )” true? Say only x 1 , y 1 (now, that’ s more like a game): Strategy for Alice? Is “ ∃ x 1 ∀ y 1 φ (x 1 ,y 1 )” true? In general, winning strategy for Alice exists iff ∃ x 1 ∀ y 1 ... ∃ x n ∀ y n φ (x 1 ,y 1 ,...,x n ,y n ) is true Else adversary has a winning strategy 11

  7. TQBF , the language 12

  8. TQBF , the language True Quantified Boolean Formula: 12

  9. TQBF , the language True Quantified Boolean Formula: ψ : = ∃ x 1 ∀ y 1 ... ∃ x n ∀ y n φ (x 1 ,y 1 ,...,x n ,y n ) 12

  10. TQBF , the language True Quantified Boolean Formula: ψ : = ∃ x 1 ∀ y 1 ... ∃ x n ∀ y n φ (x 1 ,y 1 ,...,x n ,y n ) TQBF = { ψ | ψ is true} 12

  11. TQBF , the language True Quantified Boolean Formula: ψ : = ∃ x 1 ∀ y 1 ... ∃ x n ∀ y n φ (x 1 ,y 1 ,...,x n ,y n ) TQBF = { ψ | ψ is true} e.g. ψ 1 : ∃ x ∀ y (x=y), ψ 2 : ∀ y ∃ x (x=y) 12

  12. TQBF is in PSPACE 13

  13. TQBF is in PSPACE When is a QBF true? 13

  14. TQBF is in PSPACE When is a QBF true? e.g. ∃ a,b ∀ c φ (a,b,c) 13

  15. TQBF is in PSPACE Game-Tree When is a QBF true? e.g. ∃ a,b ∀ c φ (a,b,c) 13

  16. TQBF is in PSPACE Game-Tree ∃ a When is a QBF true? e.g. ∃ a,b ∀ c φ (a,b,c) ∃ b ∃ b ∀ c φ (0,0,0) φ (0,0,1) 13

  17. TQBF is in PSPACE Game-Tree ∃ a When is a QBF true? e.g. ∃ a,b ∀ c φ (a,b,c) ∃ b ∃ b ∀ c strategy for Alice Winning if game gets here? φ (0,0,0) φ (0,0,1) 13

  18. TQBF is in PSPACE Game-Tree ∃ a When is a QBF true? e.g. ∃ a,b ∀ c φ (a,b,c) Ask if winning strategy from each node ∃ b ∃ b ∀ c strategy for Alice Winning if game gets here? φ (0,0,0) φ (0,0,1) 13

  19. TQBF is in PSPACE Game-Tree ∃ a When is a QBF true? e.g. ∃ a,b ∀ c φ (a,b,c) Ask if winning strategy from each node ∃ b ∃ b Yes from ∃ node if yes from either child. Yes from ∀ node if yes from both. ∀ c strategy for Alice Winning if game gets here? φ (0,0,0) φ (0,0,1) 13

  20. TQBF is in PSPACE Game-Tree ∃ a When is a QBF true? e.g. ∃ a,b ∀ c φ (a,b,c) Ask if winning strategy from each node ∃ b ∃ b Yes from ∃ node if yes from either child. Yes from ∀ node if yes from both. ∀ c strategy for Alice Winning Naive evaluation takes exponential if game gets space (and time) here? φ (0,0,0) φ (0,0,1) 13

  21. TQBF is in PSPACE Game-Tree ∃ a When is a QBF true? e.g. ∃ a,b ∀ c φ (a,b,c) Ask if winning strategy from each node ∃ b ∃ b Yes from ∃ node if yes from either child. Yes from ∀ node if yes from both. ∀ c strategy for Alice Winning Naive evaluation takes exponential if game gets space (and time) here? φ (0,0,0) φ (0,0,1) Can reuse left child computation space for the right child 13

  22. TQBF is in PSPACE Game-Tree ∃ a When is a QBF true? e.g. ∃ a,b ∀ c φ (a,b,c) Ask if winning strategy from each node ∃ b ∃ b Yes from ∃ node if yes from either child. Yes from ∀ node if yes from both. ∀ c strategy for Alice Winning Naive evaluation takes exponential if game gets space (and time) here? φ (0,0,0) φ (0,0,1) Can reuse left child computation space for the right child Space needed = O(depth) + for evaluation = poly(|QBF|) 13

  23. TQBF is PSPACE-hard 14

  24. TQBF is PSPACE-hard For L in PSPACE (i.e., TM M L decides L in space poly(n), or with configs of size S(n)=poly(n) ), show L ! p TQBF 14

  25. TQBF is PSPACE-hard For L in PSPACE (i.e., TM M L decides L in space poly(n), or with configs of size S(n)=poly(n) ), show L ! p TQBF Given x, output f(x) = ψ , s.t. ψ is true iff M L accepts x 14

  26. TQBF is PSPACE-hard For L in PSPACE (i.e., TM M L decides L in space poly(n), or with configs of size S(n)=poly(n) ), show L ! p TQBF Given x, output f(x) = ψ , s.t. ψ is true iff M L accepts x x →ψ in poly time. In particular size of ψ is poly(n) 14

  27. TQBF is PSPACE-hard For L in PSPACE (i.e., TM M L decides L in space poly(n), or with configs of size S(n)=poly(n) ), show L ! p TQBF Given x, output f(x) = ψ , s.t. ψ is true iff M L accepts x x →ψ in poly time. In particular size of ψ is poly(n) Note: As in Cook’ s theorem, can build an unquantified formula φ (even 3CNF) s.t. φ is true iff M L accepts x 14

  28. TQBF is PSPACE-hard For L in PSPACE (i.e., TM M L decides L in space poly(n), or with configs of size S(n)=poly(n) ), show L ! p TQBF Given x, output f(x) = ψ , s.t. ψ is true iff M L accepts x x →ψ in poly time. In particular size of ψ is poly(n) Note: As in Cook’ s theorem, can build an unquantified formula φ (even 3CNF) s.t. φ is true iff M L accepts x But size is poly(time bound on M L ) = exp(n) 14

  29. TQBF is PSPACE-hard For L in PSPACE (i.e., TM M L decides L in space poly(n), or with configs of size S(n)=poly(n) ), show L ! p TQBF Given x, output f(x) = ψ , s.t. ψ is true iff M L accepts x x →ψ in poly time. In particular size of ψ is poly(n) Note: As in Cook’ s theorem, can build an unquantified formula φ (even 3CNF) s.t. φ is true iff M L accepts x But size is poly(time bound on M L ) = exp(n) Use power of quantification to write it succinctly 14

  30. TQBF is PSPACE-hard 15

  31. TQBF is PSPACE-hard An exponential QBF: 15

  32. TQBF is PSPACE-hard An exponential QBF: ∃ C 1 C 2 ... C T ψ 0 (C start ,C 1 ) ∧ ψ 0 (C 1 ,C 2 ) ∧ ... ψ 0 (C T ,C accept ) 15

  33. TQBF is PSPACE-hard An exponential QBF: ∃ C 1 C 2 ... C T ψ 0 (C start ,C 1 ) ∧ ψ 0 (C 1 ,C 2 ) ∧ ... ψ 0 (C T ,C accept ) Here C i are variables whose value assignments correspond to configurations. |C i | = O(S(n)), | ψ 0 (C,C’)| = O(S(n)), T=2 O(S(n)) 15

  34. TQBF is PSPACE-hard An exponential QBF: ∃ C 1 C 2 ... C T ψ 0 (C start ,C 1 ) ∧ ψ 0 (C 1 ,C 2 ) ∧ ... ψ 0 (C T ,C accept ) Here C i are variables whose value assignments correspond to configurations. |C i | = O(S(n)), | ψ 0 (C,C’)| = O(S(n)), T=2 O(S(n)) ψ 0 (C,C’) is an unquantified formula (only variables being C,C’), s.t. it is true iff C evolves into C’ in one step 15

  35. TQBF is PSPACE-hard An exponential QBF: ∃ C 1 C 2 ... C T ψ 0 (C start ,C 1 ) ∧ ψ 0 (C 1 ,C 2 ) ∧ ... ψ 0 (C T ,C accept ) Here C i are variables whose value assignments correspond to configurations. |C i | = O(S(n)), | ψ 0 (C,C’)| = O(S(n)), T=2 O(S(n)) ψ 0 (C,C’) is an unquantified formula (only variables being C,C’), s.t. it is true iff C evolves into C’ in one step F be the (const. sized) formula to derive each bit of new config from a few bits in the previous config 15

  36. TQBF is PSPACE-hard An exponential QBF: ∃ C 1 C 2 ... C T ψ 0 (C start ,C 1 ) ∧ ψ 0 (C 1 ,C 2 ) ∧ ... ψ 0 (C T ,C accept ) Here C i are variables whose value assignments correspond to configurations. |C i | = O(S(n)), | ψ 0 (C,C’)| = O(S(n)), T=2 O(S(n)) ψ 0 (C,C’) is an unquantified formula (only variables being C,C’), s.t. it is true iff C evolves into C’ in one step F be the (const. sized) formula to derive each bit of new config from a few bits in the previous config Then, ψ 0 (C,C’) is ∧ j ( C’ (j) = F(C (j-c) ,...,C (j+c) ) ) 15

  37. TQBF is PSPACE-hard An exponential QBF: ∃ C 1 C 2 ... C T ψ 0 (C start ,C 1 ) ∧ ψ 0 (C 1 ,C 2 ) ∧ ... ψ 0 (C T ,C accept ) Here C i are variables whose value assignments correspond to configurations. |C i | = O(S(n)), | ψ 0 (C,C’)| = O(S(n)), T=2 O(S(n)) ψ 0 (C,C’) is an unquantified formula (only variables being C,C’), s.t. it is true iff C evolves into C’ in one step F be the (const. sized) formula to derive each bit of new config from a few bits in the previous config Then, ψ 0 (C,C’) is ∧ j ( C’ (j) = F(C (j-c) ,...,C (j+c) ) ) | ψ 0 (C,C’)| = O(|C|) 15

  38. TQBF is PSPACE-hard 16

  39. TQBF is PSPACE-hard Plan for a more succinct ψ : A partially quantified boolean formula ψ i s.t. ψ i (C,C’) (fully quantified) is true iff C’ reachable from C in the configuration graph G(M L ,x) within 2 i steps. Output ψ = ψ S(n) (start,accept) 16

  40. TQBF is PSPACE-hard Plan for a more succinct ψ : A partially quantified boolean formula ψ i s.t. ψ i (C,C’) (fully quantified) is true iff C’ reachable from C in the configuration graph G(M L ,x) within 2 i steps. Output ψ = ψ S(n) (start,accept) Base case (i=0): an unquantified formula, ψ 0 16

  41. TQBF is PSPACE-hard Plan for a more succinct ψ : A partially quantified boolean formula ψ i s.t. ψ i (C,C’) (fully quantified) is true iff C’ reachable from C in the configuration graph G(M L ,x) within 2 i steps. Output ψ = ψ S(n) (start,accept) Base case (i=0): an unquantified formula, ψ 0 ψ i+1 (C,C’) := ∃ C’’ ψ i (C,C’’) ∧ ψ i (C’’,C’) 16

Recommend


More recommend