Skip to main content

Time in the Analysis of Algorithms

  • Chapter
  • First Online:
  • 1235 Accesses

Abstract

In this chapter, we give a concise overview of the fundamental models and results of the classic theory of computation and algorithms. In accordance with the general theme of the book, the overview highlights the characteristics of time in the traditional descriptions of software and computational processes. The chapter starts with the classic Turing machine model and with the very abstract notion of time used to measure the computational complexity of Turing machines, on which the definition of complexity classes rests. It continues with the presentation of Random Access Machines (RAM), a computational model still abstract but much closer to the architecture of real computers than the simple Turing machine. Finally, it discusses models of computation with randomized behavior, such as Markov chains and probabilistic Turing machines.

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

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD   54.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

Learn about institutional subscriptions

Notes

  1. 1.

    A rigorous definition should include some regularity constraints on T(n) and S(n) as functions from \(\mathrm{I}\!\mathbb{N}\) to \(\mathrm{I}\!\mathbb{N}\); see the bibliographic remarks for references with all the omitted details.

  2. 2.

    Merely quadratic, under “reasonable” hypotheses.

References

  1. Aaronson, S.: Limits on efficient computation in the physical world. Ph.D. thesis, University of California, Berkeley (2005)

    Google Scholar 

  2. Aaronson, S.: NP-complete problems and physical reality. SIGACT News 36(1), 30–52 (2005). Complexity Theory Column

    Google Scholar 

  3. Aaronson, S.: Reasons to believe. http://www.scottaaronson.com/blog/?p=122 (2006)

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

    Google Scholar 

  5. Aho, A.V., Hopcroft, J.E., Ullman, J.D.: Data Structures and Algorithms. Addison-Wesley, Reading (1983)

    Google Scholar 

  6. Ajmone Marsan, M.: Stochastic petri nets: an elementary introduction. In: Rozenberg, G. (ed.) Advances in Petri Nets. Lecture Notes in Computer Science, No. 424, pp. 1–29. Springer, Berlin (1989)

    Google Scholar 

  7. Anderson, J.A.: Automata Theory with Modern Applications. Cambridge University Press, Cambridge (2006)

    Google Scholar 

  8. Arora, S., Barak, B.: Computational Complexity: A Modern Approach. Cambridge University Press, Cambridge (2009)

    Google Scholar 

  9. Ausiello, G., Crescenzi, P., Gambosi, G., Kann, V., Marchetti-Spaccamela, A., Protasi, M.: Complexity and Approximation. Combinatorial Optimization Problems and Their Approximability Properties. Springer, New York (1999)

    Google Scholar 

  10. Bernstein, E., Vazirani, U.: Quantum complexity theory. SIAM J. Comput. 26, 1411–1437 (1997)

    Google Scholar 

  11. Blum, L., Cucker, F., Shub, M., Smale, S.: Complexity and Real Computation. Springer, New York (1997)

    Google Scholar 

  12. Bovet, D.P., Crescenzi, P.: Introduction to the Theory of Complexity. Prentice Hall, New York (1994)

    Google Scholar 

  13. Cohn, H., Kleinberg, R.D., Szegedy, B., Umans, C.: Group-theoretic algorithms for matrix multiplication. In: FOCS, pp. 379–388. IEEE Computer Society, Los Alamitos (2005)

    Google Scholar 

  14. Cook, S.A.: The complexity of theorem-proving procedures. In: STOC, pp. 151–158. ACM, New York (1971)

    Google Scholar 

  15. Coppersmith, D., Winograd, S.: Matrix multiplication via arithmetic progressions. J. Symbolic Comput. 9(3), 251–280 (1990)

    Google Scholar 

  16. Cormen, T.H., Leiserson, C.E., Rivest, R.L., Stein, C.: Introduction to Algorithms, 3rd edn. MIT, Cambridge (2009)

    Google Scholar 

  17. Crescenzi, P., Kann, V.: A compendium of NP optimization problems. http://www.nada.kth.se/~viggo/problemlist/compendium.html (2005)

  18. Cutland, N.: Computability: An Introduction to Recursive Function Theory. Cambridge University Press, Cambridge (1980)

    Google Scholar 

  19. Deutsch, D.: Quantum theory, the Church-Turing principle and the universal quantum computer. Proc. R. Soc. Lond. A 400, 97–117 (1985)

    Google Scholar 

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

    Google Scholar 

  21. Fortnow, L.: Kurt Gödel (1906–1978). http://blog.computationalcomplexity.org/2006/04/kurt-gdel-1906-1978.html (2006)

  22. Fortnow, L., Homer, S.: A short history of computational complexity. Bull. Eur. Assoc. Theor. Comput. Sci. 80, 95–133 (2003)

    Google Scholar 

  23. Garey, M.R., Johnson, D.S.: Computers and Intractability: A Guide to the Theory of NP-Completeness. Freeman, San Francisco (1979)

    Google Scholar 

  24. Gasarch, W.I.: The P=?NP poll. SIGACT News 33(2), 34–47 (2002)

    Google Scholar 

  25. Goldreich, O.: Computational Complexity: A Conceptual Perspective. Cambridge University Press, Cambridge (2008)

    Google Scholar 

  26. Graham, R.L., Knuth, D.E., Patashnik, O.: Concrete Mathematics: A foundation for computer science. Addison-Wesley, Reading (1994)

    Google Scholar 

  27. Häggström, O.: Finite Markov Chains and Algorithmic Applications. Cambridge University Press, Cambridge (2002)

    Google Scholar 

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

    Google Scholar 

  29. Hofstadter, D.R.: Gödel, Escher, Bach: An Eternal Golden Braid. Basic Books, New York (1999)

    Google Scholar 

  30. Hopcroft, J.E., Motwani, R., Ullman, J.D.: Introduction to Automata Theory, Languages, and Computation, 3rd edn. Addison-Wesley, Boston (2006)

    Google Scholar 

  31. Ito, M.: Algebraic Theory of Automata and Languages. World Scientific Publishing Company, Singapore (2004)

    Google Scholar 

  32. Jones, N.D.: Computability and Complexity: From a Programming Perspective. MIT, Cambridge (1997)

    Google Scholar 

  33. Karp, R.M.: Reducibility among combinatorial problems. In: Thatcher, J.W., Miller, R.E. (eds.) Complexity of Computer Computations, pp. 85–103. Plenum Press, New York (1972)

    Google Scholar 

  34. Kaye, P., Laflamme, R., Mosca, M.: An Introduction to Quantum Computing. Oxford University Press, Oxford (2007)

    Google Scholar 

  35. Khoussainov, B., Nerode, A.: Automata Theory and Its Applications. Birkhäuser, Boston (2001)

    Google Scholar 

  36. Kitaev, A.Y., Shen, A.H., Vyalyi, M.N.: Classical and Quantum Computation. American Mathematical Society, Providence (2002)

    Google Scholar 

  37. Kleinberg, J., Tardos, É.: Algorithm Design. Addison-Wesley, Boston (2005)

    Google Scholar 

  38. Knuth, D.E.: Big Omicron and big Omega and big Theta. ACM SIGACT News 8, 18–24 (1976)

    Google Scholar 

  39. Knuth, D.E.: The Art of Computer Programming (Volumes 1–4A). Addison-Wesley, Boston/London (2011)

    Google Scholar 

  40. Kozen, D.C.: Theory of Computation. Springer, London (2006)

    Google Scholar 

  41. Lawson, M.V.: Finite Automata. Chapman and Hall/CRC, Boca Raton (2003)

    Google Scholar 

  42. Levin, L.A.: Universal sorting problems. Probl. Inf. Transm. 9, 265–266 (1973)

    Google Scholar 

  43. Lewis, H.R., Papadimitriou, C.H.: Elements of the Theory of Computation, 2nd edn. Prentice-Hall, Upper Saddle River (1997)

    Google Scholar 

  44. Linz, P.: An Introduction to Formal Languages and Automata, 4th edn. Jones and Bartlett, Sudbury (2006)

    Google Scholar 

  45. Mandrioli, D., Ghezzi, C.: Theoretical Foundations of Computer Sciences. Wiley, New York (1987)

    Google Scholar 

  46. Manna, Z.: Mathematical Theory of Computation. Dover, Mineola (2003)

    Google Scholar 

  47. Markov, A.A.: Extension of the limit theorems of probability theory to a sum of variables connected in a chain. In: Howard, R. (ed.) Dynamic Probabilistic Systems. Markov Chains (Appendix B), vol. 1. Wiley, New York (1971)

    Google Scholar 

  48. Mehlhorn, K., Sanders, P.: Algorithms and Data Structures: The Basic Toolbox. Springer, Berlin (2008)

    Google Scholar 

  49. Mermin, N.D.: Quantum Computer Science: An Introduction. Cambridge University Press, Cambridge (2007)

    Google Scholar 

  50. Mitzenmacher, M., Upfal, E.: Probability and Computing: Randomized Algorithms and Probabilistic Analysis. Cambridge University Press, Cambridge (2005)

    Google Scholar 

  51. Motwani, R., Raghavan, P.: Randomized Algorithms. Cambridge University Press, Cambridge/New York (1995)

    Google Scholar 

  52. Nielsen, M.A., Chuang, I.L.: Quantum Computation and Quantum Information. Cambridge University Press, Cambridge (2000)

    Google Scholar 

  53. Odifreddi, P.: Classical Recursion Theory. North Holland, Amsterdam (1999)

    Google Scholar 

  54. Papadimitriou, C.H.: Computational Complexity. Addison-Wesley, Reading (1993)

    Google Scholar 

  55. Papadimitriou, C.H., Steiglitz, K.: Combinatorial Optimization: Algorithms and Complexity. Dover, Mineola (1998)

    Google Scholar 

  56. Perrin, D., Pin, J.É.: Infinite Words. Pure and Applied Mathematics, vol. 141. Elsevier, Amsterdam (2004)

    Google Scholar 

  57. Rabin, M.O.: Probabilistic algorithm for testing primality. J. Number Theory 12, 128–138 (1980)

    Google Scholar 

  58. Robinson, S.: Toward and optimal algorithm for matrix multiplication. SIAM News 38(9), 354–356 (2005)

    Google Scholar 

  59. Rogers Jr., H.: Theory of Recursive Functions and Effective Computability. MIT, Cambridge (1987)

    Google Scholar 

  60. Rosenberg, A.L.: The Pillars of Computation Theory. Springer, Berlin (2009)

    Google Scholar 

  61. Ross, S.M.: Stochastic Processes. Wiley, New York (1995)

    Google Scholar 

  62. Sakarovitch, J.: Elements of Automata Theory. Cambridge University Press, Cambridge (2009)

    Google Scholar 

  63. Sedgewick, R., Wayne, K.: Algorithms, 4th edn. Addison-Wesley, Upper Saddle River (2011)

    Google Scholar 

  64. Shallit, J.: A Second Course in Formal Languages and Automata Theory. Cambridge University Press, Cambridge (2008)

    Google Scholar 

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

    Google Scholar 

  66. Simon, M.: Automata Theory. World Scientific Publishing Company, Singapore (1999)

    Google Scholar 

  67. Sipser, M.: The history and status of the P versus NP question. In: STOC, pp. 603–618. ACM, New York (1992)

    Google Scholar 

  68. Sipser, M.: Introduction to the Theory of Computation, 2nd edn. Course Technology, Boston (2005)

    Google Scholar 

  69. Skiena, S.S.: The Algorithm Design Manual, 2nd edn. Springer, New York (2008)

    Google Scholar 

  70. Slot, C.F., van Emde Boas, P.: On tape versus core; an application of space efficient perfect hash functions to the invariance of space. In: STOC, pp. 391–400. ACM, New York (1984)

    Google Scholar 

  71. Soare, R.I.: Computability and recursion. Bull. Symb. Logic 2, 284–321 (1996)

    Google Scholar 

  72. Soare, R.I.: Recursively Enumerable Sets and Degrees, 2nd edn. Springer, Berlin (1999)

    Google Scholar 

  73. Soare, R.I.: Turing oracle machines, online computing, and three displacements in computability theory. Ann. Pure Appl. Logic 160, 368–399 (2009)

    Google Scholar 

  74. Solovay, R., Strassen, V.: Erratum: A fast Monte-Carlo test for primality. SIAM J. Comput. 7(1), 118 (1978)

    Google Scholar 

  75. Stothers, A.J.: On the complexity of matrix multiplication. Ph.D. thesis, University of Edinburgh (2010)

    Google Scholar 

  76. Strassen, V.: Gaussian elimination is not optimal. Numer. Math. 14(3), 354–356 (1969)

    Google Scholar 

  77. Stroock, D.W.: An Introduction to Markov Processes. Springer, Berlin (2005)

    Google Scholar 

  78. Turing, A.M.: On computable numbers, with an application to the Entscheidungsproblem. Proc. Lond. Math. Soc. 42, 230–265 (1936). Corrections in [79]

    Google Scholar 

  79. Turing, A.M.: A correction. Proc. Lond. Math. Soc. 43, 544–546 (1937)

    Google Scholar 

  80. van Emde Boas, P.: Machine models and simulations. In: van Leeuwen, J. (ed.) The Handbook of Theoretical Computer Science. Algorithms and Complexity, vol. I, pp. 1–61. MIT, Amsterdam (1990)

    Google Scholar 

  81. Vassilevska Williams, V.: Multiplying matrices faster than Coppersmith-Winograd. In: Karloff, H.J., Pitassi, T. (eds.) Proceedings of the 44th Symposium on Theory of Computing Conference, STOC 2012, New York, 19–22, May 2012, pp. 887–898. ACM, New York (2012)

    Google Scholar 

  82. Vazirani, V.V.: Approximation Algorithms. Springer, Berlin (2001)

    Google Scholar 

  83. von Neumann, J.: First draft of a report on the EDVAC. http://qss.stanford.edu/~godfrey/vonNeumann/vnedvac.pdf (1945)

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

Copyright information

© 2012 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Furia, C.A., Mandrioli, D., Morzenti, A., Rossi, M. (2012). Time in the Analysis of Algorithms. In: Modeling Time in Computing. Monographs in Theoretical Computer Science. An EATCS Series. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-32332-4_6

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-32332-4_6

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-32331-7

  • Online ISBN: 978-3-642-32332-4

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics