Skip to main content

Part of the book series: Springer Monographs in Mathematics ((SMM))

  • 3209 Accesses

Abstract

This chapter provides a survey of the main concepts and results of the computational complexity theory. We start with basic concepts such as time and space complexities, complexity classes P and NP, and Boolean circuits. We discuss how the use of randomness and interaction enables one to compute more efficiently. In this context we also mention some basic concepts from theoretical cryptography. We then discuss two related ways to make computations more efficient: the use of processors working in parallel and the use of quantum circuits. Among other things, we explain Shor’s quantum algorithm for factoring integers. The topic of the last section is important for the foundations of mathematics, although it is less related to computational complexity; it is about algorithmic complexity of finite strings of bits.

Hiding in the alternating patterns of digits, deep inside the transcendental number, was a perfect circle, its form traced out by unities in a field of naughts.

Carl Sagan, Contact

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 149.00
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 199.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD 199.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    In Russian a single word, perebor, which means picking over, is used for this type of algorithms.

  2. 2.

    This number is called RSA-129.

  3. 3.

    This is a simplified version of the Traveling Salesperson Problem in which we may have different costs associated with different connections.

  4. 4.

    Assuming f is time constructible, sets computable in time f(n) are computable in space f(n)/logf(n), see [132].

  5. 5.

    One can prove that this is an inessential restriction.

  6. 6.

    I deviate from the standard notation which is P/poly.

  7. 7.

    Note that the input size is 2n, hence polynomial time means 2cn for some constant c.

  8. 8.

    This is for circuits in the basis of all binary connectives; o(n) denotes a term of a lower order than n.

  9. 9.

    To give an explicit construction of a Ramsey graph is one of the many famous Erdős problems for which he offered money prizes.

  10. 10.

    In fact one can extract a specific transcendental number from this proof. We can compute solutions of algebraic equations with rational coefficients to arbitrary precision and we can enumerate them (possibly with repetitions). Thus applying the diagonal trick we can define digits of a transcendental number by an algorithm. Similarly, we can enumerate all Boolean functions of n variables and taking the first one whose complexity exceeds a given bound. We do not consider such definitions explicit, as the defined entity is chosen by a process that has little to do with the property that we need to ensure.

  11. 11.

    In general, they are only determined up to the functional equivalence; I will ignore this subtlety.

  12. 12.

    A related concept had been studied in the research area algorithmic randomness before the mathematical definition of pseudorandom generators was introduced. In that area the aim was to define and study countably infinite sequences that share properties with typical random sequences.

  13. 13.

    Strictly speaking, the encoding and decoding keys are not only the numbers e and d, but the pairs (e,N) and (d,N).

  14. 14.

    Recently chips that integrate several cores have been introduced. Computers equipped with such processors can run some processes in parallel.

  15. 15.

    I will only be concerned with the parts of the brain that are responsible for cognitive processes or motor actions.

  16. 16.

    In fact, cnlogn size, for c a constant.

  17. 17.

    Also signals between neurons are transmitted chemically. There is a tiny gap between a synapse and another neuron, the synaptic cleft. An electric signal arriving to a synapse causes release of neurotransmitters into the gap, which in turn triggers, or inhibits, an electric signal in the adjacent neuron. As the gaps are very small, this does not cause much time delay.

  18. 18.

    I prefer to use ‘crossing-over’ since it is less ambiguous than ‘recombination’. Recombination often refers to all possible editing operations that ever occur. For example, sometimes a segment of the string is inverted, but this is rather an error, like a mutation, and as such it may be useful, but most often it is detrimental.

  19. 19.

    One may suggest that a photon is not just a point, but rather a wave packet, and a part of this packet may touch mirror M 1 while the center of the packet will be at M 0. But this explanation also does not work, since there is no restriction on the distances in the interferometer. Even if the distances were cosmic, it would behave exactly the same way.

  20. 20.

    We could use alphabets larger than two, but it would be just an unnecessary complication.

  21. 21.

    We will not need bra vectors.

  22. 22.

    We cannot see the superposition because the measuring apparatus can produce only one of k possible values. But we can set the apparatus differently and then what was previously a superposition may become a basis state. In particular, we can detect in the new setting what was originally a superposition.

  23. 23.

    Here is an intuitive explanation. If r does not divide M, the p-gons are not quite regular—one edge is shorter, thus we only know that \(\frac{M}{p}<r<\frac{M}{p-1}\). But if M>2r 2, this interval is shorter than 1, hence r is determined uniquely.

  24. 24.

    An attentive reader may have noticed that incompressibility is not invariant with respect to different choices of the universal Turing machine. An incompressible string of length n for one machine may have Kolmogorov complexity nc for a different machine, where c is a nonnegative constant (depending only on the pair of machines). But if n is very large with respect to c, the difference between having Kolmogorov complexity n or nc is not essential.

  25. 25.

    Using a fixed set of axioms.

  26. 26.

    Here I exceptionally deviate from the convention that theories in this book are always recursively axiomatizable.

