In computational complexity theory, a **computational resource** is a resource used by some computational model in the solution of computational problems. The simplest computational resources are computation time, the number of steps necessary to solve a problem, and memory space, the amount of storage needed while solving the problem, but many more complicated resources have been defined. In computer science, computational complexity theory is the branch of the theory of computation that studies the resources, or cost, of the computation required to solve a given problem. ...
An abstract machine, also called an abstract computer, is a theoretical model of a computer hardware or software system. ...
The terms storage (U.K.) or memory (U.S.) refer to the parts of a digital computer that retain physical state (data) for some interval of time, possibly even after electrical power to the computer is turned off. ...
A computational problem is generally defined in terms of its action on any valid input; examples of problems might be "given an integer *n*, determine whether *n* is prime", or "given two numbers *x* and *y*, calculate the product *x***y*". As the inputs get bigger, the amount of computational resources needed to solve a problem will increase. Thus, the resources needed to solve a problem are described in terms of asymptotic analysis, by identifying the resources as a function of the length or size of the input. In mathematics and applications, particularly the analysis of algorithms, asymptotic analysis is a method of classifying limiting behaviour, by concentrating on some trend. ...
Computational resources are useful because we can study which problems can be computed in a certain amount of each computational resource. In this way, we can determine whether algorithms for solving the problem are optimal. The set of all of the computational problems that can be solved using a certain amount of a certain computational resource is a complexity class, and relationships between different complexity classes are one of the most important topics in complexity theory. Flowcharts are often used to represent algorithms. ...
In computational complexity theory, a complexity class is a set of problems of related complexity. ...
## See also
Category:Computational resources |