CS154, Lecture 18: 1

Similar documents
Limits to Approximability: When Algorithms Won't Help You. Note: Contents of today s lecture won t be on the exam

NP Complete Problems. COMP 215 Lecture 20

Great Theoretical Ideas in Computer Science

Lecture 18: More NP-Complete Problems

6.045 Final Exam Solutions

Lecture 18: PCP Theorem and Hardness of Approximation I

CS151 Complexity Theory. Lecture 13 May 15, 2017

INAPPROX APPROX PTAS. FPTAS Knapsack P

Approximation Algorithms

Topics in Complexity Theory

Topics in Complexity

CS21 Decidability and Tractability

6.841/18.405J: Advanced Complexity Wednesday, April 2, Lecture Lecture 14

Complexity Theory. Jörg Kreiker. Summer term Chair for Theoretical Computer Science Prof. Esparza TU München

Introduction to Interactive Proofs & The Sumcheck Protocol

Lecture 19: Interactive Proofs and the PCP Theorem

CS154, Lecture 15: Cook-Levin Theorem SAT, 3SAT

Complexity Classes V. More PCPs. Eric Rachlin

CS151 Complexity Theory. Lecture 15 May 22, 2017

Lecture 20: conp and Friends, Oracles in Complexity Theory

CS 154 Introduction to Automata and Complexity Theory

CS Lecture 29 P, NP, and NP-Completeness. k ) for all k. Fall The class P. The class NP

Lecture 26. Daniel Apon

P, NP, NP-Complete, and NPhard

Lecture 26: Arthur-Merlin Games

Show that the following problems are NP-complete

Lecture 13, Fall 04/05

UC Berkeley CS 170: Efficient Algorithms and Intractable Problems Handout 22 Lecturer: David Wagner April 24, Notes 22 for CS 170

Computability and Complexity Theory: An Introduction

6-1 Computational Complexity

Lecture 24: Randomized Complexity, Course Summary

1 Agenda. 2 History. 3 Probabilistically Checkable Proofs (PCPs). Lecture Notes Definitions. PCPs. Approximation Algorithms.

Algorithm Design and Analysis

CSE 105 THEORY OF COMPUTATION. Spring 2018 review class

Lecture 25: Cook s Theorem (1997) Steven Skiena. skiena

6.045: Automata, Computability, and Complexity (GITCS) Class 15 Nancy Lynch

Theory of Computation CS3102 Spring 2014 A tale of computers, math, problem solving, life, love and tragic death

Notes for Lecture 2. Statement of the PCP Theorem and Constraint Satisfaction

-bit integers are all in ThC. Th The following problems are complete for PSPACE NPSPACE ATIME QSAT, GEOGRAPHY, SUCCINCT REACH.

Lecture 23: More PSPACE-Complete, Randomized Complexity

Intro to Theory of Computation

NP-Completeness. Sections 28.5, 28.6

Essential facts about NP-completeness:

6.045J/18.400J: Automata, Computability and Complexity Final Exam. There are two sheets of scratch paper at the end of this exam.

Lecture 22: PSPACE

NP-Completeness Part II

CS154, Lecture 13: P vs NP

NP-Complete Reductions 2

BBM402-Lecture 11: The Class NP

Design and Analysis of Algorithms

Cryptographic Protocols Notes 2

SOLUTION: SOLUTION: SOLUTION:

NP and NP Completeness

Introduction to Advanced Results

Computational Complexity

Technische Universität München Summer term 2010 Theoretische Informatik August 2, 2010 Dr. J. Kreiker / Dr. M. Luttenberger, J. Kretinsky SOLUTION

NP Completeness and Approximation Algorithms

NP-Hardness reductions

Non-Approximability Results (2 nd part) 1/19

CSE 105 THEORY OF COMPUTATION

BCCS: Computational methods for complex systems Wednesday, 16 June Lecture 3

Lecture Notes 20: Zero-Knowledge Proofs

CS154, Lecture 13: P vs NP

Complexity Classes IV

More Completeness, conp, FNP,etc. CS254 Chris Pollett Oct 30, 2006.

P,NP, NP-Hard and NP-Complete

conp, Oracles, Space Complexity

Advanced topic: Space complexity

Lecture 19: Finish NP-Completeness, conp and Friends

Chapter 2. Reductions and NP. 2.1 Reductions Continued The Satisfiability Problem (SAT) SAT 3SAT. CS 573: Algorithms, Fall 2013 August 29, 2013

Algorithms Design & Analysis. Approximation Algorithm

Hardness of Approximation

Umans Complexity Theory Lectures

PCP Theorem and Hardness of Approximation

Finish K-Complexity, Start Time Complexity

NP-Completeness. Andreas Klappenecker. [based on slides by Prof. Welch]

Harvard CS 121 and CSCI E-121 Lecture 22: The P vs. NP Question and NP-completeness

Lecture 16: Time Complexity and P vs NP