References

  1. Ajtai, M.: \(\varSigma_{1}^{1}\) formulae on finite structures. Ann. Pure Appl. Log. 24, 1–48 (1983)

    Article  MathSciNet  MATH  Google Scholar 

  2. Agrawal, M., Kayal, N., Saxena, N.: PRIMES is in P. Ann. Math. 160(2), 781–793 (2004)

    Article  MathSciNet  MATH  Google Scholar 

  3. Arora, S., Lund, C., Motwani, R., Sudan, M., Szegedy, M.: Proof verification and the hardness of approximation problems. J. ACM 45(3), 501–555 (1998)

    Article  MathSciNet  MATH  Google Scholar 

  4. Arora, S., Safra, S.: Probabilistic checking of proofs: A new characterization of NP. J. ACM 45(1), 70–122 (1998)

    Article  MathSciNet  MATH  Google Scholar 

  5. Babai, L.: Trading group theory for randomness. In: Proc. 17th ACM Symp. on Theory of Computing, pp. 421–429 (1985)

    Google Scholar 

  6. Baker, T.P., Gill, J., Solovay, R.: Relativizations of the P = ? NP question. SIAM J. Comput. 4(4), 431–442 (1975)

    Article  MathSciNet  MATH  Google Scholar 

  7. Bennett, C.H.: Logical reversibility of computation. IBM J. Res. Dev. 17(6), 525–532 (1973)

    Article  MATH  Google Scholar 

  8. Bennett, C.H., Wiesner, S.J.: Communication via one- and two-particle operators on Einstein-Podolsky-Rosen states. Phys. Rev. Lett. 69, 2881–2884 (1992)

    Article  MathSciNet  MATH  Google Scholar 

  9. Blum, L., Shub, M., Smale, S.: On a theory of computation and complexity over the real numbers: NP-completeness, recursive functions and universal machines. Bull. Am. Math. Soc. 21, 1–46 (1989)

    Article  MathSciNet  MATH  Google Scholar 

  10. Blum, L., Cucker, F., Shub, M., Smale, S.: Complexity and Real Computation. Springer, Berlin (1997)

    MATH  Google Scholar 

  11. Blum, N.: A boolean function requiring 3n network size. Theor. Comput. Sci. 28, 337–345 (1984)

    Article  MATH  Google Scholar 

  12. Chaitin, G.J.: On the simplicity and speed of programs for computing infinite sets of natural numbers. J. ACM 16(3), 407–422 (1969)

    Article  MathSciNet  MATH  Google Scholar 

  13. Cheng, Q.: Straight-line programs and torsion points on elliptic curves. Comput. Complex. 12(1), 150–161 (2003)

    MATH  Google Scholar 

  14. Cook, S.A.: The complexity of theorem proving procedures. In: Proc. 3rd Annual ACM Symposium on Theory of Computing, pp. 151–158 (1971)

    Chapter  Google Scholar 

  15. Elitzur, A.C., Vaidman, L.: Quantum mechanical interaction-free measurements. Found. Phys. 23, 987–997 (1993)

    Article  Google Scholar 

  16. Erdős, P.: Some remarks on the theory of graphs. Bull. Am. Math. Soc. 53, 292–294 (1947)

    Article  Google Scholar 

  17. Feynman, R.: Simulating physics with computers. Int. J. Theor. Phys. 21(6–7), 467 (1982)

    Article  MathSciNet  Google Scholar 

  18. Furst, M.L., Saxe, J.B., Sipser, M.: Parity, circuits, and the polynomial-time hierarchy. Math. Syst. Theory 17(1), 13–27 (1984)

    Article  MathSciNet  MATH  Google Scholar 

  19. Gál, A., Hansen, K.A., Koucký, M., Pudlák, P., Viola, E.: Tight bounds on computing error-correcting codes by bounded-depth circuits with arbitrary gates. In: Proc. STOC 2012, pp. 479–494 (2012)

    Google Scholar 

  20. Gödel, K. (ed.): Collected Works: Volume V. Correspondence, H.-Z. Feferman, S., Dawson, J.W., Goldfarb, W., Parsons, C., Sieg, W. (eds.). Oxford University Press, London (2003)

    MATH  Google Scholar 

  21. Grover, L.K.: A fast quantum mechanical algorithm for database search. In: Proc. 28th Annual ACM Symposium on the Theory of Computing, pp. 212–218 (1996)

    Google Scholar 

  22. Harrow, A.W., Hassidim, A., Lloyd, S.: Quantum algorithm for linear systems of equations. Phys. Rev. Lett. 103, 150502 (2009)

    Article  MathSciNet  Google Scholar 

  23. Hartmanis, J., Stearns, R.E.: On the computational complexity of algorithms. Trans. Am. Math. Soc. 117, 285–306 (1965)

    Article  MathSciNet  MATH  Google Scholar 

  24. Hilbert, D.: Über die Endlichkeit des Invariantensystems für binären Grundformen. Math. Ann. 33, 223–226 (1889)

    Article  MathSciNet  MATH  Google Scholar 

  25. Hopcroft, J., Paul, W.J., Valiant, L.G.: On time vs. space. J. ACM 24(2), 332–337 (1977)

    Article  MathSciNet  MATH  Google Scholar 

  26. Impagliazzo, R., Wigderson, A.: P = BPP unless E has subexponential circuits: Derandomizing the XOR lemma. In: Proc. 29th STOC, pp. 220–229 (1997)

    Google Scholar 

  27. Jockusch, C.G., Soare, R.I.: \(\varPi^{0}_{1}\) classes and degrees of theories. Trans. Am. Math. Soc. 173, 33–56 (1972)

    MathSciNet  MATH  Google Scholar 

  28. Kabanets, V., Impagliazzo, R.: Derandomizing polynomial identity tests means proving circuit lower bounds. Comput. Complex. 13(1–2), 1–46 (2004)

    Article  MathSciNet  MATH  Google Scholar 

  29. Koblitz, N.: A Course in Number Theory and Cryptography. Springer, New York (1987)

    Book  MATH  Google Scholar 

  30. Kollár, J., Rónyai, L., Szabó, T.: Norm-graphs and bipartite Turán numbers. Combinatorica 16(3), 399–406 (1996)

    Article  MathSciNet  MATH  Google Scholar 

  31. Kolmogorov, A.: On tables of random numbers. Sankhya, Ser. A 25, 369–375 (1963)

    MathSciNet  MATH  Google Scholar 

  32. Kuperberg, G.: A subexponential-time quantum algorithm for the dihedral hidden subgroup problem. SIAM J. Comput. 35(1), 170–188 (2005)

    Article  MathSciNet  MATH  Google Scholar 

  33. Ladner, R.E.: On the structure of polynomial time reducibility. J. ACM 22, 155–171 (1975)

    Article  MathSciNet  MATH  Google Scholar 

  34. Levin, L.: Universal’nye perebornye zadachi. Probl. Inf. Transm. 9(3), 265–266 (1973). (Russian)

    Google Scholar 

  35. Margulis, G.A.: Explicit constructions of expanders. Probl. Pereda. Inf. 9(4), 71–80 (1973)

    MathSciNet  MATH  Google Scholar 

  36. Miller, G.L.: Riemann’s hypothesis and tests for primality. J. Comput. Syst. Sci. 13(3), 300–317 (1976)

    Article  MATH  Google Scholar 

  37. Mulmuley, K., Sohoni, M.: Geometric complexity theory I: An approach to the P vs. NP and related problems. SIAM J. Comput. 31(2), 496–526 (2001)

    Article  MathSciNet  MATH  Google Scholar 

  38. Nisan, N., Wigderson, A.: Hardness vs. randomness. J. Comput. Syst. Sci. 49(2), 149–167 (1994)

    Article  MathSciNet  MATH  Google Scholar 

  39. Pudlák, P.: Complexity theory and genetics: The computational power of crossing over. Inf. Comput. 171, 201–223 (2001)

    Article  MATH  Google Scholar 

  40. Pudlák, P.: Quantum deduction rules. Ann. Pure Appl. Log. 157, 16–29 (2009)

    Article  MATH  Google Scholar 

  41. Rabin, M.O.: Digital signatures and public-key functions as intractable as factorization. MIT Laboratory of Computer Science Technical Report 212, (1979).

    Google Scholar 

  42. Razborov, A.: Lower bounds for the monotone complexity of some boolean functions. Dokl. Akad. Nauk SSSR 281(4), 798–801 (1985). (In Russian; English translation in: Sov. Math. Dokl. 31, 354–357 (1985))

    MathSciNet  Google Scholar 

  43. Razborov, A.: Lower bounds on the size of bounded-depth networks over a complete basis with logical addition. Mat. Zametki 41(4), 598–607 (1987). (In Russian; English translation in: Math. Notes Acad. Sci. USSR 41(4), 333–338 (1987))

    MathSciNet  Google Scholar 

  44. Razborov, A.: On the method of approximation. In: Proc. of the 21st ACM STOC, pp. 169–176 (1989)

    Google Scholar 

  45. Razborov, A., Rudich, S.: Natural proofs. J. Comput. Syst. Sci. 55(1), 24–35 (1997)

    Article  MathSciNet  MATH  Google Scholar 

  46. Reisch, S.: Hex ist PSPACE-vollstn̈dig (Hex is PSPACE-complete). Acta Inform. 15, 167–191 (1981)

    Article  MathSciNet  MATH  Google Scholar 

  47. Rissanen, J.: Modeling by the shortest data description. Automatica 14, 465–471 (1978)

    Article  MATH  Google Scholar 

  48. Rivest, R., Shamir, A., Adleman, L.: A method for obtaining digital signatures and public-key cryptosystems. Commun. ACM 21(2), 120–126 (1978)

    Article  MathSciNet  MATH  Google Scholar 

  49. Savitch, W.J., Stimson, M.J.: Time bounded random access machines with parallel processing. J. ACM 26(1), 103–118 (1979)

    Article  MathSciNet  MATH  Google Scholar 

  50. Schönhage, A., Strassen V, V.: Schnelle multiplikation grosser Zahlen. Computing 7, 281–292 (1971)

    Article  MATH  Google Scholar 

  51. Schwartz, J.: Fast probabilistic algorithms for verification of polynomial identities. J. ACM 27, 701–717 (1980)

    Article  MATH  Google Scholar 

  52. Shannon, C.E.: The synthesis of two-terminal switching circuits. Bell Syst. Tech. J. 28, 59–98 (1949)

    MathSciNet  Google Scholar 

  53. Shor, P.W.: Polynomial-time algorithms for prime factorization and discrete logarithms on a quantum computer. SIAM J. Comput. 26(5), 1484–1509 (1997)

    Article  MathSciNet  MATH  Google Scholar 

  54. Solomonoff, R.: A Preliminary Report on a General Theory of Inductive Inference. Report V-131, Cambridge, Ma., Zator Co. (1960)

    Google Scholar 

  55. Solovay, R.M., Strassen, V.: A fast Monte-Carlo test for primality. SIAM J. Comput. 6(1), 84–85 (1977)

    Article  MathSciNet  MATH  Google Scholar 

  56. Strassen, V.: Gaussian elimination is not optimal. Numer. Math. 13, 354–356 (1969)

    Article  MathSciNet  MATH  Google Scholar 

  57. Tsfasman, M.A., Vlăduţ, S.G., Zink T, T.: Modular curves, Shimura curves and Goppa codes, better than Varshamov-Gilbert bound. Math. Nachr. 104, 13–28 (1982)

    Google Scholar 

  58. Uhlig, D.: On the synthesis of self-correcting schemes from functional elements with a small number of reliable elements. Mat. Zametki 15(6), 937–944 (1974)

    MathSciNet  Google Scholar 

  59. Valiant, L.: The complexity of computing permanent. Theor. Comput. Sci. 8, 189–201 (1979)

    Article  MathSciNet  MATH  Google Scholar 

  60. Zippel, R.E.: Probabilistic algorithms for sparse polynomials. In: Proc. EUROSAM’79. Springer Lecture Notes in Computer Science, vol. 72, pp. 216–226 (1979)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Main Points of the Chapter

