Download presentation

Presentation is loading. Please wait.

Published byFelicia Frakes Modified over 2 years ago

1
Everything you always wanted to know about theoretical computer science (but were afraid to ask) Dimitris Achlioptas Microsoft Research

2
Turing’s Machine Alphabet Σ, state space K f : K×Σ → K×Σ×{←,→,?} ×{Halt,Yes,No} Language: L µ Σ* is decided by M L Polynomial-time Robustness

3
Any reasonable attempt to model mathematically computer algorithms and their performance is bound to end up with a model of computation and associated time cost that is equivalent to Turing machines within a polynomial. Church’s Thesis

4
Any reasonable attempt to model mathematically computer algorithms and their performance is bound to end up with a model of computation and associated time cost that is equivalent to Turing machines within a polynomial. Church’s Thesis Turing’s Idea Programmable Hardware: Describe f on the leftmost part of the tape.

5
Polynomial Time N vertices A s,t distance from s to t Find a spanning cycle of minimum length

6
Polynomial Time Edge lengths are written in binary. Lists vs. Matrices Assume M could decide if OPT**
{
"@context": "http://schema.org",
"@type": "ImageObject",
"contentUrl": "http://images.slideplayer.com/12/3554409/slides/slide_6.jpg",
"name": "Polynomial Time Edge lengths are written in binary.",
"description": "Lists vs. Matrices Assume M could decide if OPT
**

7
P vs. NP P olynomial Time PTIME = [ k n k L is in P if there exists a Turing Machine M which for every x, decides if x is in L in a polynomial number of steps.

8
P vs. NP P olynomial Time PTIME = [ k n k L is in P if there exists a Turing Machine M which for every x, decides if x is in L in polynomially many steps. N on-Deterministic P olynomial Time L is in NP if there exists a Turing Machine M s.t. for every x If x is in L then there exists w s.t. M(x,w)→“Yes” in PTIME. If x is not in L then there is no such w.

9
Complexity Is there a spanning cycle of cost < C ?NP Is there a spanning tree of cost < C ?P Is there no spanning tree of cost < C ?P Is there no spanning cycle of cost < C ?coNP NP coNP P

10
Perebor 50-60s: Many optimization problems appear amenable only to brute force, i.e. (near-)exhaustive enumeration. Edmonds 1966 : “The classes of problems which are respectively known and not known to have good algorithms are of great theoretical interest […] I conjecture that there is no good algorithm for the traveling salesman problem. My reasons are the same as for any mathematical conjecture: (1) It’s a legitimate mathematical possibility, and (2) I do not know.” Hartmanis, Stearns 1965: “On the computational Complexity of Algorithms”, AMS Transactions

11
Input for Problem B Output for Problem B Algorithm for Problem B Reduction from B to A Algorithm for B x R(x) Yes/No Reducibility

12
Input for Problem B Output for Problem B Algorithm for Problem B Reduction from B to A Algorithm for B x R(x) Yes/No Shortest Spanning Path from s to t Shortest Spanning Cycle Reducibility

13
NP-completeness A problem Π is NP-hard if every problem in NP has a polynomial-time reduction to Π. If Π is in ΝP and NP-hard then Π is NP-complete. Moral: At least as hard as any other problem in NP

14
Cook’s Theorem Satisfiability is NP-Complete Idea: Let variable X p,t denote the content of tape-cell p after t steps By now thousands of problems have been shown NP-complete NP-completeness has migrated to other sciences, e.g. economics

15
Integer Linear Programming : Ax · b Is there a satisfying vector x where all x i are non-negative INTEGERS? NP coNP P TSP PRIMALITY More hard problems

16
Approximation Vertex Cover: Find a smallest set of vertices that touches every edge. –Algorithm: If an edge is still untouched, add both its endpoints to the set.

17
Approximation Vertex Cover: Find a smallest set of vertices that touches every edge. –Algorithm: If an edge is still untouched, add both its endpoints to the set. Max Cut: Partition the vertices of the graph to maximize number of cut edges. –Algorithm: Partition randomly.

18
Greed Problem: Find a spanning tree of minimum length

19
Greed Problem: Find a spanning tree of minimum length Algorithm: Always add the cheapest allowable edge

20
Greed Problem: Find a spanning tree of minimum length Algorithm: Always add the cheapest allowable edge Proof: The cheapest edge emanating from each tree is always good.

21
Duality Max-Flow = Min-Cut

22
Linear Programming : Ax · b Is there a satisfying vector where all x i are non-negative rationals? Linear Programming

23
Linear Programming : Ax · b Is there a satisfying vector where all x i are non-negative rationals? Linear Programming An integer matrix A is Totally Unimodular (TUM) if every square, nonsingular submatrix B has det(B)=±1

24
Linear Programming : Ax · b Is there a satisfying vector where all x i are non-negative rationals? Linear Programming An integer matrix A is Totally Unimodular (TUM) if every square, nonsingular submatrix B has det(B)=±1 If A is TUM then the LP solution is integral!

25
Linear Programming II Simplex method: –Most known rules can be made to take an exponential number of steps. Ellipsoid algorithm: –Number of steps depends on size of integers Is there an algorithm that solves LPs with m equations in n variables in Poly( m,n ) steps?

26
Semidefinite Programming Arrange n unit vectors so that their inner products satisfy a system of linear inequalities.

27
Approximability MAX CUT Assign a unit vector v s to each vertex s. Maximize the sum of (1-v s v t )w st over all vertices Take a random hyperplane through the origin. Get an 0.87… approximation Vertex Cover Conjecture: Cannot beat stupid algorithm! Theorem: Need at least 1.36..*OPT Tool: NP = PCP(O(logn), O(1)).

28
Non-worst-case Inputs Random graphs Random pointsets Random formulas

29
Non-worst-case Inputs Random graphs Random pointsets Random formulas Theoretical CS Probabilistic Combinatorics

30
Non-worst-case Inputs Random graphs Random pointsets Random formulas Theoretical CS Probabilistic Combinatorics Physics

Similar presentations

OK

1 Polynomial Church-Turing thesis A decision problem can be solved in polynomial time by using a reasonable sequential model of computation if and only.

1 Polynomial Church-Turing thesis A decision problem can be solved in polynomial time by using a reasonable sequential model of computation if and only.

© 2017 SlidePlayer.com Inc.

All rights reserved.

Ads by Google