A Short History of Computational Complexity

It all started with a machine. In 1936, Turing developed his theoretical computational model. He based his model on how he perceived mathematicians think. As digital computers were developed in the 40’s and 50’s, the Turing machine proved itself as the right theoretical model for computation. Quickly though we discovered that the basic Turing machine model fails to account for the amount of time or memory needed by a computer, a critical issue today but even more so in those early days of computing. The key idea to measure time and space as a function of the length of the input came in the early 1960’s by Hartmanis and Stearns. And thus computational complexity was born. In the early days of complexity, researchers just tried understanding these new measures and how they related to each other. We saw the first notion of efficient computation by using time polynomial in the input size. This led to complexity’s most important concept, NP-completeness, and its most fundamental question, whether P = NP. The work of Cook and Karp in the early 70’s showed a large number of combinatorial and logical problems were NP-complete, i.e., as hard as any problem computable in nondeterministic polynomial time. The P = NP question is equivalent to an efficient solution of any of these problems. In the thirty years hence this problem has become one of the outstanding open questions in computer science and indeed all of mathematics. In the 70’s we saw the growth of complexity classes as researchers tried to encompass different models of computations. One of those models, probabilistic computation, started with a probabilistic test for primality, led to probabilistic complexity classes and a new kind of interactive proof system that itself led to hardness results for approximating certain NP-complete problems. We have also seen strong evidence that we can remove the randomness from computations and most recently a deterministic algorithm for the original primality problem. In the 80’s we saw the rise of finite models like circuits that capture computation in an inherently different way. A new approach to problems like P = NP arose from these circuits and though they have had limited success in separating complexity classes, this approach brought combinatorial techniques into the area and led to a much better understanding of the limits of these devices. ∗URL: http://www.neci.nj.nec.com/homepages/fortnow. Email: fortnow@research.nj.nec.com. †URL: http://www.cs.bu.edu/faculty/homer. Email: homer@cs.bu.edu. Supported in part by the NSF under grant NSF-CCR-998310 and by the ARO under grant DAAD19-02-1-0058.

[1]  Roman Smolensky,et al.  Algebraic methods in the theory of lower bounds for Boolean circuit complexity , 1987, STOC.

[2]  Stuart A. Kurtz,et al.  The isomorphism conjecture fails relative to a random oracle , 1995, JACM.

[3]  Silvio Micali,et al.  Proofs that yield nothing but their validity or all languages in NP have zero-knowledge proof systems , 1991, JACM.

[4]  Manuel Blum,et al.  A Machine-Independent Theory of the Complexity of Recursive Functions , 1967, JACM.

[5]  Clemens Lautemann,et al.  BPP and the Polynomial Hierarchy , 1983, Inf. Process. Lett..

[6]  Walter J. Savitch,et al.  Relationships Between Nondeterministic and Deterministic Tape Complexities , 1970, J. Comput. Syst. Sci..

[7]  Jan Krajícek,et al.  Propositional proof systems, the consistency of first order theories and the complexity of computations , 1989, Journal of Symbolic Logic.

[8]  Lance Fortnow,et al.  On the Power of Multi-Prover Interactive Protocols , 1994, Theor. Comput. Sci..

[9]  Boris A. Trakhtenbrot,et al.  A Survey of Russian Approaches to Perebor (Brute-Force Searches) Algorithms , 1984, Annals of the History of Computing.

[10]  Albert R. Meyer,et al.  The Equivalence Problem for Regular Expressions with Squaring Requires Exponential Space , 1972, SWAT.

[11]  Daniel R. Simon,et al.  On the power of quantum computation , 1994, Proceedings 35th Annual Symposium on Foundations of Computer Science.

[12]  Peter W. Shor,et al.  Polynomial-Time Algorithms for Prime Factorization and Discrete Logarithms on a Quantum Computer , 1995, SIAM Rev..

[13]  Endre Szemerédi,et al.  Undirected Connectivity in O(log ^1.5 n) Space , 1992, FOCS.