Main Points of the Chapter

  • Complexity is an inherent property of computational problems. We distinguish time complexity, space complexity, and other types.

  • A number of fundamental problems in computational complexity is still open; the main one is whether P=NP.

  • The use of random bits helps us compute solutions of some problems faster.

  • Pseudorandomness can replace true randomness in some computations, and it is an essential concept in cryptography.

  • To prove that secure cryptography is possible we would need to know that some conjectures stronger than PNP are true; namely, that one-way functions exist, or equivalently that pseudorandom generators exist.

  • Some functions can be computed faster by splitting the task into many subtasks that can be computed in parallel.

  • There are strong indications (but, again, we are not able to prove it formally) that quantum computers can solve some problems, e.g., factoring integers, much faster than classical ones. When quantum computers are built, we will be able to compute tasks that are not feasible on classical computers using algorithms that we know.

  • Kolmogorov complexity of a string—the minimal length of a description of the string—is a useful theoretical concept. In particular, it enables us to define incompressible strings.

Rights and permissions

Reprints and permissions

Copyright information

© 2013 Springer International Publishing Switzerland

About this chapter

Cite this chapter

Pudlák, P. (2013). The Complexity of Computations. In: Logical Foundations of Mathematics and Computational Complexity. Springer Monographs in Mathematics. Springer, Heidelberg. https://doi.org/10.1007/978-3-319-00119-7_5

Download citation

Publish with us

Policies and ethics