Abstract
Among the problems that can be solved in principle by Turing machines, there exists a problem that requires one to run a modern supercomputer, say, for the life time of the earth. This fact naturally leads us to classify real-world problems into two types: tractable problems, which can be computed in a feasible amount of time, and intractable problems, which cannot be computed in a feasible amount of time. In order to classify problems we employ a Turing machine as a computational model, because it turns out that the time required to run a typical computer is somehow related to that required to run an equivalent Turing machine. First, we introduce a way of measuring the time required to compute problems. The class of tractable problems, denoted by P, consists of problems that can be computed in polynomial time on a Turing machine in terms of the measure. On the other hand, we often encounter in practice a problem that can be solved somehow by checking all the possible certificates for the problem instance. Finally, we introduce the other type of problems such that, once an appropriate certificate is given, checking the validity can be done in polynomial time. The class of this type of problems is denoted by NP, which includes P by definition.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
Copyright information
© 2011 Springer-Verlag London Limited
About this chapter
Cite this chapter
Maruoka, A. (2011). Computational Complexity Based on Turing Machines. In: Concise Guide to Computation Theory. Springer, London. https://doi.org/10.1007/978-0-85729-535-4_8
Download citation
DOI: https://doi.org/10.1007/978-0-85729-535-4_8
Publisher Name: Springer, London
Print ISBN: 978-0-85729-534-7
Online ISBN: 978-0-85729-535-4
eBook Packages: Computer ScienceComputer Science (R0)