[14]  Ronald de Wolf,et al.  Quantum lower bounds by polynomials , 2001, JACM.

[15]  Manindra Agrawal,et al.  PRIMES is in P , 2004 .

[16]  A. Razborov Lower bounds on monotone complexity of the logical permanent , 1985 .

[17]  Avi Wigderson,et al.  Multi-prover interactive proofs: how to remove intractability assumptions , 2019, STOC '88.

[18]  E. Szemerédi,et al.  Undirected connectivity in O(log/sup 1.5/n) space , 1992, Proceedings., 33rd Annual Symposium on Foundations of Computer Science.

[19]  Andrew Chi-Chih Yao,et al.  Coherent Functions and Program ( extended abstract ) Checkers , .

[20]  Neil Immerman Nondeterministic Space is Closed Under Complementation , 1988, SIAM J. Comput..

[21]  Gilles Brassard,et al.  Strengths and Weaknesses of Quantum Computing , 1997, SIAM J. Comput..

[22]  Juris Hartmanis,et al.  On Polynomial Time Isomorphisms of Some New Complete Sets , 1978, J. Comput. Syst. Sci..

[23]  Allan Borodin,et al.  Computational Complexity and the Existence of Complexity Gaps , 1972, JACM.

[24]  Richard J. Lipton,et al.  PSPACE is provable by two provers in one round , 1991, [1991] Proceedings of the Sixth Annual Structure in Complexity Theory Conference.

[25]  Noam Nisan,et al.  Pseudorandom generators for space-bounded computation , 1992, Comb..

[26]  D. Deutsch Quantum theory, the Church–Turing principle and the universal quantum computer , 1985, Proceedings of the Royal Society of London. A. Mathematical and Physical Sciences.

[27]  Noam Nisan,et al.  Symmetric logspace is closed under complement , 1995, STOC '95.

[28]  Richard J. Lipton,et al.  Random walks, universal traversal sequences, and the complexity of maze problems , 1979, 20th Annual Symposium on Foundations of Computer Science (sfcs 1979).

[29]  Manuel Blum,et al.  How to generate cryptographically strong sequences of pseudo random bits , 1982, 23rd Annual Symposium on Foundations of Computer Science (sfcs 1982).

[30]  Leslie G. Valiant,et al.  The Complexity of Computing the Permanent , 1979, Theor. Comput. Sci..

[31]  H. Cantor Ueber eine Eigenschaft des Inbegriffs aller reellen algebraischen Zahlen. , 1984 .

[32]  Leonid A. Levin,et al.  Checking computations in polylogarithmic time , 1991, STOC '91.

[33]  J. Hartmanis,et al.  On the Computational Complexity of Algorithms , 1965 .

[34]  Ronald Fagin Generalized first-order spectra, and polynomial. time recognizable sets , 1974 .

[35]  Silvio Micali,et al.  The knowledge complexity of interactive proof-systems , 1985, STOC '85.

[36]  Richard M. Karp,et al.  Combinatorics, complexity, and randomness , 1986, CACM.

[37]  A. Turing On Computable Numbers, with an Application to the Entscheidungsproblem. , 1937 .

[38]  Leonard M. Adleman,et al.  Quantum Computability , 1997, SIAM J. Comput..

[39]  Richard Edwin Stearns,et al.  Turing Award lecture: it's time to reconsider time , 1994, CACM.

[40]  Stathis Zachos,et al.  Does co-NP Have Short Interactive Proofs? , 1987, Inf. Process. Lett..

[41]  László Babai,et al.  Arthur-Merlin Games: A Randomized Proof System, and a Hierarchy of Complexity Classes , 1988, J. Comput. Syst. Sci..

[42]  Leonard M. Adleman,et al.  Reducibility, randomness, and intractibility (Abstract) , 1977, STOC '77.

[43]  Noam Nisan,et al.  Pseudorandom generators for space-bounded computations , 1990, STOC '90.

