computational complexity
play

Computational Complexity Lecture 9 More of the Polynomial - PowerPoint PPT Presentation

Computational Complexity Lecture 9 More of the Polynomial Hierarchy Alternation 1 PH is in terms of verification 2 PH is in terms of verification Recall kp 2 PH is in terms of verification Recall kp Languages L = {x| w 1 w


  1. ATIME Σ k TIME, Π k TIME Σ k TIME(T): languages decided by ATMs with at most k alternations starting with ∃ , in time T(n) Σ k TIME(poly) = Σ kp Latter being exactly the certificate version ATIME ATIME(T): languages decided by ATMs in time T(n) 9

  2. ATIME vs. DSPACE 10

  3. ATIME vs. DSPACE ATIME(T) ⊆ DSPACE(T 2 ) 10

  4. ATIME vs. DSPACE ATIME(T) ⊆ DSPACE(T 2 ) c.f. NTIME(T) ⊆ DSPACE(T) 10

  5. ATIME vs. DSPACE ATIME(T) ⊆ DSPACE(T 2 ) c.f. NTIME(T) ⊆ DSPACE(T) AP ⊆ PSPACE 10

  6. ATIME vs. DSPACE ATIME(T) ⊆ DSPACE(T 2 ) c.f. NTIME(T) ⊆ DSPACE(T) AP ⊆ PSPACE But PSPACE ⊆ AP 10

  7. ATIME vs. DSPACE ATIME(T) ⊆ DSPACE(T 2 ) c.f. NTIME(T) ⊆ DSPACE(T) AP ⊆ PSPACE But PSPACE ⊆ AP TQBF in AP (why?) 10

  8. ATIME vs. DSPACE ATIME(T) ⊆ DSPACE(T 2 ) c.f. NTIME(T) ⊆ DSPACE(T) AP ⊆ PSPACE But PSPACE ⊆ AP TQBF in AP (why?) AP = PSPACE 10

  9. ATIME(T) ⊆ DSPACE(T 2 ) 11

  10. ATIME(T) ⊆ DSPACE(T 2 ) Evaluate if the start configuration is accepting, recursively 11

  11. ATIME(T) ⊆ DSPACE(T 2 ) Evaluate if the start configuration is accepting, recursively A ∃ configuration is accepting if any child is, and a ∀ configuration is accepting if all children are 11

  12. ATIME(T) ⊆ DSPACE(T 2 ) Evaluate if the start configuration is accepting, recursively A ∃ configuration is accepting if any child is, and a ∀ configuration is accepting if all children are Space needed: depth x size of configuration 11

  13. ATIME(T) ⊆ DSPACE(T 2 ) Evaluate if the start configuration is accepting, recursively A ∃ configuration is accepting if any child is, and a ∀ configuration is accepting if all children are Space needed: depth x size of configuration Depth = # alternations = O(T). Also, size of configuration = O(T) as any thread runs for time O(T) 11

  14. ATIME(T) ⊆ DSPACE(T 2 ) Evaluate if the start configuration is accepting, recursively A ∃ configuration is accepting if any child is, and a ∀ configuration is accepting if all children are Space needed: depth x size of configuration Depth = # alternations = O(T). Also, size of configuration = O(T) as any thread runs for time O(T) O(T 2 ) 11

  15. ASPACE vs. DTIME 12

  16. ASPACE vs. DTIME ASPACE(S) = DTIME(2 O(S) ) 12

  17. ASPACE vs. DTIME ASPACE(S) = DTIME(2 O(S) ) Recall, already seen NSPACE(S) ⊆ DTIME(2 O(S) ) 12

  18. ASPACE vs. DTIME ASPACE(S) = DTIME(2 O(S) ) Recall, already seen NSPACE(S) ⊆ DTIME(2 O(S) ) Poly-time connectivity in configuration graph of size at most 2 O(S) 12

  19. ASPACE vs. DTIME ASPACE(S) = DTIME(2 O(S) ) Recall, already seen NSPACE(S) ⊆ DTIME(2 O(S) ) Poly-time connectivity in configuration graph of size at most 2 O(S) Instead of connectivity, can recursively label all accepting nodes (2 lookups per node: in poly(S) time). So ASPACE(S) ⊆ DTIME(2 O(S) ) 12

  20. ASPACE vs. DTIME ASPACE(S) = DTIME(2 O(S) ) Recall, already seen NSPACE(S) ⊆ DTIME(2 O(S) ) Poly-time connectivity in configuration graph of size at most 2 O(S) Instead of connectivity, can recursively label all accepting nodes (2 lookups per node: in poly(S) time). So ASPACE(S) ⊆ DTIME(2 O(S) ) To show DTIME(2 O(S) ) ⊆ ASPACE(S) 12

  21. DTIME(2 O(S) ) ⊆ ASPACE(S) 13

  22. DTIME(2 O(S) ) ⊆ ASPACE(S) To decide, is configuration after t steps accepting 13

  23. DTIME(2 O(S) ) ⊆ ASPACE(S) To decide, is configuration after t steps accepting Accept configuration, with unique first cell α (blank tape cell and unique accept state) 13

  24. DTIME(2 O(S) ) ⊆ ASPACE(S) To decide, is configuration after t steps accepting Accept configuration, with unique first cell α (blank tape cell and unique accept state) Once there, stays there 13

  25. DTIME(2 O(S) ) ⊆ ASPACE(S) To decide, is configuration after t steps accepting Accept configuration, with unique first cell α (blank tape cell and unique accept state) Once there, stays there Is first cell of config after t steps α 13

  26. DTIME(2 O(S) ) ⊆ ASPACE(S) To decide, is configuration after t steps accepting Accept configuration, with unique first cell α (blank tape cell and unique accept state) Once there, stays there Is first cell of config after t steps α C(i,j,x) : if after i steps, j th cell of config is x 13

  27. DTIME(2 O(S) ) ⊆ ASPACE(S) To decide, is configuration after t steps accepting Accept configuration, with unique first cell α (blank tape cell and unique accept state) Once there, stays there Is first cell of config after t steps α C(i,j,x) : if after i steps, j th cell of config is x Need to check C(t,1, α ) 13

  28. ATM for TM simulation 14

  29. ATM for TM simulation C(i,j,x) : if after i steps, j th cell of config is x 14

  30. ATM for TM simulation C(i,j,x) : if after i steps, j th cell of config is x Recall reduction in Cook’ s theorem 14

  31. ATM for TM simulation C(i,j,x) : if after i steps, j th cell of config is x Recall reduction in Cook’ s theorem If C(i-1,j-1,a), C(i-1,j,b), C(i-1,j+1,c) then C(i,j,x) iff x=F(a,b,c) 14

  32. ATM for TM simulation C(i,j,x) : if after i steps, j th cell of config is x Recall reduction in Cook’ s theorem If C(i-1,j-1,a), C(i-1,j,b), C(i-1,j+1,c) then C(i,j,x) iff x=F(a,b,c) C(i,j,x): ∃ a,b,c st x=F(a,b,c) and C(i-1,j-1,a), C(i-1,j,b), C(i-1,j+1,c) 14

  33. ATM for TM simulation C(i,j,x) : if after i steps, j th cell of config is x Recall reduction in Cook’ s theorem If C(i-1,j-1,a), C(i-1,j,b), C(i-1,j+1,c) then C(i,j,x) iff x=F(a,b,c) C(i,j,x): ∃ a,b,c st x=F(a,b,c) and C(i-1,j-1,a), C(i-1,j,b), C(i-1,j+1,c) Base case: C(0,j,x) easy to check from input 14

  34. ATM for TM simulation C(i,j,x) : if after i steps, j th cell of config is x Recall reduction in Cook’ s theorem If C(i-1,j-1,a), C(i-1,j,b), C(i-1,j+1,c) then C(i,j,x) iff x=F(a,b,c) C(i,j,x): ∃ a,b,c st x=F(a,b,c) and C(i-1,j-1,a), C(i-1,j,b), C(i-1,j+1,c) Base case: C(0,j,x) easy to check from input Naive recursion: Extra O(S) space at each level for 2 O(S) levels! 14

  35. ATM for TM simulation 15

  36. ATM for TM simulation ATM to check if C(i,j,x) 15

  37. ATM for TM simulation ATM to check if C(i,j,x) C(i,j,x): ∃ a,b,c st x=F(a,b,c) and C(i-1,j-1,a), C(i-1,j,b), C(i-1,j+1,c) 15

  38. ATM for TM simulation ATM to check if C(i,j,x) C(i,j,x): ∃ a,b,c st x=F(a,b,c) and C(i-1,j-1,a), C(i-1,j,b), C(i-1,j+1,c) Tail-recursion (in parallel forks) 15

  39. ATM for TM simulation ATM to check if C(i,j,x) C(i,j,x): ∃ a,b,c st x=F(a,b,c) and C(i-1,j-1,a), C(i-1,j,b), C(i-1,j+1,c) Tail-recursion (in parallel forks) Check x=F(a,b,c); then enter universal state, fork out for each of the three configurations to be checked 15

  40. ATM for TM simulation ATM to check if C(i,j,x) C(i,j,x): ∃ a,b,c st x=F(a,b,c) and C(i-1,j-1,a), C(i-1,j,b), C(i-1,j+1,c) Tail-recursion (in parallel forks) Check x=F(a,b,c); then enter universal state, fork out for each of the three configurations to be checked Overwrite C(i,j,x) with C(i-1,...) and reuse space 15

  41. ATM for TM simulation ATM to check if C(i,j,x) C(i,j,x): ∃ a,b,c st x=F(a,b,c) and C(i-1,j-1,a), C(i-1,j,b), C(i-1,j+1,c) Tail-recursion (in parallel forks) Check x=F(a,b,c); then enter universal state, fork out for each of the three configurations to be checked Overwrite C(i,j,x) with C(i-1,...) and reuse space Stay within the same O(S) space at each level! 15

  42. ATM for TM simulation ATM to check if C(i,j,x) C(i,j,x): ∃ a,b,c st x=F(a,b,c) and C(i-1,j-1,a), C(i-1,j,b), G C(i-1,j+1,c) e t s t f h o e r A f r N e D e . c N h o e c n k e e d t s o t Tail-recursion (in parallel forks) a u c s k e . a Check x=F(a,b,c); then enter universal state, fork out for each of the three configurations to be checked Overwrite C(i,j,x) with C(i-1,...) and reuse space Stay within the same O(S) space at each level! 15

  43. ASPACE vs. DTIME 16

  44. ASPACE vs. DTIME ASPACE(S) = DTIME(2 O(S) ) 16

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend