How To Know If You Can Find Out If You Are In Or Not In Npa



Similar documents
CoNP and Function Problems

CSC 373: Algorithm Design and Analysis Lecture 16

Tutorial 8. NP-Complete Problems

Lecture 7: NP-Complete Problems

A Working Knowledge of Computational Complexity for an Optimizer

NP-complete? NP-hard? Some Foundations of Complexity. Prof. Sven Hartmann Clausthal University of Technology Department of Informatics

OHJ-2306 Introduction to Theoretical Computer Science, Fall

1. Nondeterministically guess a solution (called a certificate) 2. Check whether the solution solves the problem (called verification)

Introduction to Logic in Computer Science: Autumn 2006

Page 1. CSCE 310J Data Structures & Algorithms. CSCE 310J Data Structures & Algorithms. P, NP, and NP-Complete. Polynomial-Time Algorithms

Introduction to Algorithms. Part 3: P, NP Hard Problems

! X is a set of strings. ! Instance: string s. ! Algorithm A solves problem X: A(s) = yes iff s! X.

NP-Completeness and Cook s Theorem

Complexity Theory. IE 661: Scheduling Theory Fall 2003 Satyaki Ghosh Dastidar

CMPSCI611: Approximating MAX-CUT Lecture 20

NP-Completeness. CptS 223 Advanced Data Structures. Larry Holder School of Electrical Engineering and Computer Science Washington State University

MATHEMATICS: CONCEPTS, AND FOUNDATIONS Vol. III - Logic and Computer Science - Phokion G. Kolaitis

NP-Completeness I. Lecture Overview Introduction: Reduction and Expressiveness

Factoring & Primality

Quantum and Non-deterministic computers facing NP-completeness

On the Unique Games Conjecture

SIMS 255 Foundations of Software Design. Complexity and NP-completeness

P versus NP, and More

Welcome to... Problem Analysis and Complexity Theory , 3 VU

Integer factorization is in P

ON THE COMPLEXITY OF THE GAME OF SET.

5.1 Bipartite Matching

Guessing Game: NP-Complete?

Near Optimal Solutions

The Classes P and NP

Diagonalization. Ahto Buldas. Lecture 3 of Complexity Theory October 8, Slides based on S.Aurora, B.Barak. Complexity Theory: A Modern Approach.

Computer Algorithms. NP-Complete Problems. CISC 4080 Yanjun Li

Approximation Algorithms

Generating models of a matched formula with a polynomial delay

Exponential time algorithms for graph coloring

Chapter. NP-Completeness. Contents

! Solve problem to optimality. ! Solve problem in poly-time. ! Solve arbitrary instances of the problem. #-approximation algorithm.

Universality in the theory of algorithms and computer science

Updating Action Domain Descriptions

Lecture 16 : Relations and Functions DRAFT

Lecture 2: Complexity Theory Review and Interactive Proofs

Lecture 13 - Basic Number Theory.

Lecture 1: Course overview, circuits, and formulas

Classification - Examples

Definition Given a graph G on n vertices, we define the following quantities:

Why? A central concept in Computer Science. Algorithms are ubiquitous.

6.080/6.089 GITCS Feb 12, Lecture 3

Introduction to Graph Theory

Introduction to NP-Completeness Written and copyright c by Jie Wang 1

Lecture 30: NP-Hard Problems [Fa 14]

8 Primes and Modular Arithmetic

Lecture 1: Oracle Turing Machines

How To Solve A Minimum Set Covering Problem (Mcp)

CAD Algorithms. P and NP

Prime Numbers. Difficulties in Factoring a Number: from the Perspective of Computation. Computation Theory. Turing Machine 電 腦 安 全

Computational complexity theory

The application of prime numbers to RSA encryption

Cycle transversals in bounded degree graphs

Introduction to computer science

On the Relationship between Classes P and NP

Scheduling Shop Scheduling. Tim Nieberg

! Solve problem to optimality. ! Solve problem in poly-time. ! Solve arbitrary instances of the problem. !-approximation algorithm.

Tetris is Hard: An Introduction to P vs NP

USE OF EIGENVALUES AND EIGENVECTORS TO ANALYZE BIPARTIVITY OF NETWORK GRAPHS

CSC2420 Spring 2015: Lecture 3

Complexity Classes P and NP

Algorithm Design and Analysis