[44]  Dorit S. Hochba,et al.  Approximation Algorithms for NP-Hard Problems , 1997, SIGA.

[45]  Sanjeev Arora,et al.  Polynomial time approximation schemes for Euclidean traveling salesman and other geometric problems , 1998, JACM.

[46]  Sanjeev Arora,et al.  Probabilistic checking of proofs: a new characterization of NP , 1998, JACM.

[47]  Stephen A. Cook,et al.  A hierarchy for nondeterministic time complexity , 1972, J. Comput. Syst. Sci..

[48]  Richard J. Lipton,et al.  Word Problems Solvable in Logspace , 1977, JACM.

[49]  Neil Immerman Languages which capture complexity classes , 1983, STOC '83.

[50]  R. Feynman Simulating physics with computers , 1999 .

[51]  Allan Borodin,et al.  Two Applications of Inductive Counting for Complementation Problems , 1989, SIAM J. Comput..

[52]  Joe Kilian,et al.  Primality testing using elliptic curves , 1999, JACM.

[53]  Juris Hartmanis,et al.  Turing Award lecture on computational complexity and the nature of computer science , 1994, CACM.

[54]  László Lovász,et al.  Interactive proofs and the hardness of approximating cliques , 1996, JACM.

[55]  Avi Wigderson,et al.  SL ⊆L4/3 , 1997, STOC 1997.

[56]  Juris Hartmanis,et al.  Observations about the development of theoretical computer science , 1979, 20th Annual Symposium on Foundations of Computer Science (sfcs 1979).

[57]  D. Deutsch,et al.  Rapid solution of problems by quantum computation , 1992, Proceedings of the Royal Society of London. Series A: Mathematical and Physical Sciences.

[58]  Carsten Lund,et al.  Proof verification and the hardness of approximation problems , 1998, JACM.

[59]  J. Hartmanis Complexity Theory Retrospective , 1990, Springer New York.

[60]  John Watrous,et al.  PSPACE has constant-round quantum interactive proof systems , 1999, 40th Annual Symposium on Foundations of Computer Science (Cat. No.99CB37039).

[61]  Adi Shamir,et al.  Fully parallelized multi prover protocols for NEXP-time , 1991, [1991] Proceedings 32nd Annual Symposium of Foundations of Computer Science.

[62]  Lance Fortnow,et al.  Complexity limitations on quantum computation , 1999, J. Comput. Syst. Sci..

[63]  Steven Homer,et al.  Computability and Complexity Theory , 2001, Texts in Computer Science.

[64]  Hugo Krawczyk,et al.  On the Existence of Pseudorandom Generators , 1993, SIAM J. Comput..

[65]  Daniel A. Spielman,et al.  PP is closed under intersection , 1991, STOC '91.

[66]  Moshe Y. Vardi The complexity of relational query languages (Extended Abstract) , 1982, STOC '82.

[67]  László Babai,et al.  Trading group theory for randomness , 1985, STOC '85.

[68]  Juris Hartmanis A Note on Natural Complete Sets and Gödel Numberings , 1982, Theor. Comput. Sci..

[69]  Alasdair Urquhart,et al.  Formal Languages]: Mathematical Logic--mechanical theorem proving , 2022 .

[70]  Stephen A. Cook,et al.  The complexity of theorem-proving procedures , 1971, STOC.

[71]  Michael Sipser,et al.  A complexity theoretic approach to randomness , 1983, STOC.

[72]  Oded Goldreich,et al.  On Completeness and Soundness in Interactive Proof Systems , 1989, Adv. Comput. Res..

[73]  Richard J. Lipton,et al.  On bounded round multiprover interactive proof systems , 1990, Proceedings Fifth Annual Structure in Complexity Theory Conference.

[74]  Yehoshua Bar-Hillel,et al.  The Intrinsic Computational Difficulty of Functions , 1969 .

[75]  J. Edmonds Paths, Trees, and Flowers , 1965, Canadian Journal of Mathematics.

