what one has to know when attacking p vs. np · if p = np, then algorithm s solves satisfiability,...

17
What One Has to Know when Attacking P vs. NP Juraj Hromkoviˇ c and Peter Rossmanith September 12, 2017 – FCT 2017

Upload: others

Post on 10-Oct-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: What One Has to Know when Attacking P vs. NP · If P = NP, then Algorithm S solves SATISFIABILITY, runs in polynomial time, returns “no” on all no-instances, and returns a satisfying

What One Has to Know whenAttacking P vs. NP

Juraj Hromkovic and Peter Rossmanith

September 12, 2017 – FCT 2017

Page 2: What One Has to Know when Attacking P vs. NP · If P = NP, then Algorithm S solves SATISFIABILITY, runs in polynomial time, returns “no” on all no-instances, and returns a satisfying

Main Results

Theorem [Chaitin, JACM 1974]

There exists d ∈ N such that, for all n ≥ d and all x ∈ {0, 1}∗,there does not exist any proof in AV-mathematics of the fact“K (x) ≥ n”.

What one has to know when attacking P vs. NP J. Hromkovic and P. Rossmanith FCT 2017 1 / 15

Page 3: What One Has to Know when Attacking P vs. NP · If P = NP, then Algorithm S solves SATISFIABILITY, runs in polynomial time, returns “no” on all no-instances, and returns a satisfying

Main Results

Theorem

There exists a program P that does not halt on λ, and there isno proof in AV-mathematics of this fact.

What one has to know when attacking P vs. NP J. Hromkovic and P. Rossmanith FCT 2017 2 / 15

Page 4: What One Has to Know when Attacking P vs. NP · If P = NP, then Algorithm S solves SATISFIABILITY, runs in polynomial time, returns “no” on all no-instances, and returns a satisfying

Main Results

Theorem

There exist infinitely many TMs (programs) A that do not halt onλ, and such that there is no proof in AV-mathematics for any ofthem that A does not halt on λ.

What one has to know when attacking P vs. NP J. Hromkovic and P. Rossmanith FCT 2017 3 / 15

Page 5: What One Has to Know when Attacking P vs. NP · If P = NP, then Algorithm S solves SATISFIABILITY, runs in polynomial time, returns “no” on all no-instances, and returns a satisfying

Main Results

Rice’s Theorem on Unprovability

For each semantically nontrivial decision problem A, there existinfinitely many TMs M ′ such that there is no proof of “c(M ′) ∈ A”and no proof of “c(M ′) 6∈ A”, that is, one cannot investigate inAV-mathematics whether c(M ′) is in A or not.

What one has to know when attacking P vs. NP J. Hromkovic and P. Rossmanith FCT 2017 4 / 15

Page 6: What One Has to Know when Attacking P vs. NP · If P = NP, then Algorithm S solves SATISFIABILITY, runs in polynomial time, returns “no” on all no-instances, and returns a satisfying

Main Results

Theorem

There exist infinitely many algorithms which do not work inpolynomial time, but for which this fact is not provable in AV-mathematics. Similarly, there exist infinitely many algorithmswhich work in polynomial time, but for which this fact is notprovable in AV-mathematics.

What one has to know when attacking P vs. NP J. Hromkovic and P. Rossmanith FCT 2017 5 / 15

Page 7: What One Has to Know when Attacking P vs. NP · If P = NP, then Algorithm S solves SATISFIABILITY, runs in polynomial time, returns “no” on all no-instances, and returns a satisfying

Main Results

Theorem

There are infinitely many algorithms for which it is not provablein AV-mathematics that they do not solve SATISFIABILITY.

What one has to know when attacking P vs. NP J. Hromkovic and P. Rossmanith FCT 2017 6 / 15

Page 8: What One Has to Know when Attacking P vs. NP · If P = NP, then Algorithm S solves SATISFIABILITY, runs in polynomial time, returns “no” on all no-instances, and returns a satisfying

Main Results

Theorem

If P = NP, then there exist infinitely many algorithms X for whichone cannot prove or disprove in AV-mathematics the statement“X solves SATISFIABILITY in polynomial time”.

What one has to know when attacking P vs. NP J. Hromkovic and P. Rossmanith FCT 2017 7 / 15

Page 9: What One Has to Know when Attacking P vs. NP · If P = NP, then Algorithm S solves SATISFIABILITY, runs in polynomial time, returns “no” on all no-instances, and returns a satisfying

Main Results

Theorem

If multiplication of two decimal numbers is feasible in linear time,then there exist infinitely many algorithms X , for which one can-not decide in AV-mathematics whether “X solves multiplicationin linear time”, or “X does not solve multiplication or does notwork in linear time”.