FORMAL LANGUAGES, AUTOMATA AND COMPUTABILITY

Lecture 4 : Quest for Structure in Counting Problems

an efficient procedure for the decision problem. We illustrate this phenomenon for the Satisfiability problem.

Quantum Computing Lecture 8. Quantum Automata and Complexity

Complexity Theory VU , SS The Polynomial Hierarchy. Reinhard Pichler

Outline. Complexity Theory EXACT TSP. The Class DP. Definition. Problem EXACT TSP. Complexity of EXACT TSP. Proposition VU 181.

NP Completeness and Approximation Algorithms

Lecture Notes CS:5360 Randomized Algorithms Lecture 20 and 21: Nov 6th and 8th, 2018 Scribe: Qianhang Sun

CS21 Decidability and Tractability

CS154, Lecture 17: conp, Oracles again, Space Complexity

P is the class of problems for which there are algorithms that solve the problem in time O(n k ) for some constant k.

CS278: Computational Complexity Spring Luca Trevisan

Advanced Algorithms (XIII) Yijia Chen Fudan University

Lecture 3: Interactive Proofs and Zero-Knowledge

NP-Complete Reductions 1

SAT, NP, NP-Completeness

Lecture 22: Counting

Interactive Proofs. Merlin-Arthur games (MA) [Babai] Decision problem: D;

Time and space classes

Probabilistically Checkable Proofs. 1 Introduction to Probabilistically Checkable Proofs

Lecture 15 - Zero Knowledge Proofs

2 Evidence that Graph Isomorphism is not NP-complete

Transcription:

CS154, Lecture 18: 1

CS 154 Final Exam Wednesday December 12, 12:15-3:15 pm STLC 111 You re allowed one double-sided sheet of notes Exam is comprehensive (but will emphasize post-midterm topics) Look for practice final and solutions 2

Evaluate CS 154 Your Input Really Matters 3

Chapter I Finite Automata (40s-50s): Very Simple Model (constant memory) Characterize what can be computed (through closure properties) First encounter: non-determinism (power of verified guessing) Argue/characterize what cannot be computed Optimization, learning More modern (complexity-theoretic) perspective: streaming algorithms, communication complexity

Chapter II Computability Theory 30 s 50 s Very Powerful Models: Turing machines and beyond (Un)decidability what cannot be computed at all Foot in the door an unrecognizable language Many more problems, through reductions Hierarchy of exceedingly harder problems The foundations of mathematics & computation Kolmogorov complexity (universal theory of information)

Chapter III Complexity Theory: 60 s Time complexity, P vs. NP, NP-completeness Non-determinism comes back Our foot in the door SAT, a problem that is likely hard to compute Many more problems through (refined) reductions An hierarchy of hard problems Other Resources: space, randomness, communication, power, Crypto, Game Theory, Computational Lens

Computing: evolution of an environment via repeated application of simple, local rules Somebody

Computational Lens

Hitchhiker's Guide to the Galaxy The Answer To Life, Universe and Everything:

Computational Game Theory Markets computing an equilibrium. Simple dynamics (best response)? Bounded Rationality: Prisoners Dilemma Repeated Games, infinite, finite Backward Induction Finite Automata Always Cooperate, Always Defect, Tit for Tat, Trigger

Limited Resources

Factoring & One-Way Functions Given two primes P and Q easy to compute N=PQ. For random such N, assume it is hard to find P and Q. Special case of One-Way Functions (the most basic cryptographic primitives). Random Instances of SAT that are hard Zero-Knowledge Proofs Hardness of learning Pseudorandom Generators Deterministically increasing entropy Randomness is weak

PCPs, Hardness of Approximation, Approximation-Preserving Reductions, Interactive Proofs, Zero-Knowledge, Cold Fusion, Peace in the Middle East

There are thousands of NP-complete problems Many are solved all the time!?! Average Case vs. Worst Case; [Beyond Worst-Case Analysis (CS264)] Heuristics vs. Algorithms SAT Solvers Special cases/parameters that make a problem easy Subset Sum with small target, 2SAT, Approximation Algorithms Coping with NP-Completeness

The Vertex Cover Problem - NP-Complete a d a d c c b e b e vertex cover = set of nodes C that cover all edges: For all edges, at least one endpoint is in C

Minimization problem: find the smallest VC A very simple (greedy) approximation algorithm A: finds a VC that is at most twice as large as the optimal (a 2-approximation). Algorithm: Set C= and while there exist uncovered edge e, add both endpoints of such e to C Why does it work? Approximating Vertex Cover

MAX-SAT Max-SAT = given a cnf formula how many clauses can be satisfied? A maximization problem: satisfy the most clauses Can always satisfy a constant fraction of all the clauses. Specifically: When all clauses have at least 3 unique literals, can satisfy at least 7/8 of all clauses (how?) 7/8 of clauses of clauses in optimal solution ( a 7/8- approximation). Can we approximate MAX-SAT up to any constant < 1? Can we solve Max-3SAT with (7/8+eps)-approximation? Not if P NP For other problems no constant-approximation is likely - (clique n 1-eps )

