1 / 14

CS 6810 – Theory of Computing

CS 6810 – Theory of Computing. Lecture 1: Introduction & Review. David Steurer. August 23, 2012. What is complexity theory?. How do resource limitations impact our ability to solve problems?. l ower bounds (impossibility results). upper bounds (algorithms). problems. resources. L

lorie
Download Presentation

CS 6810 – Theory of Computing

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. CS 6810 – Theory of Computing Lecture 1: Introduction & Review David Steurer August 23, 2012

  2. What is complexity theory?

  3. How do resource limitations impact our ability to solve problems? lower bounds (impossibility results) upper bounds (algorithms) problems resources L ={log-space Turing machines} LP ={feasible linear programs} 3SAT ={satisfiable 3CNF formulas} P ={poly-time Turing machines}

  4. Which problems are easier than others? reductions problems resources L ={log-space Turing machines} LP ={feasible linear programs} 3SAT ={satisfiable 3CNF formulas} P ={poly-time Turing machines}

  5. What resources are more powerful than others? simulations problems resources L ={log-space Turing machines} LP ={feasible linear programs} 3SAT ={satisfiable 3CNF formulas} P ={poly-time Turing machines}

  6. decision problems (simplest, default) search problems (most general) problems resources promise problems (very useful case between decision and search) distributional problems (average-case complexity, later in course)

  7. decision problems (simplest, default) or problems resources (YES/NO answer for each input) (set of YES inputs) Example 3SAT = {satisfiable 3CNF formulas }

  8. search problems (most general) for every input , there is a set of acceptable outputs problems resources relation Examples = { | assignment z satisfies 3CNF formula } = { | assignment z satisfies as many clauses as possible in 3CNF formula }

  9. promise problems (very useful case between decision and search) for every input , there is a set of acceptable outputs problems resources partition into YES inputs, NO inputs, and DON’T-CARE inputs Example YES: satisfiable 3CNF formula NO: at most fraction of clauses satisfiable

  10. model measure Turing machine time and space non-determinism, alternation randomness problems resources advice circuits size and depth protocols communication cost resolution proofs length linear program number of constraints (facets)

  11. Reductions problem A problem B reduces to Turing/Cook solve A using an algorithm for B as a subroutine (use B as an oracle) map instances of A to instances of B such that answer is preserved (for decision & promise problems) Karp map A-instances to B-instances such that any answer to B-instance can be pulled back (for search problems) Levin

  12. Reductions problem A problem B reduces to Shows: Warning: 3UNSAT is NP-hard w.r.t. Cook reductionsbut not w.r.t. Karp reductions (unless NP=coNP) B is harder than A meaningful if A is hard (plausibly) Example: NP-hardness reductions A is easier than B rounding algorithm is pull-back from LP to original problem (constructive Levin reduction) meaningful if B is easy (plausibly) Example: LP relaxations (reduction to LP)

  13. Machine with Concrete Arthur Ganson

More Related