A Personal View of Average-Case Complexity

The structural theory of average case com plexity introduced by Levin gives a for mal setting for discussing the types of inputs for which a problem is di cult This is vital to understanding both when a seemingly di cult e g NP complete problem is actually easy on almost all in stances and to determining which prob lems might be suitable for applications re quiring hard problems such as cryptog raphy This paper attempts to summarize the state of knowledge in this area includ ing some folklore results that have not explicitly appeared in print We also try to standardize and unify de nitions Fi nally we indicate what we feel are inter esting research directions We hope that this paper will motivate more research in this area and provide an introduction to the area for people new to it Research Supported by NSF YI Award CCR Sloan Research Fellowship BR and USA Israel BSF Grant  There is a large gap between a problem not being easy and the same problem be ing di cult A problem could have no e cient worst case algorithm but still be solvable for most instances or on in stances that arise in practice Thus a con ventional completeness result can be rel atively meaningless in terms of the real life di culty of the problem since two problems can both be NP complete but one can be solvable quickly on most in stances that arise in practice and the other not However average run time argu ments of particular algorithms for partic ular distributions are also unenlightening as to the complexity of real instances of a problem First they only analyze the performance of speci c algorithms rather than describing the inherent complexity of the problem Secondly the distributions of inputs that arise in practice are often di cult to characterize so analysis of al gorithms on nice distributions does not capture the real life average di culty Thus a structural theory of distribu tional complexity is necessary Such a the ory should allow one to compare the inher ent intractability of distributional prob lems computational problems together with distributions on instances It should also provide results that are meaningful with respect to instances from an arbitrary distribution that might arise Besides capturing more accurately the real world di culty of problems the average case complexity of a problem is important in determining its suitability for applications such as cryptography and the de randomization of algorithms For such applications one needs more than the mere existence of hard instances of the problem one needs to be able to generate instances in a way that guarantees that al most all generated instances are hard For these reasons Levin in L intro duced a structural theory of the average case complexity of problems The main contributions of his paper were a gen eral notion of a distributional problem a machine independent de nition of the average case performance of an algorithm an appropriate notion of reduction be tween distributional problems and an ex ample of a problem that was complete for the class of all NP problems on su ciently uniform distributions Since he and many others have built on this foundation see e g BCGL G VL G Despite the above work I feel the struc ture of average case complexity has not re ceived the attention due to a central prob lem in complexity theory The goal of this paper is to motivate more research in this area and to make the research frontier more accessible to people starting work in this area Several caveats are necessary with re spect to this goal As this is basically a propaganda piece I will present my own personal view of what makes the eld ex citing I will not present a comprehensive summary or bibliography of work in the area nor do I claim that the work men tioned here is the best in the area I will also attempt to clarify and sim plify concepts in the area by presenting both my own equivalent formulations and also by trying to make a uniform taxon omy for concepts The current de nitions are the product of much thought and work by top researchers so many researchers in the area will consider my attempts to do this as a confusion and complicating of the issues rather than a clari cation and simpli cation of them However I feel someone starting out in the area might bene t from seeing a variety of perspec tives Many of the results mentioned in this paper should be considered folklore in that they merely formally state ideas that are well known to researchers in the area but may not be obvious to beginners and to the best of my knowledge do not appear elsewhere in print Five possible worlds To illustrate the central role in complex ity theory of questions regarding the aver age case complexity of problems in NP we will now take a guided tour of ve possible i e not currently known to be false outcomes for these questions and see how they would a ect computer sci ence In each such world we will look at the in uence of the outcomes of these questions on algorithm design for such ar eas as arti cial intelligence and VLSI de sign and for cryptography and computer security We will also consider the more technical issue of derandomization of al gorithms the simulation of probabilistic algorithms by deterministic algorithms This will have a much smaller impact on society than the other issues but we in clude it as another situation besides cryp tography where having di cult problems is actually useful Finally to provide a human angle we will consider the impact these questions would have had on the sad story of Profes sor Grouse the teacher who assigned the young Gauss s class the problem of sum ming the numbers from to The be ginning of this story is well known but few people realize that Professor Grouse then became obsessed with getting his re venge by humiliating Gauss in front of the class by inventing problems Gauss could not solve In real life this led to Grouse s commitment to a lunatic asylum not a pleasant end especially in the th cen tury and to Gauss s developing a life long interest in number theoretic algorithms Here we imagine how the story might have turned out had Grouse been an expert in computational complexity at a time when the main questions about average case complexity had been resolved We believe that this story inspired Gurevich s Challenger Solver Game G In this section we will leave unresolved the questions of how to properly formal ize the complexity assumptions behind the worlds In particular we will leave open which model of computation we are talk ing about e g deterministic algorithms probabilistic algorithms Boolean circuits or even quantum computers and we shall ignore quantitative issues such as whether an n time algorithm for satis ability would be feasible We also assume that if an algorithm exists then it is known to the inhabitants of the world We also ig nore the issue of whether it might be possi ble that algorithms are fast for some input sizes but not others which would have the e ect of bouncing us from world to world as technology advanced We will take as our standard for whether these worlds are indeed possible the ex istence of an oracle relative to which the appropriate assumptions hold Of course this is far from a de nitive answer and the existence of an oracle should not stop the researcher from attempting to nd non relativizing techniques to narrow the range of possibilities Indeed it would be won derful to eliminate one or more of these worlds from consideration preferably the pestilent Pessiland We will try to suc cinctly and informally describe what type of algorithm and or lower bound would be needed to conclude that we are in a partic ular world Barring the caveats mentioned in the previous paragraph these condi tions will basically cover all eventualities thus showing that these are the only possi ble worlds This is an informal statement and will be more true for some worlds than