1 / 20

If NP languages are hard on the worst-case then it is easy to find their hard instances

If NP languages are hard on the worst-case then it is easy to find their hard instances. Danny Gutfreund, Hebrew U. Ronen Shaltiel, Haifa U. Amnon Ta-Shma, Tel-Aviv U. What is this talk about?. Let ’ s assume P ≠NP . Problem: Finding hard instances

gazit
Download Presentation

If NP languages are hard on the worst-case then it is easy to find their hard instances

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. If NP languages are hard on the worst-case then it is easy to find their hard instances Danny Gutfreund, Hebrew U. Ronen Shaltiel, Haifa U. Amnon Ta-Shma, Tel-Aviv U.

  2. What is this talk about? • Let’s assume P≠NP. • Problem: Finding hard instances • Input: poly-time algorithm DSAT (that is attempting to Decide SAT). • Output: hard instance for DSAT • A formula x on which DSAT(x)≠SAT(x). • Formulaes x1,..,x6 s.t. xiwith DSAT(xi)≠SAT(xi). • A samplable distributionD s.t. PrxD[DSAT(x)=SAT(x)]<<1 • How difficult is this problem?

  3. Outline of talk • Main result:Finding hard instances in poly-time assuming only worst case hardeness. • Version for deterministic algorithms assuming P≠NP. • Version for randomized algorithms assuming RP≠NP . • Two interpretations: • A weak form of worst case to average case reduction. • Limitation on SAT solving heuristics. • Proof of version for deterministic algorithms.

  4. Part 1: Statement of result

  5. Finding hard instances for deterministic poly-time algorithms We design an algorithm FINDwhich on input: • DSAT - code of a poly-time (detereministic) alg. • n- an input length. Runs in time poly(n). If P≠NP then for infinitely manyn’s FIND(DSAT,n) produces formulae x1,..,x6 s.t. xiwith DSAT(xi)≠SAT(xi). In particular, sampling one formula gives a samplable distribution on instances of length n on which DSAT succeeds with prob < 5/6.

  6. Finding hard instances for randomized poly-time algorithms We design a randomized algorithm FINDwhich on: • DSAT - code of a poly-time (randomized) alg. • n- an input length. Runs in time poly(n). If RP≠NP then for infinitely manyn’s FIND(DSAT,n) We produce a samplable distribution on instances of length n on which DSAT succeeds with prob < 97/100.

  7. Part 2: Interpretation

  8. NP is hard on average Generating hard instances Generate distribution D on formulae of length n: For every poly-time algorithm DSAT: PrxD[DSAT(x)=SAT(x)]<<1 RP≠NP Finding hard instances Given poly-time algorithm DSAT Generate distribution D on formulae of length n: PrxD[DSAT(x)=SAT(x)]<<1 Open problem: worst case to average case reduction. Negative results: [FF91,BT03,Vio03] Finding hard instances and generating hard instances. Our result Levin’s definition Interpretation: Weak form of worst case to average case reduction. Necessary for Cryptography!

  9. Worst case to average case reductions Our result: Goal: in super-polynomial time 2nd result: Weak form of Generating hard instances.

  10. Perspective: Impagliazzo’s worlds Find hard instancesour result: Generate hard instances Generate hard instances Generate hard instances

  11. Interpretation: limitation on SAT solving heuristics Even in Heuristica, SAT solving heuristics have to be bound to specific samplable distributions. Suppose we live in Heuristica. ⇒ NP is easy on average. ⇒ SAT solving heuristics on real-life inputs. Find hard instances The best we can hope for is that in Heuristica: There exists a SAT solver DSAT that is does well on all samplable distributons. Our result:

  12. Part 3: Proof

  13. Proof of main result: (deterministic case) • Assume P≠NP. • Find hard instances • Input: poly-time algorithm DSAT and input length n on which DSAT fails to decide SAT. • Output: 3 formulae x1,x2,x3 s.t. xi on whichDSAT(xi)≠SAT(xi). • Main idea: Use the code of DSAT to find hard instances. • Apply DSAT on a formula encoding the statement: “DSATfails tosolve SAT”.

  14. Special case: Search algorithms A search algorithm for SAT is an algorithm SSAT which given a formula x: • Either answers “no” (that x isn’t satisfiable). • Or answers “yes” (that x is satisfiable) and in that case it needs to provide a satisfying assignment. SSAT never errs when it answers “yes”. SSAT errs only on x’s s.t.: SAT(x)=“yes”and SSAT(x)≠“yes”.

  15. Proof for search algorithms Given search algorithm SSAT and input length n: Consider the following statement: yn = x{0,1}n : SAT(x)=“yes”and SSAT(x)≠“yes”. • SSAT fails to decide SAT on length n => ynis true. • Deciding ynis in NP (and thus can be reduced to SAT). Run SSAT(yn): • If SSAT answers “no” then ynis a hard instance. • If SSAT answers “yes” then it outputs a witness x for yn and x is a hard instance. We find a hard instance in both cases!

  16. Search to decision reduction(self reducibility of SAT) AlgorithmSSAT: • Given formula x. • If DSAT(x)=“no” answer “no”. • Otherwise consider formulae x0,x1 (constructed by setting first variable to 0/1). • Run DSAT(x0) and DSAT(x1). • Repeat on one that is answered “yes”. • If both x0,x1 are answered by “no” then (x,x0,x1) contain a hard instance. • If all variables are set: obtain a satisfying assignment for original input and answer “yes”.

  17. Proof for decision algorithms Given decision algorithm DSAT and input length n: Consider the following statement: yn = x{0,1}n : SAT(x)=“yes”and SSAT(x)≠“yes”. • SSAT fails to decide SAT on length n => ynis true. • Deciding ynis in NP (and thus can be reduced to SAT). Run SSAT(yn): • If SSAT“catches”DSAT then we find hard instances. • If SSAT answers “no” then ynis a hard instance. • If SSAT answers “yes” then it outputs a witness x for yn and x is a hard instance. x is a hard instance for SSATnot necessarily hard for DSAT

  18. Proof for decision algorithms Given decision algorithm DSAT and input length n: Consider the following statement: yn = x{0,1}n : SAT(x)=“yes”and SSAT(x)≠“yes”. • If SSAT(yn)=“yes” then SSAT outputs a witness x for yn and x is a hard instance for SSAT. Run SSAT(x) • We know that SSAT(x) does not answer “yes”! • If SSAT“catches”DSAT then we find hard instances. • If SSAT answers “no” then DSAT answers “no” and thus xis a hard instance. The proof of the randomized case goes along same lines using more complex case analysis

  19. Conclusions and open problems • When given randomized DSAT we obtain a samplable distribution on which DSAT succeeds with probability < 97/100. • Open problem: Hardness amplification to ½+ε. • The situation is even worse when we switch quantifiers. • Our FIND algorithm is non-black box in DSAT: It relies on the code of DSAT. • Can such ideas be used to bypass the limitations on worst case to average case reductions pointed out by [FF91,BT03,Vio03]? • Our FIND algorithm does not prove that DSAT is incorrect. (What if NP=P).

  20. That’s it… Thank You!

More Related