RSA Question 2. Bob thinks that p and q are primes but p isn t. Then, Bob thinks Φ Bob :=(p-1)(q-1) = φ(n). Is this true?

Chapter Load Balancing. Approximation Algorithms. Load Balancing. Load Balancing on 2 Machines. Load Balancing: Greedy Scheduling

4.6 The Primitive Recursive Functions

Applied Algorithm Design Lecture 5

MATH10040 Chapter 2: Prime and relatively prime numbers

2. (a) Explain the strassen s matrix multiplication. (b) Write deletion algorithm, of Binary search tree. [8+8]

International Journal of Information Technology, Modeling and Computing (IJITMC) Vol.1, No.3,August 2013

TU e. Advanced Algorithms: experimentation project. The problem: load balancing with bounded look-ahead. Input: integer m 2: number of machines

Formal Languages and Automata Theory - Regular Expressions and Finite Automata -

Notes on NP Completeness

Chapter 1. NP Completeness I Introduction. By Sariel Har-Peled, December 30, Version: 1.05

How to Prove a Theorem So No One Else Can Claim It

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

Theoretical Computer Science (Bridging Course) Complexity

Introduction. Digital Signature

2.1 Complexity Classes

Lecture 19: Introduction to NP-Completeness Steven Skiena. Department of Computer Science State University of New York Stony Brook, NY

THE P VERSUS NP PROBLEM

Cryptography and Network Security Number Theory

1 Definition of a Turing machine

3. Computational Complexity.

Transportation Polytopes: a Twenty year Update

Boulder Dash is NP hard

Notes on Complexity Theory Last updated: August, Lecture 1

Key words. multi-objective optimization, approximate Pareto set, bi-objective shortest path

THE PROBLEM WORMS (1) WORMS (2) THE PROBLEM OF WORM PROPAGATION/PREVENTION THE MINIMUM VERTEX COVER PROBLEM

Breaking The Code. Ryan Lowe. Ryan Lowe is currently a Ball State senior with a double major in Computer Science and Mathematics and

Transcription:

COMS4236: Introduction to Computational Complexity Summer 2014 Mihalis Yannakakis Lecture 17

Outline conp NP conp Factoring Total NP Search Problems

Class conp Definition of NP is nonsymmetric with respect to Yes, No conp { L L * L NP } A decision problem P is in conp if the complement of its Yes language LP is in NP its No language (set of No instances) is in NP Certificate version A language L is in conp if there is a polynomial-time decidable binary predicate R(.,.) and constant c such that L = { x y. y x c predicate R(x,y) is true }

conp-complete problems Complements of NP-complete problems UNSAT: Given Boolean formula, is it unsatisfiable? TAUTOLOGY (VALIDITY): Given Boolean formula, is it a tautology (valid), i.e. satisfied by all truth assignments? NONHAMILTONICITY: Given a (undirected or directed) graph, is it nonhamiltonian? NON 3-COLORABILITY: Given an undirected graph, is it the case that it has no 3-coloring? NODE COVER LOWER BOUND: Given graph G and number k, does every node cover of G have k nodes? INDEPENDENT SET UPPER BOUND: Given a graph G and number k, does every independent set of G have k nodes?

Properties P NP, P conp, thus, P NP conp NP is closed under union, intersection conp is also closed under union, intersection NP (and conp) closed under complement iff NP=coNP - conjectured not

Relations between P, NP, conp Conjectured relation: all distinct NP NP conp P conp Other possibilities: NP conp P = NP conp NP = conp P P=NP=coNP

P = NP? Fundamental Questions Is it always as easy to generate a proof as it is to check a proof that is given to us? NP = conp? Is it always possible to provide simple convincing evidence that something does not exist, as it is to show that something exists by exhibiting it? P = NP conp? If there is a simple convincing proof both for the presence and the absence of a property, does this mean we can test the property efficiently?

Relations between P, NP, conp and their complete problems Conjectured relation: all distinct NP NPC conpc NP conp P conp If an NP-complete problem is in P then P=NP If an NP-complete problem is in conp then NP=coNP If NP conp then no NP-complete problem can be in conp - equivalently, no problem in NP conp can be NP-complete

NP conp Short, easy to check certificates both for the Yes and the No instances Examples: Graph Bipartiteness: bipartite nodes can be partitioned into two sets V1, V2 so that all edges connect a node in V1 with a node in V2 nonbipartite there is an odd length cycle Graph Planarity planar can draw on the plane so that no edges intersect nonplanar contains a homeomorph of K5 or K33 (Kuratowski s theorem) K5 K33 These particular properties happen to be in fact in P