The PCP Theorem For some constant > 0 and for every language L NP, there exists a polynomial-time computable function f that maps every input x into a 3cnf formula f(x) s.t. If x L then f(x) SAT If x L then no assignment satisfies more than (1- ) fraction of f(x) clauses. sufficiently good approximation of MAX-SAT implies P=NP (for tight inapproximability need better PCP theorem)

Hardness of Approximation A rich literature giving exceedingly sophisticated approximation algorithms and exceedingly sophisticated inapproximability results Know the best approximation factors for a wide range of problems (especially those where the algorithms are simple) Inapproximability results via stronger PCPs and via approximation-preserving reductions 3SAT P CLIQUE is (very) approximation-preserving; why? IS P VERTEX-COVER is completely not; why?

(x 1 x 1 x 2 ) ( x 1 x 2 x 2 ) ( x 1 x 2 x 2 ) x 1 x 2 x 2 MAX-Clique = MAX-SAT Approx MAX- Clique Approx MAX- SAT x 1 x 1 x 1 x 2 x 2 x 2 V = 9 k = 3

IS P VERTEX-COVER Claim: For every graph G = (V,E), and subset S V, S is an independent set if and only if (V S) is a vertex cover Therefore (G,k) IS (G, V k) VERTEX-COVER Our polynomial time reduction: f(g,k) := (G, V k) Assume min VC is k (k << n) and max IS is n-k. c-approximation will give IS of size roughly n/c. Giving VC of size n-n/c - No approximation guarantee for the VC.

PCPs = Probabilistically Checkable Proofs Alternative (equivalent) statement of PCP Theorem (informal): Every statement that has a polynomial-time verifiable proof has such a proof where the verifier only reads O(1) bits of the proof such that [perfect completeness]: if the statement is correct accept with Probability 1 [soundness]: if the statement is false reject with probability 0.99 Example of the power of randomness (probabilistically checkable)

What can we Prove? Every problem in NP has a short and easy to verify proof How about conp? Can a prover P convince a verifier V that there is no k-clique? How about PSPACE? Can P convince V that there is a winning strategy for white from a particular position? Yes!! If we add interaction!

Interactive Proofs PCPs add randomness to proofs, what if we also add interaction? Prover P x L? Verifier V Accept/Reject Interactive Proofs can be used to prove membership in powerful (PSPACE) languages. For example: V knows a winning Chess strategy: IP=PSPACE

Graph Non-Isomorphism A graph G and H are isomorphic if can rename vertices of G to get H (the mapping is called isomorphism). Graph Isomorphism = {(G,H) G and H are isomorphic} Graph Non-Isomorphism = {(G,H) G and H are not isomorphic} Graph Isomorphism in NP but can we prove that G and H are not isomorphic? We will see a simple interactive proof

Interactive Proof for Graph Non-Isomorphism Prover P Find c such that H and G c are isomorphic G 0, G 1 H c Verifier V Select a bit b at random; Set H to be a random isomorphic copy of G b Accept iff c = b [perfect completeness]: if G 0, G 1 are not isomorphic V accept with Probability 1 [soundness]: if G 0, G 1 are isomorphic V accept with Probability ½ (no matter what P does)

Zero-Knowledge (Interactive) Proofs PCPs add randomness to proofs, what if we also add interaction? Prover P x L? Verifier V Accept/Reject Zero-Knowledge Proofs reveal no information apart of x L ZK proofs for all of IP (PSPACE)

IP for Non-Isomorphism is ZK (for semi-honest verifier) Prover P Find c such that H and G c are isomorphic G 0, G 1 H c Verifier V Select a bit b at random; Set H to be a random isomorphic copy of G b Accept iff c = b [perfect completeness]: if G 0, G 1 are not isomorphic V accept with Probability 1 [soundness]: if G 0, G 1 are isomorphic V accept with Probability ½ (no matter what P does)

Where is Waldo?

What s next? A few possibilities (more to come): CS161 Design and Analysis of Algorithms CS168 - The Modern Algorithmic Toolbox CS250 Algebraic Error Correcting Codes CS254 Complexity Theory (next quarter) CS255 - Introduction to Cryptography CS264 - Beyond Worst Case Analysis CS296G -Almost Linear Time Graph Algorithms CS 352 - Pseudorandomness (next year) CS250 - Error Correcting Codes: Theory and Applications CS261 - Optimization and Algorithmic Paradigms CS265 - Randomized Algorithms and Probabilistic Analysis CS368 - Algorithmic Techniques for Big Data

Parting thoughts: Computation is a powerful notion, becoming increasingly central Theory allows us to model and analyse computation, reaching non-trivial understanding Much is still open waiting for you

42