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 be solved by Turing machines using O(t(n)) space for some function t of the input size n, then we can define PSPACE formally asArora & Barak (2009) p.81
\mathsf{PSPACE} = \bigcup_{k\in\mathbb{N}} \mathsf{SPACE}(n^k).
PSPACE is a strict superset of the set of context-sensitive languages.
It turns out that allowing the Turing machine to be nondeterministic does not add any extra power.
Because of Savitch's theorem,Arora & Barak (2009) p.85 NPSPACE is equivalent to PSPACE, essentially because a deterministic Turing machine can simulate a non-deterministic Turing machine without needing much more space (even though it may use much more time).Arora & Barak (2009) p.86  Also, the complements of all problems in PSPACE are also in PSPACE, meaning that co-PSPACE  PSPACE.
Relation among other classes
300px|thumb|right|A representation of the relation among complexity classes The following relations are known between PSPACE and the complexity classes NL, P, NP, PH, EXPTIME and EXPSPACE (note that ⊊, meaning strict containment, is not the same as ⊈):
\begin{array}{l} \mathsf{NL \subseteq P \subseteq NP \subseteq PH \subseteq PSPACE}\\ \mathsf{PSPACE \subseteq EXPTIME \subseteq EXPSPACE}\\ \mathsf{NL \subsetneq PSPACE \subsetneq EXPSPACE}\\ \mathsf{P\subsetneq EXPTIME}\end{array}
From the third line, it follows that both in the first and in the second line, at least one of the set containments must be strict, but it is not known which.
It is widely suspected that all are strict.
The containments in the third line are both known to be strict.
The first follows from direct diagonalization (the space hierarchy theorem, NL ⊊ NPSPACE) and the fact that PSPACE  NPSPACE via Savitch's theorem.
The second follows simply from the space hierarchy theorem.
The hardest problems in PSPACE are the PSPACE-complete problems.
See PSPACE-complete for examples of problems that are suspected to be in PSPACE but not in NP.
Closure properties
The class PSPACE is closed under operations union, complementation, and Kleene star.
Other characterizations
An alternative characterization of PSPACE is the set of problems decidable by an alternating Turing machine in polynomial time, sometimes called APTIME or just AP.Arora & Barak (2009) p.100
A logical characterization of PSPACE from descriptive complexity theory is that it is the set of problems expressible in second-order logic with the addition of a transitive closure operator.
A full transitive closure is not needed; a commutative transitive closure and even weaker forms suffice.
It is the addition of this operator that (possibly) distinguishes PSPACE from PH.
A major result of complexity theory is that PSPACE can be characterized as all the languages recognizable by a particular interactive proof system, the one defining the class IP.
In this system, there is an all-powerful prover trying to convince a randomized polynomial-time verifier that a string is in the language.
It should be able to convince the verifier with high probability if the string is in the language, but should not be able to convince it except with low probability if the string is not in the language.
PSPACE can be characterized as the quantum complexity class QIP.
PSPACE is also equal to PCTC, problems solvable by classical computers using closed timelike curves,.
as well as to BQPCTC, problems solvable by quantum computers using closed timelike curves.
PSPACE-completeness
A language B is PSPACE-complete if it is in PSPACE and it is PSPACE-hard, which means for all A ∈ PSPACE, A \leq_\text{P} B, where A \leq_\text{P} B means that there is a polynomial-time many-one reduction from A to B. PSPACE-complete problems are of great importance to studying PSPACE problems because they represent the most difficult problems in PSPACE.
Finding a simple solution to a PSPACE-complete problem would mean we have a simple solution to all other problems in PSPACE because all PSPACE problems could be reduced to a PSPACE-complete problem.Arora & Barak (2009) p.83
An example of a PSPACE-complete problem is the quantified Boolean formula problem (usually abbreviated to QBF or TQBF; the T stands for "true").
References
Section 8.2–8.3 (The Class PSPACE, PSPACE-completeness), pp.
281–294.
Chapter 19: Polynomial space, pp.
455–490.
Chapter 8: Space Complexity