What one has to know when attacking P vs. NP J. Hromkovic and P. Rossmanith FCT 2017 8 / 15

Page 10: What One Has to Know when Attacking P vs. NP · If P = NP, then Algorithm S solves SATISFIABILITY, runs in polynomial time, returns “no” on all no-instances, and returns a satisfying

Main Results

Theorem

There exists an algorithm X1, for which it is neither provablewhether X1 recognizes SATISFIABILITY nor provable whetherX1 works in polynomial time.

What one has to know when attacking P vs. NP J. Hromkovic and P. Rossmanith FCT 2017 9 / 15

Page 11: What One Has to Know when Attacking P vs. NP · If P = NP, then Algorithm S solves SATISFIABILITY, runs in polynomial time, returns “no” on all no-instances, and returns a satisfying

Main Results

Theorem

If the claim “P = NP” (“NLOG = DLOG”) is not provable inAV-mathematics, then

Pver 6= NPver

(DLOGver 6= NLOGver)

What one has to know when attacking P vs. NP J. Hromkovic and P. Rossmanith FCT 2017 10 / 15

Page 12: What One Has to Know when Attacking P vs. NP · If P = NP, then Algorithm S solves SATISFIABILITY, runs in polynomial time, returns “no” on all no-instances, and returns a satisfying

Main Results

Theorem

If P = NP, then Algorithm S solves SATISFIABILITY, runs inpolynomial time, returns “no” on all no-instances, and returns asatisfying assignment on all but finitely many yes-instances.

What one has to know when attacking P vs. NP J. Hromkovic and P. Rossmanith FCT 2017 11 / 15

Page 13: What One Has to Know when Attacking P vs. NP · If P = NP, then Algorithm S solves SATISFIABILITY, runs in polynomial time, returns “no” on all no-instances, and returns a satisfying

Main Results

Theorem

There is a concrete deterministic logspace-bounded algorithmthat solves graph reachability iff LOGSPACE = NLOGSPACE.

What one has to know when attacking P vs. NP J. Hromkovic and P. Rossmanith FCT 2017 12 / 15

Page 14: What One Has to Know when Attacking P vs. NP · If P = NP, then Algorithm S solves SATISFIABILITY, runs in polynomial time, returns “no” on all no-instances, and returns a satisfying

Main Results

Theorem

If graph isomorphism is in P, then for every ε > 0, there exists analgorithm that solves graph isomorphism and has the followingproperties:

1. It is a randomized algorithm.

2. It runs in expected polynomial time.

3. For all but finitely many yes-instances, it always answerscorrectly.

4. For the remaining yes-instances, the answer is correct withprobability at least 1− 2n2

.

5. For all no-instances, it always answers correctly.

What one has to know when attacking P vs. NP J. Hromkovic and P. Rossmanith FCT 2017 13 / 15

Page 15: What One Has to Know when Attacking P vs. NP · If P = NP, then Algorithm S solves SATISFIABILITY, runs in polynomial time, returns “no” on all no-instances, and returns a satisfying

Main Results

Theorem

There exists a concrete randomized algorithm that solves QBFin expected polynomial time with error probability at most 1/3 iffBPP = PSPACE.

What one has to know when attacking P vs. NP J. Hromkovic and P. Rossmanith FCT 2017 14 / 15

Page 16: What One Has to Know when Attacking P vs. NP · If P = NP, then Algorithm S solves SATISFIABILITY, runs in polynomial time, returns “no” on all no-instances, and returns a satisfying

Appendix – “Rice’s Theorem on Unprovability”

c(M) for a TM M

A:

Construct c(M′A)

M′A simulates M on λ

if M finishes the work on λ

in finite time,then M′

A simulates the work

of M on its proper input

c(M′A) c(M′

A)

L(M′A) = ∅ = L(M∅)

iff M does not halt on λL(M′

A) = L(M)iff M halts on λ

Canonical search for a proof of“c(M′

A) ∈ A” or “c(M′A) 6∈ A”

Proof “c(M′A) ∈ A” Proof “c(M′

A) 6∈ A”

Proof“M does not halt on λ”

Proof“M halts on λ”

What one has to know when attacking P vs. NP J. Hromkovic and P. Rossmanith FCT 2017 15 / 15

Page 17: What One Has to Know when Attacking P vs. NP · If P = NP, then Algorithm S solves SATISFIABILITY, runs in polynomial time, returns “no” on all no-instances, and returns a satisfying

Thanks for your attention