Glossary of Complexity Classes
Total Page:16
File Type:pdf, Size:1020Kb
App endix A Glossary of Complexity Classes Summary This glossary includes selfcontained denitions of most complexity classes mentioned in the b o ok Needless to say the glossary oers a very minimal discussion of these classes and the reader is re ferred to the main text for further discussion The items are organized by topics rather than by alphab etic order Sp ecically the glossary is partitioned into two parts dealing separately with complexity classes that are dened in terms of algorithms and their resources ie time and space complexity of Turing machines and complexity classes de ned in terms of nonuniform circuits and referring to their size and depth The algorithmic classes include timecomplexity based classes such as P NP coNP BPP RP coRP PH E EXP and NEXP and the space complexity classes L NL RL and P S P AC E The non k uniform classes include the circuit classes P p oly as well as NC and k AC Denitions and basic results regarding many other complexity classes are available at the constantly evolving Complexity Zoo A Preliminaries Complexity classes are sets of computational problems where each class contains problems that can b e solved with sp ecic computational resources To dene a complexity class one sp ecies a mo del of computation a complexity measure like time or space which is always measured as a function of the input length and a b ound on the complexity of problems in the class We follow the tradition of fo cusing on decision problems but refer to these problems using the terminology of promise problems see Section That is we will refer to the problem of distinguishing inputs in from inputs in yes no APPENDIX A GLOSSARY OF COMPLEXITY CLASSES and denote the corresp onding decision problem by Standard yes no decision problems are viewed as a sp ecial case in which f g and yes no the standard formulation of complexity classes is obtained by p ostulating that this is the case We refer to this case as the case of a trivial promise The prevailing mo del of computation is that of Turing machines This mo del captures the notion of uniform algorithms see Section Another imp ortant mo del is the one of nonuniform circuits see Section The term uniformity refers to whether the algorithm is the same one for every input length or whether a dierent algorithm or rather a circuit is considered for each input length We fo cus on natural complexity classes obtained by considering natural com plexity measures and b ounds Typically these classes contain natural computa tional problems which are dened in App endix G Furthermore almost all of these classes can b e characterized by natural problems which capture every problem in the class Such problems are called complete for the class which means that they are in the class and every problem in the class can b e easily reduced to them where easily means that the reduction takes less resources than whatever seems to b e requires for solving each individual problem in the class Thus any ecient algorithm for a complete problem implies an algorithm of similar eciency for al l problems in the class Organization The glossary is organized by topics rather than by alphab etic or der of the various items Sp ecically we partition the glossary to classes dened in terms of algorithmic resources ie time and space complexity of Turing machines and classes dened in terms of circuit size and depth The former algorithm based classes are reviewed in Section A while the latter circuitbased classes are reviewed in Section A A Algorithmbased classes The two main complexity measures considered in the context of uniform algo rithms are the number of steps taken by the algorithm ie its time complexity and the amount of memory or workspace consumed by the computation ie its space complexity We review the time complexity based classes P NP coNP BPP RP coRP ZPP PH E EXP and NEXP as well as the space complexity classes L NL RL and P S P AC E By prep ending the name of a complexity class of decision problems with the prex co we mean the class of complement problems that is the problem is in coC if and only if is in C Sp ecically deciding yes no no yes membership in the set S is in the class coC if and only if deciding membership in the set f g n S is in the class C Thus the denition of coNP and coRP can b e easily derived from the denitions of NP and RP resp ectively Complexity classes dened in terms of symmetric acceptance criteria eg deterministic and twosided error randomized classes are trivially closed under complementation eg coP P and coBPP BPP and so we do not present their coclasses A ALGORITHMBASED CLASSES In other cases most notably NL the closure prop erty is highly nontrivial and we comment ab out it A Time complexity classes We start with classes that are closely related to p olynomialtime computations ie P NP BPP RP and ZPP and latter consider the classes PH E EXP and NEXP A Classes closely related to p olynomial time The most prominent complexity classes are P and NP which are extensively discussed in Section We also consider classes related to randomized p olynomial time which are discussed in Section P and NP The class P consists of all decision problem that can b e solved in deterministic p olynomialtime A decision problem is in NP yes no if there exists a p olynomial p and a deterministic p olynomialtime algorithm V such that the following two conditions hold pjxj For every x there exists y f g such that V x y yes For every x and every y f g it holds that V x y no A string y satisfying Condition is called an NPwitness for x Clearly P NP Reductions and NPcompleteness NPC A problem is NP complete if it is in NP and every problem in NP is p olynomialtime reducible to it where p olynomialtime reducibility is dened and discussed in Section Lo osely sp eak ing a p olynomialtime reduction of problem to problem is a p olynomialtime algorithm that solves by making queries to a subroutine that solves problem where the runningtime of the subroutine is not counted in the algorithms time complexity Typically NPcompleteness is dened while restricting the reduction to make a single query and output its answer Such a reduction called a Karp reduction is represented by a p olynomialtime computable mapping that maps yesinstances of to yesinstances of and noinstances of to noinstances of Hundreds of NPcomplete problems are listed in Probabilistic p olynomialtime BPP RP and ZPP A decision problem is in BPP if there exists a probabilistic p olynomialtime algorithm yes no A such that the following two conditions hold For every x it holds that Pr Ax yes For every x it holds that Pr Ax no APPENDIX A GLOSSARY OF COMPLEXITY CLASSES That is the algorithm has twosided error probability of which can b e further reduced by rep etitions We stress that due to the twosided error probability of BPP it is not known whether or not BPP is contained in NP In addition to the twosided error class BPP we consider onesided error and zeroerror classes denoted RP and ZPP resp ectively A problem is in RP if there yes no exists a probabilistic p olynomialtime algorithm A such that the following two conditions hold For every x it holds that Pr Ax yes For every x it holds that Pr Ax no Again the error probability can b e reduced by rep etitions and thus RP BPP NP A problem is in ZPP if there exists a probabilistic p olynomial yes no time algorithm A which may output a sp ecial dont know symbol such that the following two conditions hold For every x it holds that Pr Ax f g and Pr Ax yes For every x it holds that Pr Ax f g and Pr Ax no Note that P ZPP RP coRP When dened in terms of promise problems all the aforementioned randomized classes have complete problems wrt Karp reductions but the same is not known when considering only standard decision problems with trivial promise The counting class P Functions in P count the number of solutions to an NPtype search problem or equivalently the number of NPwitnesses for a yesinstance of a decision problem in NP Formally a function f is in P if there exists a p olynomial p and a deterministic p olynomialtime algorithm V such that pjxj f x jfy f g V x y gj Indeed p and V are as in the denition of NP and it follows that deciding membership in the set fx f x g is in NP Clearly P problems are solvable in p olynomial space Surprisingly the p ermanent of p ositive integer matrices is P complete ie it is in P and any function in P is p olynomialtime reducible to it Interactive pro ofs A decision problem has an interactive proof yes no system if there exists a p olynomialtime strategy V such that the following two conditions hold For every x there exists a prover strategy P such that the verier V yes always accepts after interacting with the prover P on common input x For every x and every strategy P the verier V rejects with proba no after interacting with P on common input x bility at least The corresp onding class is denoted IP and turns out to equal P S P AC E For further details see Section A ALGORITHMBASED CLASSES A Other time complexity classes The classes E and EXP corresp onding to problems that can b e solved by a deter O n p olyn ministic algorithm in time and resp ectively for nbit long inputs Clearly NP EXP We also mention NEXP the class of problems that can b e p olyn solved by a nondeterministic machine in steps In general one may dene a complexity class