The Polynomial Hierarchy Enumeration Problems 7.3.3

Slides:



Advertisements
Similar presentations
1 P, NP, and NP-Complete Dr. Ying Lu RAIK 283 Data Structures & Algorithms.
Advertisements

NP-Hard Nattee Niparnan.
Lecture 21 NP-complete problems
The Theory of NP-Completeness
Complexity 25-1 Complexity Andrei Bulatov #P-Completeness.
Complexity 15-1 Complexity Andrei Bulatov Hierarchy Theorem.
Computability and Complexity 13-1 Computability and Complexity Andrei Bulatov The Class NP.
NP-Complete Problems Reading Material: Chapter 10 Sections 1, 2, 3, and 4 only.
The Theory of NP-Completeness
NP-Complete Problems Problems in Computer Science are classified into
Analysis of Algorithms CS 477/677
CS Master – Introduction to the Theory of Computation Jan Maluszynski - HT Lecture NP-Completeness Jan Maluszynski, IDA, 2007
Chapter 11 Limitations of Algorithm Power Copyright © 2007 Pearson Addison-Wesley. All rights reserved.
The Theory of NP-Completeness 1. What is NP-completeness? Consider the circuit satisfiability problem Difficult to answer the decision problem in polynomial.
MCS312: NP-completeness and Approximation Algorithms
1 The Theory of NP-Completeness 2012/11/6 P: the class of problems which can be solved by a deterministic polynomial algorithm. NP : the class of decision.
Nattee Niparnan. Easy & Hard Problem What is “difficulty” of problem? Difficult for computer scientist to derive algorithm for the problem? Difficult.
NP Complexity By Mussie Araya. What is NP Complexity? Formal Definition: NP is the set of decision problems solvable in polynomial time by a non- deterministic.
Week 10Complexity of Algorithms1 Hard Computational Problems Some computational problems are hard Despite a numerous attempts we do not know any efficient.
CSE 024: Design & Analysis of Algorithms Chapter 9: NP Completeness Sedgewick Chp:40 David Luebke’s Course Notes / University of Virginia, Computer Science.
Complexity 25-1 Complexity Andrei Bulatov Counting Problems.
P, NP, and Exponential Problems Should have had all this in CS 252 – Quick review Many problems have an exponential number of possibilities and we can.
CSCI 3160 Design and Analysis of Algorithms Tutorial 10 Chengyu Lin.
1 The Theory of NP-Completeness 2 Cook ’ s Theorem (1971) Prof. Cook Toronto U. Receiving Turing Award (1982) Discussing difficult problems: worst case.
Lecture 6 NP Class. P = ? NP = ? PSPACE They are central problems in computational complexity.
NP-Complete problems.
Design and Analysis of Algorithms - Chapter 101 Our old list of problems b Sorting b Searching b Shortest paths in a graph b Minimum spanning tree b Primality.
NP-Algorithms Tractable vs Intractable Some problems are intractable: as they grow large, we are unable to solve them in reasonable time.
Strings Basic data type in computational biology A string is an ordered succession of characters or symbols from a finite set called an alphabet Sequence.
CS6045: Advanced Algorithms NP Completeness. NP-Completeness Some problems are intractable: as they grow large, we are unable to solve them in reasonable.
Lecture 25 NP Class. P = ? NP = ? PSPACE They are central problems in computational complexity.
NP-Completeness  For convenience, the theory of NP - Completeness is designed for decision problems (i.e. whose solution is either yes or no).  Abstractly,
Chapter 11 Introduction to Computational Complexity Copyright © 2011 The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 1.
NPC.
The Theory of NP-Completeness 1. Nondeterministic algorithms A nondeterminstic algorithm consists of phase 1: guessing phase 2: checking If the checking.
1 The Theory of NP-Completeness 2 Review: Finding lower bound by problem transformation Problem X reduces to problem Y (X  Y ) iff X can be solved by.
ICS 353: Design and Analysis of Algorithms NP-Complete Problems King Fahd University of Petroleum & Minerals Information & Computer Science Department.
The Theory of NP-Completeness
Complexity Classes.
More NP-Complete and NP-hard Problems
P & NP.
Chapter 10 NP-Complete Problems.
Computational Complexity Theory
EMIS 8373: Integer Programming
Richard Anderson Lectures NP-Completeness
Richard Anderson Lecture 26 NP-Completeness
Lecture 2-2 NP Class.
Part VI NP-Hardness.
NP-Completeness (2) NP-Completeness Graphs 7/23/ :02 PM x x x x
Perfect Matchings in Bipartite Graphs
Lecture 5 NP Class.
ICS 353: Design and Analysis of Algorithms
Chapter 34: NP-Completeness
CS 583 Fall 2006 Analysis of Algorithms
CLASSES P AND NP.
Chapter 11 Limitations of Algorithm Power
NP-Complete Problems.
CSC 4170 Theory of Computation The class NP Section 7.3.
Prabhas Chongstitvatana
CSE 6408 Advanced Algorithms.
NP-Completeness Reference: Computers and Intractability: A Guide to the Theory of NP-Completeness by Garey and Johnson, W.H. Freeman and Company, 1979.
P, NP and NP-Complete Problems
The Theory of NP-Completeness
Umans Complexity Theory Lectures
CSE 589 Applied Algorithms Spring 1999
P, NP and NP-Complete Problems
Our old list of problems
RAIK 283 Data Structures & Algorithms
Complexity Theory: Foundations
Presentation transcript:

The Polynomial Hierarchy 7.3.2 Enumeration Problems 7.3.3 R. Anderson, S. Dugginapeddi, and V. Gadde

7.3.2 Polynomial Hierarchy

Polynomial Hierarchy Class coNP NPcoNP and NPcoNP Dp

What about? But how? Not clear on…Hmmm Is problem A in NP? Turing reductions Many-one reductions What about ~A (coA)? Reductions But how to distinguish the differences? In general, difference between NP and coNP Reductions, no clear distinction Hmmm….let’s classify coNP

The Class coNP Class coNP (Definition 7.2) Composed of the complements of problems in NP The natural complement of NP problems Same set of valid problem instances “yes” and “no” NP problem answers reversed Negation of the problem question Conjecture NP and coNP are distinct

Decision problems around NP Distinction generalized to any nondeterministic class NP differs from coNP, NExp from coNExp, etc. Cases of intersection NL = coNL Questions: What is the class NP  coNP? Is (NP  coNP) = P? NP  coNP = NP-easy? NP-easy NP coNP co NPC P

The NP  coNP class What is NP  coNP? Is (NP  coNP) = P? problems in NP whose compliment is also in NP Linear programming, primality testing Is (NP  coNP) = P? Not proven Conjecture P  (NP  coNP) Duality of linear programs Compositness and primality Could indicate problem is in P

The Dp class NP  coNP = NP-easy? Class Dp (Definition 7.3 p.268) No Dp Class Dp (Definition 7.3 p.268) Class of all sets Z that can be written as Z=X  Y, for X  NP and Y  coNP. i.e. for any X in NP there is a problem Y in coNP where the intersect of the two result in a “yes” instance. Dp contains both NP and coNP

The Dp class Proper superset of NP  coNP NP-easy Proper superset of NP  coNP Dp = NP  coNP iff NP = coNP Separates NP  coNP and NP-easy Completion problems Many-one TSM SAT-UNSAT Two sets of clauses on two disjoint sets of variables Question: is the first set satisfiable (SAT) and the second UNSAT Dp-complete (Theorem 7.19)

SAT-UNSAT is Dp-complete Proof Prove that: SAT-UNSAT is in Dp Any problem in Dp reduces to it. Simply the intersection of SAT and UNSAT sets SAT  UNSAT First set/half satisfiable? Yes Second set/half unsatisfiable? Yes

SAT-UNSAT is Dp-complete Proof Any problem in Dp reduces to it Any problem XDp can be written as X=Y1  Y2 Problem of Y1NP and problem of Y2coNP SAT is NP-complete while UNSAT coNP-complete Y1 ≤ SAT and Y2 ≤ UNSAT SAT ≤ SAT-UNSAT Adding an UNSAT set of clauses of a different set of variables Basically same for UNSAT ≤ SAT-UNSAT

SAT-UNSAT is Dp-complete Proof Given and instance of X, x x has an instance of Y1 and Y2 Many-one reductions Y1 to SAT yields x1 Y2 to UNSAT yields x2 The concatenation of yields a new instance of SAT-UNSAT z = x1 #x2