[76]  Albert R. Meyer,et al.  Classes of computable functions defined by bounds on computation: Preliminary Report , 1969, STOC.

[77]  Stephen A. Fenner,et al.  Determining acceptance possibility for a quantum computation is hard for the polynomial hierarchy , 1998, Proceedings of the Royal Society of London. Series A: Mathematical, Physical and Engineering Sciences.

[78]  Juris Hartmanis,et al.  On isomorphisms and density of NP and other complete sets , 1976, STOC '76.

[79]  Walter J. Savitch,et al.  Maze Recognizing Automata and Nondeterministic Tape Complexity , 1973, J. Comput. Syst. Sci..

[80]  Stuart A. Kurtz,et al.  Gap-Definable Counting Classes , 1994, J. Comput. Syst. Sci..

[81]  Carsten Lund,et al.  Non-deterministic exponential time has two-prover interactive protocols , 2005, computational complexity.

[82]  John Gill,et al.  Relativizations of the P =? NP Question , 1975, SIAM J. Comput..

[83]  R. Smullyan Theory of formal systems , 1962 .

[84]  Johan Håstad,et al.  Almost optimal lower bounds for small depth circuits , 1986, STOC '86.

[85]  Róbert Szelepcsényi,et al.  The method of forced enumeration for nondeterministic automata , 1988, Acta Informatica.

[86]  Shafi Goldwasser,et al.  Private coins versus public coins in interactive proof systems , 1986, STOC '86.

[87]  Patrick C. Fischer,et al.  Translational methods and computational complexity , 1965, SWCT.

[88]  Carsten Lund,et al.  Proof verification and hardness of approximation problems , 1992, Proceedings., 33rd Annual Symposium on Foundations of Computer Science.

[89]  David S. Johnson,et al.  Computers and Intractability: A Guide to the Theory of NP-Completeness , 1978 .

[90]  Neil Immerman,et al.  Relational Queries Computable in Polynomial Time , 1986, Inf. Control..

[91]  Leonid A. Levin,et al.  A hard-core predicate for all one-way functions , 1989, STOC '89.

[92]  Larry J. Stockmeyer,et al.  The Polynomial-Time Hierarchy , 1976, Theor. Comput. Sci..

[93]  Noam Nisan,et al.  BPP has subexponential time simulations unless EXPTIME has publishable proofs , 1991, [1991] Proceedings of the Sixth Annual Structure in Complexity Theory Conference.

[94]  John C. Harsanyi,et al.  Games with Incomplete Information , 1994 .

[95]  Gilles Brassard,et al.  An exact quantum polynomial-time algorithm for Simon's problem , 1997, Proceedings of the Fifth Israeli Symposium on Theory of Computing and Systems.

[96]  Toniann Pitassi,et al.  Propositional Proof Complexity: Past, Present and Future , 2001, Bull. EATCS.

[97]  Volker Strassen,et al.  A Fast Monte-Carlo Test for Primality , 1977, SIAM J. Comput..

[98]  L. Fortnow Counting complexity , 1998 .

[99]  Seinosuke Toda,et al.  PP is as Hard as the Polynomial-Time Hierarchy , 1991, SIAM J. Comput..

[100]  Juris Hartmanis,et al.  Gödel, von Neumann and the P =? NP Problem , 1989, Current Trends in Theoretical Computer Science.

[101]  A. Stephen,et al.  Gap-De nable Counting Classes , 1991 .

[102]  Alexei Y. Kitaev,et al.  Parallelization, amplification, and exponential time simulation of quantum interactive proof systems , 2000, STOC '00.

[103]  Ran Raz,et al.  A parallel repetition theorem , 1995, STOC '95.

[104]  Uwe Schöning The power of counting , 1988, [1988] Proceedings. Structure in Complexity Theory Third Annual Conference.

[105]  Jack Edmonds,et al.  Maximum matching and a polyhedron with 0,1-vertices , 1965 .

[106]  Richard Edwin Stearns,et al.  Two-Tape Simulation of Multitape Turing Machines , 1966, JACM.

