In theoretical computer science and mathematics, the theory of computation is the branch that deals with whether and how efficiently problems can be solved on a model of computation, using an algorithm. The field is divided into three major branches: automata theory, computability theory and computational complexity theory.
In order to perform a rigorous study of computation, computer scientists work with a mathematical abstraction of computers called a model of computation. There are several models in use, but the most commonly examined is the Turing machine. Computer scientists study the Turing machine because it is simple to formulate, can be analyzed and used to prove results, and because it represents what many consider the most powerful possible "reasonable" model of computation (see Church–Turing thesis). It might seem that the potentially infinite memory capacity is an unrealizable attribute, but any decidable problem solved by a Turing machine will always require only a finite amount of memory. So in principle, any problem that can be solved (decided) by a Turing machine can be solved by a computer that has a bounded amount of memory.
The theory of computation can be considered the creation of models of all kinds in the field of computer science. Therefore mathematics and logic are used. In the last century it became an independent academic discipline and was separated from mathematics.
Some pioneers of the theory of computation were Alonzo Church, Alan Turing, Stephen Kleene, John von Neumann and Claude Shannon.
Automata theory is the study of abstract machines (or more appropriately, abstract 'mathematical' machines or systems) and the computational problems that can be solved using these machines. These abstract machines are called automata. Automata comes from the Greek word (Αυτόματα)which means that something is doing something by itself. Automata theory is also closely related to formal language theory, as the automata are often classified by the class of formal languages they are able to recognize. An automaton can be a finite representation of a formal language that may be an infinite set.
Computability theory deals primarily with the question of the extent to which a problem is solvable on a computer. The statement that the halting problem cannot be solved by a Turing machine is one of the most important results in computability theory, as it is an example of a concrete problem that is both easy to formulate and impossible to solve using a Turing machine. Much of computability theory builds on the halting problem result.
Another important step in computability theory was Rice's theorem, which states that for all non-trivial properties of partial functions, it is undecidable whether a Turing machine computes a partial function with that property.
Computability theory is closely related to the branch of mathematical logic called recursion theory, which removes the restriction of studying only models of computation which are reducible to the Turing model. Many mathematicians and computational theorists who study recursion theory will refer to it as computability theory.
Computational complexity theory
Complexity theory considers not only whether a problem can be solved at all on a computer, but also how efficiently the problem can be solved. Two major aspects are considered: time complexity and space complexity, which are respectively how many steps does it take to perform a computation, and how much memory is required to perform that computation.
In order to analyze how much time and space a given algorithm requires, computer scientists express the time or space required to solve the problem as a function of the size of the input problem. For example, finding a particular number in a long list of numbers becomes harder as the list of numbers grows larger. If we say there are n numbers in the list, then if the list is not sorted or indexed in any way we may have to look at every number in order to find the number we're seeking. We thus say that in order to solve this problem, the computer needs to perform a number of steps that grows linearly in the size of the problem.
To simplify this problem, computer scientists have adopted Big O notation, which allows functions to be compared in a way that ensures that particular aspects of a machine's construction do not need to be considered, but rather only the asymptotic behavior as problems become large. So in our previous example we might say that the problem requires steps to solve.
Perhaps the most important open problem in all of computer science is the question of whether a certain broad class of problems denoted NP can be solved efficiently. This is discussed further at Complexity classes P and NP.
Er Neha Patidar [ BE ]
Software Engineer / Webmaster
On Line Assistence :
Gtalk : nehap.AeroSoft@gmail.com
Y! Messenger : nehap.AeroSoft@yahoo.com
Rediff Bol : nehap.AeroSoft@rediffmail.com
MSN : nehap.AeroSoft@hotmail.com
KPC Systems & Power Solutions, the most prestigious and progressive trader of reliable andthe batteries for all automobiles, UPS, Inverters, Industrial and other .
Airline Transport Pilot License - information on flight school training, studying for an aviation degree, military flying and all the certificates including PPL, CPL ...
NEW FLIGHT SERVICES ISO 9001:2000 CERTIFIED AVIATION ORGANIZATION . Best Pilot training in Philippines with Us
AeroJobMark , Best Pilot Jobs ,Airplane,Aviation, jobs, Airline, Pilot, employment
Everybody has dreamt once of becoming a pilot during their childhood and few are able to make it possible. Becoming a Pilot takes lot of pain and labour, as it is one
AeroSoft Corp, Aviation Company, AeroSoft Aviation SEO Company, information of aerosoft seo company, information of aerosoft aviation seo company
www.a-1soft.com/A-1Soft Corp, Pioneer in Virtual Travels And Tourism Market in Asia, Travels And Tourism Company, A-1Soft Travels And Tourism SEO Company, information of ...
golgapppa.com/ShareAsias Best b2b portal, GolGappa, Pani Puri, Pani Poori,recipes,instructions, ingredients, golgapppa.
www.asiaticair.co.in/ShareWel come To Asiatic Air | Pilot Training Services, helicopter pilot training in india, free pilot training in india, pilot training in india fees,commercial pilot in india, ...
aerosoftseo.com/best-study-material-mca/ShareMCA | BE |BCA| MCA notes | MCA study Material| MCA books | Best MCA college |Top Colleges of India| | Notes |Notes for mca students |MCA Syllabus| MCA ...