theory of computer science
play

Theory of Computer Science E6. Beyond NP Gabriele R oger - PowerPoint PPT Presentation

Theory of Computer Science E6. Beyond NP Gabriele R oger University of Basel May 25, 2020 Gabriele R oger (University of Basel) Theory of Computer Science May 25, 2020 1 / 18 Theory of Computer Science May 25, 2020 E6. Beyond NP


  1. Theory of Computer Science E6. Beyond NP Gabriele R¨ oger University of Basel May 25, 2020 Gabriele R¨ oger (University of Basel) Theory of Computer Science May 25, 2020 1 / 18

  2. Theory of Computer Science May 25, 2020 — E6. Beyond NP E6.1 coNP E6.2 Time and Space Complexity E6.3 Polynomial Hierarchy E6.4 Counting Gabriele R¨ oger (University of Basel) Theory of Computer Science May 25, 2020 2 / 18

  3. Complexity Theory: What we already have seen ◮ Complexity theory investigates which problems are “easy” to solve and which ones are “hard”. ◮ two important problem classes: ◮ P: problems that are solvable in polynomial time by “normal” computation mechanisms ◮ NP: problems that are solvable in polynomial time with the help of nondeterminism ◮ We know that P ⊆ NP, but we do not know whether P = NP. ◮ Many practically relevant problems are NP-complete: ◮ They belong to NP. ◮ All problems in NP can be polynomially reduced to them. ◮ If there is an efficient algorithm for one NP-complete problem, then there are efficient algorithms for all problems in NP. Gabriele R¨ oger (University of Basel) Theory of Computer Science May 25, 2020 3 / 18

  4. E6. Beyond NP coNP E6.1 coNP Gabriele R¨ oger (University of Basel) Theory of Computer Science May 25, 2020 4 / 18

  5. E6. Beyond NP coNP Complexity Class coNP Definition (coNP) coNP is the set of all languages L for which ¯ L ∈ NP. Example: The complement of SAT is in coNP. Gabriele R¨ oger (University of Basel) Theory of Computer Science May 25, 2020 5 / 18

  6. E6. Beyond NP coNP Hardness and Completeness Definition (Hardness and Completeness) Let C be a complexity class. A problem Y is called C-hard if X ≤ p Y for all problems X ∈ C. Y is called C-complete if Y ∈ C and Y is C-hard. Example ( Tautology ) The following problem Tautology is coNP-complete: Given: a propositional logic formula ϕ Question: Is ϕ valid? Gabriele R¨ oger (University of Basel) Theory of Computer Science May 25, 2020 6 / 18

  7. E6. Beyond NP coNP Known Results and Open Questions Open ◮ NP ? = coNP Known ◮ P ⊆ coNP ◮ If X is NP-complete then ¯ L is coNP-complete. ◮ If NP � = coNP then P � = NP. ◮ If a coNP-complete problem is in NP, then NP = coNP. ◮ If a coNP-complete problem is in P, then P = coNP = NP. Gabriele R¨ oger (University of Basel) Theory of Computer Science May 25, 2020 7 / 18

  8. E6. Beyond NP Time and Space Complexity E6.2 Time and Space Complexity Gabriele R¨ oger (University of Basel) Theory of Computer Science May 25, 2020 8 / 18

  9. E6. Beyond NP Time and Space Complexity Time Definition (Reminder: Accepting a Language in Time f ) Let M be a DTM or NTM with input alphabet Σ, L ⊆ Σ ∗ a language and f : N 0 → N 0 a function. M accepts L in time f if: 1 for all words w ∈ L : M accepts w in time f ( | w | ) 2 for all words w / ∈ L : M does not accept w ◮ TIME( f ): all languages accepted by a DTM in time f . ◮ NTIME( f ): all languages accepted by a NTM in time f . ◮ P = � k ∈ N TIME( n k ) ◮ NP = � k ∈ N NTIME( n k ) Gabriele R¨ oger (University of Basel) Theory of Computer Science May 25, 2020 9 / 18

  10. E6. Beyond NP Time and Space Complexity Space ◮ Analogously: A TM accepts a language L in space f if every word w ∈ L gets accepted using at most of f ( | w | ) space besides it input on the tape and no w �∈ L gets accepted. ◮ SPACE( f ): all languages accepted by a DTM in space f . ◮ NSPACE( f ): all languages accepted by a NTM in space f . Gabriele R¨ oger (University of Basel) Theory of Computer Science May 25, 2020 10 / 18

  11. E6. Beyond NP Time and Space Complexity Important Complexity Classes Beyond NP ◮ PSPACE = � k ∈ N SPACE( n k ) ◮ NPSPACE = � k ∈ N NSPACE( n k ) k ∈ N TIME(2 n k ) ◮ EXPTIME = � k ∈ N SPACE(2 n k ) ◮ EXPSPACE = � Some known results: ◮ PSPACE = NPSPACE (from Savitch’s theorem) ◮ PSPACE ⊆ EXPTIME ⊆ EXPSPACE (at least one relationship strict) ◮ P � = EXPTIME, PSPACE � = EXPSPACE ◮ P ⊆ NP ⊆ PSPACE Gabriele R¨ oger (University of Basel) Theory of Computer Science May 25, 2020 11 / 18

  12. E6. Beyond NP Polynomial Hierarchy E6.3 Polynomial Hierarchy Gabriele R¨ oger (University of Basel) Theory of Computer Science May 25, 2020 12 / 18

  13. E6. Beyond NP Polynomial Hierarchy Oracle Machines An oracle machine is like a Turing machine that has access to an oracle which can solve some decision problem in constant time. Example oracle classes: ◮ P NP = { L | L can get accepted in polynomial time by a DTM P NP = { L | with an oracle that decides some problem in NP } ◮ NP NP = { L | L can get accepted in pol. time by a NTM NP NP = { L | with an oracle deciding some problem in NP } Gabriele R¨ oger (University of Basel) Theory of Computer Science May 25, 2020 13 / 18

  14. E6. Beyond NP Polynomial Hierarchy Polynomial Hierarchy . . . Σ P Π P 3 3 Inductively defined: ∆ P 3 ◮ ∆ P 0 := Σ P 0 := Π P 0 := P i +1 := P Σ P ◮ ∆ P Σ P Π P i 2 2 i +1 := NP Σ P ◮ Σ P i P NP = ∆ P i +1 := coNP Σ P ◮ Π P 2 i ◮ PH := � k Σ P k NP = Σ P Π P 1 = coNP 1 ∆ P 0 = Σ P 0 = Π P 0 = P = ∆ P 1 Gabriele R¨ oger (University of Basel) Theory of Computer Science May 25, 2020 14 / 18

  15. E6. Beyond NP Polynomial Hierarchy Polynomial Hierarchy: Results ◮ PH ⊆ PSPACE (PH ? = PSPACE is open) ◮ There are complete problems for each level. ◮ If there is a PH-complete problem, then the polynomial hierarchy collapses to some finite level. ◮ If P = NP, the polynomial hierarchy collapses to the first level. Gabriele R¨ oger (University of Basel) Theory of Computer Science May 25, 2020 15 / 18

  16. E6. Beyond NP Counting E6.4 Counting Gabriele R¨ oger (University of Basel) Theory of Computer Science May 25, 2020 16 / 18

  17. E6. Beyond NP Counting #P Complexity class #P ◮ Set of functions f : { 0 , 1 } ∗ → N 0 , where f ( n ) is the number of accepting paths of a polynomial-time NTM Example ( #SAT ) The following problem #SAT is #P-complete: Given: a propositional logic formula ϕ Question: How many models does ϕ have? Gabriele R¨ oger (University of Basel) Theory of Computer Science May 25, 2020 17 / 18

  18. E6. Beyond NP End of Part E What’s Next? contents of this course: A. background � ⊲ mathematical foundations and proof techniques B. logic � ⊲ How can knowledge be represented? ⊲ How can reasoning be automated? C. automata theory and formal languages � ⊲ What is a computation? D. Turing computability � ⊲ What can be computed at all? E. complexity theory � ⊲ What can be computed efficiently? F. more computability theory ⊲ Other models of computability Gabriele R¨ oger (University of Basel) Theory of Computer Science May 25, 2020 18 / 18

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