[107]  Juris Hartmanis,et al.  On Simple Gödel Numberings and Translations , 1975, SIAM J. Comput..

[108]  Carsten Lund,et al.  Algebraic methods for interactive proof systems , 1990, Proceedings [1990] 31st Annual Symposium on Foundations of Computer Science.

[109]  Leonard M. Adleman,et al.  Recognizing primes in random polynomial time , 1987, STOC.

[110]  Lov K. Grover A fast quantum mechanical algorithm for database search , 1996, STOC '96.

[111]  Michael J. Fischer,et al.  Separating Nondeterministic Time Complexity Classes , 1978, JACM.

[112]  Michael Sipser,et al.  The history and status of the P versus NP question , 1992, STOC '92.

[113]  Klaus Ambos-Spies On the Relative Complexity of Hard Problems for Complexity Classes without Complete Problems , 1989, Theor. Comput. Sci..

[114]  Stephen R. Mahaney Sparse complete sets for NP: Solution of a conjecture of Berman and Hartmanis , 1980, 21st Annual Symposium on Foundations of Computer Science (sfcs 1980).

[115]  Noam Nisan,et al.  Hardness vs Randomness , 1994, J. Comput. Syst. Sci..

[116]  Mihalis Yannakakis,et al.  Optimization, approximation, and complexity classes , 1991, STOC '88.

[117]  Adi Shamir,et al.  IP = PSPACE , 1992, JACM.

[118]  László Lovász,et al.  Two-prover one-round proof systems: their power and their problems (extended abstract) , 1992, STOC '92.

[119]  Leonid A. Levin,et al.  A Pseudorandom Generator from any One-way Function , 1999, SIAM J. Comput..

[120]  Amos Fiat,et al.  Zero-knowledge proofs of identity , 1987, Journal of Cryptology.

[121]  Neil D. Jones,et al.  Turing machines and the spectra of first-order formulas , 1974, Journal of Symbolic Logic.

[122]  C.E. Shannon,et al.  Communication in the Presence of Noise , 1949, Proceedings of the IRE.

[123]  H. James Hoover,et al.  Limits to Parallel Computation: P-Completeness Theory , 1995 .

[124]  Umesh V. Vazirani,et al.  Quantum complexity theory , 1993, STOC.

[125]  Oscar H. Ibarra A Note Concerning Nondeterministic Tape Complexities , 1972, JACM.

[126]  Hisao Yamada,et al.  Real-Time Computation and Recursive Functions Not Real-Time Computable , 1962, IRE Trans. Electron. Comput..

[127]  R. Solovay,et al.  Relativizations of the $\mathcal{P} = ?\mathcal{NP}$ Question , 1975 .

[128]  A. Selman,et al.  Complexity theory retrospective II , 1998 .

[129]  Endre Szemerédi,et al.  Undirected Connectivity in O(l~gl*~ n) Space* , 1992 .

[130]  Juris Hartmanis,et al.  On Isomorphisms and Density of NP and Other Complete Sets , 1977, SIAM J. Comput..

[131]  Uriel Feige On the success probability of the two provers in one-round proof systems , 1991, [1991] Proceedings of the Sixth Annual Structure in Complexity Theory Conference.

[132]  M. Rabin Real time computation , 1963 .

[133]  Stephen A. Cook,et al.  Time-bounded random access machines , 1972, J. Comput. Syst. Sci..

[134]  Stuart A. Kurtz,et al.  Progress on collapsing degrees , 1987, Computational Complexity Conference.

[135]  Neil D. Jones,et al.  Space-Bounded Reducibility among Combinatorial Problems , 1975, J. Comput. Syst. Sci..

[136]  Avi Wigderson,et al.  P = BPP if E requires exponential circuits: derandomizing the XOR lemma , 1997, STOC '97.

[137]  Stephen A. Fenner,et al.  Determining Acceptance Possibility for a Quantum Computation is Hard for PH , 1998 .