Polynomial Church-Turing thesis
description
Transcript of Polynomial Church-Turing thesis
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 if it can be solved in polynomial time by a Turing machine.
2
The complexity class P
• P := the class of decision problems (languages) decided by a Turing machine so that for some polynomial p and all x, the machine terminates after at most p(|x|) steps on input x.
• By the Polynomial Church-Turing Thesis, P is “robust” with respect to changes of the machine model.
• Is P also robust with respect to changes of the representation of decision problems as languages?
3
java MaxFlow 6#0|16|13|0|0|0#0|0|10|12|0|0 #0|4|0|0|14|0#0|0|9|0|0|20 #0|0|0|7|0|4|#0|0|0|0|0|0
How to encode max flow instance?
4
java MaxFlow 111111#|1111111111111111|1111111111111|||#||1111111111|111111111111||#|1111|||11111111111111|#||111111111|||11111111111111111111#|||1111111||1111 #|||||
5
Ford-Fulkerson
• Ford-Fulkerson algorithm is not a polynomial time algorithm if input is encoded in binary.
• Ford-Fulkerson is a polynomial time algorithm if input is ecoded in unary.
6
Polynomial time computable maps
f: {0,1}* ! {0,1}* is called polynomial time computable if for some polynomial p,
- For all x, |f(x)| · p(|x|).
- Lf 2 P.
7
Polynomial time computable maps
• A map is polynomial time computable if and only if there is a Turing machine that on every input x accepts after at most a polynomial number of steps and leaves f(x) on its tape when terminating.
8
Good and polynomially equivalent representations
• A representation is good if the language of valid representations is in P.
• Two different representations of objects (say graphs, numbers) are called polynomially equivalent if we may translate between them using polynomial time computable maps.
• Ex: Adjacency matrices vs. Edge lists• Ex: Binary vs. Decimal• Counterexample: Binary vs. Unary
9
Robustness of Representation
• Given two good, polynomially equivalent representations of the instances of a decision problem, resulting in languages L1 and L2 we have
L1 2 P iff L2 2 P.
10
Terminology
• When we say, “Problem X can be solved in polynomial time”, we mean Lbinary X 2 P, i.e., we assume binary representation of integers of input.
• If we want to say LunaryX 2 P, i.e., assume
unary representation of integers, we say “Problem X can be solved in pseudopolynomial time”,
11
Rigorous Formalization
“Problems” Languages
“Efficient Algorithms” Turing Machines, P
“Search Problems” NP
“Reductions” Polynomial Reductions
“Universal Search Problems” NPC
12
Search Problems: NP
L is in NP iff there is a language L’ in P and a polynomial p so that:
13
Intuition
• The y-strings are the possible solutions to the instance x.
• We require that solutions are not too long and that it can be checked efficiently if a given y is indeed a solution (we have a “simple” search problem)
14
15
16
P vs. NP
• P is a subset of NP
• Is P=NP? Then any “simple” search problem has a polynomial time algorithm.
• This is the most famous open problem of mathematical computer science!
17
.Clay Mathematics Institute
| [home] | [index] |
- Annual Meeting - Research - Students - Awards - Summer School - Workshops - About CMI - Millennium Prize Problems - News -
M I L L E N N I U M P R I Z E P R O B L E M S
HOME / MILLENNIUM
PRIZE PROBLEMS
P versus NP
The Hodge Conjecture
The Poincaré Conjecture
The Riemann Hypothesis
Yang-Mills Existence and Mass Gap
Navier-Stokes Existence and Smoothness
The Birch and Swinnerton-Dyer Conjecture
Announced 16:00, on Wednesday, May 24, 2000 Collège de France
18
• If P=NP, mathematicians may be replaced by (much more reliable) computers:
P=NP ) There is an algorithmic procedure that takes as input any formal math statement and always outputs its shortest formal proof in time polynomial in the length of the proof.
• This is usually regarded as evidence that P and NP are different.
P vs. NP and mathematics
19
Rigorous Formalization
“Problems” Languages
“Efficient Algorithms” Turing Machines, P
“Search Problems” NP
“Reductions” Polynomial Reductions
“Universal Search Problems” NPC
20
Reductions
• A reduction r of L1 to L2 is a polynomial time computable map so that
8 x: x 2 L1 iff r(x) 2 L2
• We write L1 · L2 if there is a reduction of L1 to L2.
• Intuition: Efficient software for L2 can also be used to efficiently solve L1.
21
Example
• LTSP · LILP
22
23
TSP as ILP, compact formulation
24
Properties of reductions
Transitivity:
L1 · L2 Æ L2 · L3 ) L1 · L3
• Follows from Polynomial Church-Turing thesis.
25
Properties of reductions
Downward closure of P:
L1 · L2 Æ L2 2 P ) L1 2 P.
• Follows from Polynomial Church-Turing thesis.
26
NP-hardness
• A language L is called NP-hard iff 8 L’ 2 NP: L’ · L
• Intuition: Software for L is strong enough to be used to solve any simple search problem.
• Proposition: If some NP-hard language is in P, then P=NP.
27
NPC
• A language L 2 NP that is NP-hard is called NP-complete.
• NPC := the class of NP-complete problems.
• Proposition:
L 2 NPC ) [L 2 P iff P=NP].
28
Usefulness of NPC
• Languages in NPC are the least likely problems in NP to be in P.
• Suppose we would like to find a worst case efficient algorithm for L 2 NPC.
• If we believe that P is not NP, we know that no worst case efficient algorithm exists.
• If we have no opinion about P vs. NP, we know that if we find a worst case efficient algorithm for L, we’ll earn $1,000,000.
29
How to establish NP-hardness
• Thousands of natural problems are NP-complete:
• Empiric fact: Most natural problems in NP are either in P or NP-hard.
• Lemma: If L1 is NP-hard and L1 · L2 then L2 is NP-hard.
• We need to establish one problem to be NP-hard, the rest follows using chains of reductions. Cook (1972) established SAT to be NP-hard.
30
SAT
ILPMILP
MAX INDEPENDENT SET
MIN VERTEX COLORING
HAMILTONIAN CYCLE TSP
TRIPARTITE MATCHING
SET COVER
KNAPSACK
BINPACKING