Polynomial Hierarchy Do NP-easy problems constitute the set of all problems solvable in polynomial time if P equals NP? Any class with the property that collapses into P if P equals NP, exists as a separate entity only under assumption. Potentially infinite hierarchy of such classes is Polynomial hierarchy.

Polynomial Hierarchy  Consider a class of NP easy decision problems. -- is a class of all decision problems solvable in polynomial time with the help of one oracle for some suitable NP-complete problem. -- all problems in NP are solvable by an oracle. Denoted by PNP.

Polynomial Hierarchy If P=NP, an oracle for NP would be oracle for P. We can always solve problems in polynomial time i.e.., PNP = PP = P. Assume P and NP differ and combine non-determinism, co-non-determinism and oracle mechanism and define further classes.

Polynomial Hierarchy Initially use a non deterministic polynomial time TM with oracle for NP. The resulting class would be NPNP. If P = NP then, NPNP = NPP = NP = P

Polynomial Hierarchy Problems in NPNP were solvable in polynomial time, so would be problems in NP if and only if P = NP. Consider class containing complements of NPNP, co-NPNP. NPNP and co-NPNP , both are one level higher in hierarchy. The hierarchies thus can extend to infinite levels.

Polynomial Hierarchy Definition: Is formed of three types of classes, each defined recursively: the deterministic classes, the non-deterministic classes and the co-non-deterministic classes which are recursively defined as follows

Polynomial Hierarchy The Polynomial Hierarchy – One level

Polynomial Hierarchy If the hierarchy is infinite no complete problem can exist for PH itself. It is not known whether the hierarchy is truly infinite or collapses into some non deterministic class. We could have P =/= NP but NP = coNP, where the whole hierarchy collapses to NP.

Polynomial Hierarchy On the whole Polynomial Hierarchy explains the complexity of issues and surrounding the fundamental question of the relationship between P and NP.

7.3.3 ENUMERATION PROBLEMS

CONTENTS Enumerations versions #P class and significance Completeness for #P - Using Parsimonious transformations #P Complete related to NP and P Comparison of #P complete problems

Enumeration vs Decision Decision computes boolean valued function Enumeration includes all integer valued functions Presents number of Optimal or feasible solutions for given instance of problem Defined for either decision, search or optimization problems Enumeration leads to uncountable infinity of different solutions

Enumeration versions are significantly harder - Hamiltonian circuits for a graph Simple decision problems leads to harder enumeration -counting different spanning trees compared to finding single spanning tree Some enumeration tasks can be solved in polynomial time -counting eulerian paths of graph -counting number of spanning trees

#P class Def 7.5 An integer-valued function f belongs to # p if there exists a deterministic Turing machine T and a polynomial p() such that , for each input string x, the value of the function f(x), is exactly equal to the number of distinct concise certificates for x. NTM accepts x in exactly f(x) different ways #P is the enumeration version of any problem in NP

-How many Hamiltonian cycles in a given graph have cost less than 100? Set of counting problems associated with decision problems in set NP NP is related with format “are there any” -Are there any subsets of a list of integers that add up to zero? -Are there any Hamiltonian cycles in a given graph with cost less than 100? (traveling salesman problem) Corresponding #P asks “how many” -How many subsets of a list of integers add up to zero? -How many Hamiltonian cycles in a given graph have cost less than 100?

#P - Complete Completeness of #P is defined based on polynomial reductions and transformations -What is the permanent of given matrix? -How many perfect matchings are there for a given bipartite graph? Parsimonious defines the equality of solutions between original and transformed instance Parsimonious transformation acts both reduction and transformation Weakly parsimonious serves to prove #P completeness

#P complete defines enumeration version of all NP-complete problems Decision problems in P which are #P complete rises particular interest Finding one perfect matching is solvable in polynomial time Counting number of perfect matching in bipartite graph is #P complete

Comparing #P Complete #P- complete problems are NP- hard Solvability is based on the equality of P and NP If P= NP , #P complete may remains intractable #P-hardness acts as strong evidence of intractability #P is difficult to compare with other complexity classes #P-easy is used to compare

Many counting problems in #P , hard don’t seem to #P complete Counting the number of distinct isomorphism's between two graphs are NP-easy