NSPACE
   HOME

TheInfoList



OR:

In
computational complexity theory In theoretical computer science and mathematics, computational complexity theory focuses on classifying computational problems according to their resource usage, and relating these classes to each other. A computational problem is a task solved by ...
, non-deterministic space or NSPACE is the
computational resource In computational complexity theory, a computational resource is a resource used by some computational models in the solution of computational problems. The simplest computational resources are computation time, the number of steps necessary to s ...
describing the memory space for a
non-deterministic Turing machine In theoretical computer science, a nondeterministic Turing machine (NTM) is a theoretical model of computation whose governing rules specify more than one possible action when in some given situations. That is, an NTM's next state is ''not'' comp ...
. It is the non-deterministic counterpart of
DSPACE DSpace is an open source repository software package typically used for creating open access repositories for scholarly and/or published digital content. While DSpace shares some feature overlap with content management systems and document managem ...
.


Complexity classes

The measure NSPACE is used to define the
complexity class In computational complexity theory, a complexity class is a set of computational problems of related resource-based complexity. The two most commonly analyzed resources are time and memory. In general, a complexity class is defined in terms of ...
whose solutions can be determined by a
non-deterministic Turing machine In theoretical computer science, a nondeterministic Turing machine (NTM) is a theoretical model of computation whose governing rules specify more than one possible action when in some given situations. That is, an NTM's next state is ''not'' comp ...
. The
complexity class In computational complexity theory, a complexity class is a set of computational problems of related resource-based complexity. The two most commonly analyzed resources are time and memory. In general, a complexity class is defined in terms of ...
NSPACE(''f''(''n'')) is the set of
decision problem In computability theory and computational complexity theory, a decision problem is a computational problem that can be posed as a yes–no question of the input values. An example of a decision problem is deciding by means of an algorithm whethe ...
s that can be solved by a
non-deterministic Turing machine In theoretical computer science, a nondeterministic Turing machine (NTM) is a theoretical model of computation whose governing rules specify more than one possible action when in some given situations. That is, an NTM's next state is ''not'' comp ...
, ''M'', using space ''O''(''f''(''n'')), where ''n'' is the length of the input. Several important complexity classes can be defined in terms of ''NSPACE''. These include: *
REG Reg or REG may refer to: * Reginald (disambiguation) * Reg or desert pavement * Raising for Effective Giving, a charity * Random event generator (parapsychology) * Raptor Education Group * Regal Entertainment Group * Regular language * .reg MS Wi ...
= DSPACE(''O''(1)) = NSPACE(''O''(1)), where REG is the class of
regular language In theoretical computer science and formal language theory, a regular language (also called a rational language) is a formal language that can be defined by a regular expression, in the strict sense in theoretical computer science (as opposed to ...
s (nondeterminism does not add power in constant space). * NL = NSPACE(''O''(log ''n'')) *
CSL CSL as an abbreviation may stand for: Places * Coordinated Science Laboratory, at the University of Illinois * Liège Space Center (Centre spatial de Liège), at the University of Liege in Belgium * Central Science Laboratory, a former UK DEFRA ...
= NSPACE(''O''(''n'')), where CSL is the class of
context-sensitive language In formal language theory, a context-sensitive language is a language that can be defined by a context-sensitive grammar (and equivalently by a noncontracting grammar). Context-sensitive is one of the four types of grammars in the Chomsky hierarc ...
s. *
PSPACE In computational complexity theory, PSPACE is the set of all decision problems that can be solved by a Turing machine using a polynomial amount of space. Formal definition If we denote by SPACE(''t''(''n'')), the set of all problems that can b ...
= NPSPACE = \bigcup_ \mathsf(n^k) *
EXPSPACE In computational complexity theory, is the set of all decision problems solvable by a deterministic Turing machine in exponential space, i.e., in O(2^) space, where p(n) is a polynomial function of n. Some authors restrict p(n) to be a linear func ...
= NEXPSPACE = \bigcup_ \mathsf(2^) The
Immerman–Szelepcsényi theorem In computational complexity theory, the Immerman–Szelepcsényi theorem states that nondeterministic space complexity classes are closed under complementation. It was proven independently by Neil Immerman and Róbert Szelepcsényi in 1987, for wh ...
states that NSPACE(''s''(''n'')) is closed under complement for every function A further generalization is ASPACE, defined with alternating Turing machines.


Relation with other complexity classes


DSPACE

NSPACE is the non-deterministic counterpart of
DSPACE DSpace is an open source repository software package typically used for creating open access repositories for scholarly and/or published digital content. While DSpace shares some feature overlap with content management systems and document managem ...
, the class of memory space on a
deterministic Turing machine A Turing machine is a mathematical model of computation describing an abstract machine that manipulates symbols on a strip of tape according to a table of rules. Despite the model's simplicity, it is capable of implementing any computer algori ...
. First by definition, then by
Savitch's theorem In computational complexity theory, Savitch's theorem, proved by Walter Savitch in 1970, gives a relationship between deterministic and non-deterministic space complexity. It states that for any function f\in\Omega(\log(n)), :\mathsf\left(f\lef ...
, we have that:
\mathsf
(n) A thumb signal, usually described as a thumbs-up or thumbs-down, is a common hand gesture achieved by a closed fist (hand), fist held with the thumb extended upward or downward in approval or disapproval, respectively. These gestures have becom ...
\subseteq \mathsf
(n) A thumb signal, usually described as a thumbs-up or thumbs-down, is a common hand gesture achieved by a closed fist (hand), fist held with the thumb extended upward or downward in approval or disapproval, respectively. These gestures have becom ...
\subseteq \mathsf s(n))^2


Time

NSPACE can also be used to determine the time complexity of a
deterministic Turing machine A Turing machine is a mathematical model of computation describing an abstract machine that manipulates symbols on a strip of tape according to a table of rules. Despite the model's simplicity, it is capable of implementing any computer algori ...
by the following theorem:
If a language ''L'' is decided in space ''S''(''n'') (where ''S''(''n'') ≥ log ''n'') by a non-deterministic TM, then there exists a constant ''C'' such that ''L'' is decided in time ''O''(''C''''S''(''n'')) by a deterministic one.


Limitations

The measure of
space complexity The space complexity of an algorithm or a computer program is the amount of memory space required to solve an instance of the computational problem as a function of characteristics of the input. It is the memory required by an algorithm until it ex ...
in terms of
DSPACE DSpace is an open source repository software package typically used for creating open access repositories for scholarly and/or published digital content. While DSpace shares some feature overlap with content management systems and document managem ...
is useful because it represents the total amount of memory that an actual computer would need to solve a given
computational problem In theoretical computer science, a computational problem is a problem that may be solved by an algorithm. For example, the problem of factoring :"Given a positive integer ''n'', find a nontrivial prime factor of ''n''." is a computational probl ...
with a given
algorithm In mathematics and computer science, an algorithm () is a finite sequence of rigorous instructions, typically used to solve a class of specific Computational problem, problems or to perform a computation. Algorithms are used as specificat ...
. The reason is that DSPACE describes the space complexity used by
deterministic Turing machine A Turing machine is a mathematical model of computation describing an abstract machine that manipulates symbols on a strip of tape according to a table of rules. Despite the model's simplicity, it is capable of implementing any computer algori ...
s, which can represent actual computers. On the other hand, NSPACE describes the space complexity of
non-deterministic Turing machine In theoretical computer science, a nondeterministic Turing machine (NTM) is a theoretical model of computation whose governing rules specify more than one possible action when in some given situations. That is, an NTM's next state is ''not'' comp ...
s, which are not useful when trying to represent actual computers. For this reason, NSPACE is limited in its usefulness to real-world applications.


References


External links

*. {{DEFAULTSORT:Nspace Complexity classes Computational resources