complexity theory
play

Complexity Theory Eric Price UT Austin CS 331, Spring 2020 - PowerPoint PPT Presentation

Complexity Theory Eric Price UT Austin CS 331, Spring 2020 Coronavirus Edition Eric Price (UT Austin) Complexity Theory 1 / 16 Note on Reductions For an algorithm : want to solve NEW. Know how to solve OLD. Reduce NEW to OLD: Eric Price (UT


  1. Complexity Theory Eric Price UT Austin CS 331, Spring 2020 Coronavirus Edition Eric Price (UT Austin) Complexity Theory 1 / 16

  2. Note on Reductions For an algorithm : want to solve NEW. Know how to solve OLD. Reduce NEW to OLD: Eric Price (UT Austin) Complexity Theory 2 / 16

  3. Note on Reductions For an algorithm : want to solve NEW. Know how to solve OLD. Reduce NEW to OLD: ◮ Reduce from “Finding largest square in polytope” to LP. Eric Price (UT Austin) Complexity Theory 2 / 16

  4. Note on Reductions For an algorithm : want to solve NEW. Know how to solve OLD. Reduce NEW to OLD: ◮ Reduce from “Finding largest square in polytope” to LP. ◮ Reduce from “Tile a region with dominos” to network flow. Eric Price (UT Austin) Complexity Theory 2 / 16

  5. Note on Reductions For an algorithm : want to solve NEW. Know how to solve OLD. Reduce NEW to OLD: ◮ Reduce from “Finding largest square in polytope” to LP. ◮ Reduce from “Tile a region with dominos” to network flow. ◮ Reduce from “Solve a word ladder” to shortest path. Eric Price (UT Austin) Complexity Theory 2 / 16

  6. Note on Reductions For an algorithm : want to solve NEW. Know how to solve OLD. Reduce NEW to OLD: ◮ Reduce from “Finding largest square in polytope” to LP. ◮ Reduce from “Tile a region with dominos” to network flow. ◮ Reduce from “Solve a word ladder” to shortest path. For a lower bound : want to show NEW is hard. Know that OLD is hard. Reduce OLD to NEW: Eric Price (UT Austin) Complexity Theory 2 / 16

  7. Note on Reductions For an algorithm : want to solve NEW. Know how to solve OLD. Reduce NEW to OLD: ◮ Reduce from “Finding largest square in polytope” to LP. ◮ Reduce from “Tile a region with dominos” to network flow. ◮ Reduce from “Solve a word ladder” to shortest path. For a lower bound : want to show NEW is hard. Know that OLD is hard. Reduce OLD to NEW: ◮ Reduce SAT to 3SAT Eric Price (UT Austin) Complexity Theory 2 / 16

  8. Note on Reductions For an algorithm : want to solve NEW. Know how to solve OLD. Reduce NEW to OLD: ◮ Reduce from “Finding largest square in polytope” to LP. ◮ Reduce from “Tile a region with dominos” to network flow. ◮ Reduce from “Solve a word ladder” to shortest path. For a lower bound : want to show NEW is hard. Know that OLD is hard. Reduce OLD to NEW: ◮ Reduce SAT to 3SAT ◮ Reduce 3SAT to max-independent set Eric Price (UT Austin) Complexity Theory 2 / 16

  9. Note on Reductions For an algorithm : want to solve NEW. Know how to solve OLD. Reduce NEW to OLD: ◮ Reduce from “Finding largest square in polytope” to LP. ◮ Reduce from “Tile a region with dominos” to network flow. ◮ Reduce from “Solve a word ladder” to shortest path. For a lower bound : want to show NEW is hard. Know that OLD is hard. Reduce OLD to NEW: ◮ Reduce SAT to 3SAT ◮ Reduce 3SAT to max-independent set If OLD is hard, and you could solve OLD by solving NEW, then NEW must be hard as well. Eric Price (UT Austin) Complexity Theory 2 / 16

  10. Models of computation Mentioned Word-RAM model early in semester Eric Price (UT Austin) Complexity Theory 3 / 16

  11. Models of computation Mentioned Word-RAM model early in semester Turing machines: tape, heads, etc. Eric Price (UT Austin) Complexity Theory 3 / 16

  12. Models of computation Mentioned Word-RAM model early in semester Turing machines: tape, heads, etc. Lambda calculus: church numerals, etc. Eric Price (UT Austin) Complexity Theory 3 / 16

  13. Models of computation Mentioned Word-RAM model early in semester Turing machines: tape, heads, etc. Lambda calculus: church numerals, etc. Theorem The set of functions that Turing machines can compute is exactly the same as what Lambda calculus can. Eric Price (UT Austin) Complexity Theory 3 / 16

  14. Models of computation Mentioned Word-RAM model early in semester Turing machines: tape, heads, etc. Lambda calculus: church numerals, etc. Theorem The set of functions that Turing machines can compute is exactly the same as what Lambda calculus can. Conjecture (Church-Turing Thesis) Turing machines can compute anything that is computable by any physical process. Eric Price (UT Austin) Complexity Theory 3 / 16

  15. Church-Turing Thesis Conjecture (Church-Turing Thesis) Turing machines can compute anything that is computable by any physical process. Eric Price (UT Austin) Complexity Theory 4 / 16

  16. Church-Turing Thesis Conjecture (Church-Turing Thesis) Turing machines can compute anything that is computable by any physical process. Conjecture ( Extended Church-Turing Thesis) Turing machines can compute in polynomial time anything that is computable by any “realistic” physical process. Eric Price (UT Austin) Complexity Theory 4 / 16

  17. Church-Turing Thesis Conjecture (Church-Turing Thesis) Turing machines can compute anything that is computable by any physical process. Conjecture ( Extended Church-Turing Thesis) Quantum Turing machines can compute in polynomial time anything that is computable by any “realistic” physical process. Eric Price (UT Austin) Complexity Theory 4 / 16

  18. Formal(ish) Definitions Definition (Language) A “problem” is also referred to as a “language” L ⊆ { 0 , 1 } ∗ consisting of YES inputs. An input x ∈ { 0 , 1 } ∗ is “YES” if, and only if, x ∈ L . Eric Price (UT Austin) Complexity Theory 5 / 16

  19. Formal(ish) Definitions Definition (Language) A “problem” is also referred to as a “language” L ⊆ { 0 , 1 } ∗ consisting of YES inputs. An input x ∈ { 0 , 1 } ∗ is “YES” if, and only if, x ∈ L . Definition (P) A language L is in P iff there exists a poly-time algorithm A such that, for all x , A ( x ) = 1 if and only if x ∈ L . Eric Price (UT Austin) Complexity Theory 5 / 16

  20. Formal(ish) Definitions Definition (Language) A “problem” is also referred to as a “language” L ⊆ { 0 , 1 } ∗ consisting of YES inputs. An input x ∈ { 0 , 1 } ∗ is “YES” if, and only if, x ∈ L . Definition (P) A language L is in P iff there exists a poly-time algorithm A such that, for all x , A ( x ) = 1 if and only if x ∈ L . Definition (NP) A language L is in NP iff there exists a poly-time algorithm V such that: 1 For all x ∈ L , ∃ p ∈ { 0 , 1 } ∗ of poly. length s.t. V ( x , p ) = 1. ∈ L , ∄ p ∈ { 0 , 1 } ∗ of poly. length s.t. V ( x , p ) = 1. 2 For all x / Eric Price (UT Austin) Complexity Theory 5 / 16

  21. Formal(ish) Definitions Definition (Language) A “problem” is also referred to as a “language” L ⊆ { 0 , 1 } ∗ consisting of YES inputs. An input x ∈ { 0 , 1 } ∗ is “YES” if, and only if, x ∈ L . Definition (P) A language L is in P iff there exists a poly-time algorithm A such that, for all x , A ( x ) = 1 if and only if x ∈ L . Definition (NP) A language L is in NP iff there exists a poly-time algorithm V such that: 1 For all x ∈ L , ∃ p ∈ { 0 , 1 } ∗ of poly. length s.t. V ( x , p ) = 1. ∈ L , ∄ p ∈ { 0 , 1 } ∗ of poly. length s.t. V ( x , p ) = 1. 2 For all x / P ⊆ NP : V ( x , p ) := A ( x ). Eric Price (UT Austin) Complexity Theory 5 / 16

  22. Cook-Levin theorem Definition (NP) A language L is in NP iff there exists a poly-time algorithm V such that: 1 For all x ∈ L , ∃ p ∈ { 0 , 1 } ∗ of poly. length s.t. V ( x , p ) = 1. ∈ L , ∄ p ∈ { 0 , 1 } ∗ of poly. length s.t. V ( x , p ) = 1. 2 For all x / Want to show CircuitSAT is NP-hard. Eric Price (UT Austin) Complexity Theory 6 / 16

  23. Cook-Levin theorem Definition (NP) A language L is in NP iff there exists a poly-time algorithm V such that: 1 For all x ∈ L , ∃ p ∈ { 0 , 1 } ∗ of poly. length s.t. V ( x , p ) = 1. ∈ L , ∄ p ∈ { 0 , 1 } ∗ of poly. length s.t. V ( x , p ) = 1. 2 For all x / Want to show CircuitSAT is NP-hard. Goal: reduce from any NP problem to CircuitSAT. Eric Price (UT Austin) Complexity Theory 6 / 16

  24. Cook-Levin theorem Definition (NP) A language L is in NP iff there exists a poly-time algorithm V such that: 1 For all x ∈ L , ∃ p ∈ { 0 , 1 } ∗ of poly. length s.t. V ( x , p ) = 1. ∈ L , ∄ p ∈ { 0 , 1 } ∗ of poly. length s.t. V ( x , p ) = 1. 2 For all x / Want to show CircuitSAT is NP-hard. Goal: reduce from any NP problem to CircuitSAT. Imagine that “poly-time algorithm V ” were “poly-size circuit V ”: Eric Price (UT Austin) Complexity Theory 6 / 16

  25. Cook-Levin theorem Definition (NP) A language L is in NP iff there exists a poly-time algorithm V such that: 1 For all x ∈ L , ∃ p ∈ { 0 , 1 } ∗ of poly. length s.t. V ( x , p ) = 1. ∈ L , ∄ p ∈ { 0 , 1 } ∗ of poly. length s.t. V ( x , p ) = 1. 2 For all x / Want to show CircuitSAT is NP-hard. Goal: reduce from any NP problem to CircuitSAT. Imagine that “poly-time algorithm V ” were “poly-size circuit V ”: ◮ Then “is x ∈ L ” is the same as ∃ p : V ( x , p ) = 1 Eric Price (UT Austin) Complexity Theory 6 / 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