On the Weight of Computations

One of the Grand Challenges to computer science is to understand what is and is not feasibly computable. Recursive function theory clarified what is and is not effectively computable and in the process extended our understanding of Goedel incompleteness results about the limits of the power of formal mathematical methods. Since computing is universal and encompasses the power of mathematics, the understanding of the limits of the feasibly computable could give a deeper understanding of the limits of rational intellectual processes and insights into the power and limits of scientific theories. The search for what is and is not feasibly computable has two distinct aspects. The first is to determine (estimate) how much and what kind of computing power will be available in the foreseeable future. The other problem is to determine what kind of problems can be solved with these available computing resources. The first problem is a technological assessment of the existing and potential computing technologies to estimate what kind and how much computing work our machines will be able to render. The other problem leads us to the central questions of complexity theory: what is the intrinsic complexity of important classes of problems we wish to solve. Clearly, the P=NP=PSPACE? problems are among the best known in this area. In all these considerations, the exponential function seems to give a crude upper limit for the feasibly computable. May it be time, memory or weight requirements, if they grow exponentially, then the computations are not feasible. We do not know what computations require exponential amounts of resources, nor do all instances of problems in exponential complexity classes require exponential resources. Even if the exact solutions require exponential resources, good approximations to the solution may not. But if indeed the problem requires exponential resources, then it is clearly not feasibly solvable already for moderate size instances of the problem.