NP conp and Optimization Optimization problems whose decision version is in NP: assume solutions have polynomial size (#bits) and cost (or values) can be computed in polynomial time If there is a polynomial time (or even NP) optimality testing algorithm, which, given an instance and a solution, tests that the solution is optimal, then the decision version is in conp, and hence probably not NP-complete. Proof: Given an instance x and a bound k, guess a solution s, verify that it is optimal, and verify that its cost (or value) is worse than k (i.e. cost(s) >k for a minimization problem, or value(s)<k for maximization). Examples: Linear Programming Maximum flow problem Maximum matching. These particular problems turn out to be in fact in P

Primality Input: Positive integer N (given in binary: input size n=logn) Question: Is N prime? The straightforward algorithm (try out all numbers < N to see if any divides N) is pseudopolynomial, not polynomial Primes conp, i.e. Composites NP: guess a factor q and verify that q divides N Primes NP. Not as obvious [Pratt 1975] Primes P. Much harder [Agrawal, Kayal, Saxena 2002]

Factoring Input: Positive number N i Output: The prime factorization of N, 1 i 2 i N p1p2 p k k Most common cryptographic scheme (RSA) based on presumed difficulty of the factoring problem Decision version Input: Number N, number b Question: Does N have a (nontrivial) factor b? (Note: N has a factor b iff it has a prime factor b) - Can factor N with polynomially many calls to an algorithm for the decision problem: Use binary search to find the smallest (nontrivial) factor of N (it will be a prime), divide N by the factor, and repeat.

Factoring Decision NP conp Decision NP: Guess a factor p > 1 and b, and check that p divides N Decision conp: Guess the prime factorization of N: i 1 i 2 i N p, verify the factoring and primality of the pi 1p2 p k k (can use the primality algorithm in P or the NP algorithm: guess certificates C(pi) for all the pi and verify them) Check that no pi is b If NP conp=p then Factoring Decision P Factoring P In other words, Factoring P NP conp P Factoring can be done in polynomial time in a Quantum Computer model [Shor 1994] more powerful than ordinary computers?

Hardness of Factoring? Probably cannot use NP-hardness to argue that Factoring is an intractable problem: If Factoring is NP-hard then NP=coNP This holds even for a more general notion of polynomial reduction (and NP-hardness) called Cook reduction. Problem A Cook reduces to problem B if there is an algorithm for problem A that uses a subroutine for B and which runs in polynomial time apart from the subroutine calls Thus if the subroutine for B is polynomial-time then the algorithm A also polynomial-time. If SAT Cook reduces to Factoring then can get NP algorithm for UNSAT (a conp-complete problem): replace the subroutine calls with an NP algorithm that guesses and verifies the factorization.

NP conp and Completeness Factoring P NP conp P Does the converse hold? Can we argue that Factoring is complete for NP conp? No complete problems known for NP conp Basic Obstacle: NP conp is a semantic class. No effective syntactic characterization in terms of a class of machines, as we had with deterministic and nondeterministic time- and space-complexity classes, where we could just limit the amount of time or space used by a TM

NP Search problems Binary relation RP relates every input x to 0, 1, or more correct outputs y of problem P as in certificate-based definition of NP. Assume RP is polynomially balanced: y poly( x ) and polynomial-time decidable. NP Search problem P: Given input x, compute a y such that RP (x,y) - anyone is fine or determine that there is none. Examples: Given formula, output a satisfying assignment (if the formula is satisfiable) Given integer N, output its prime factorization (Book calls these `function problems, but they are possibly partial and multivalued functions, i.e. relations)

Total Function and Search problems P Search problem P is total if every input x relates to one or more correct outputs y; i.e., for each x there is at least one y such that RP (x,y) Search problem is a (total) function problem, if every x relates to exactly one y Example: Factoring is a total function problem. Total NP search problems cannot be NP-hard (under Cook reductions) unless NP=coNP. For total function problems, P P NP conp P (HW exercise)

Total Function and Search problems P There is a number of open problems of this type that are not known to be in P various games (equilibria, optimal strategies) locally optimal solutions to optimization problems stable solutions in neural nets verification of certain properties of systems...