Savitch's theorem
Savitch's theorem is a foundational result in computational complexity theory, proved by Walter Savitch in 1970, establishing that PSPACE = NPSPACE. In other words, any problem solvable by a nondeterministic Turing machine using a polynomial amount of memory can also be solved by a deterministic Turing machine using a polynomial amount of memory — specifically, at most the square of the nondeterministic machine's space bound. This stands in stark contrast to the time-bounded case, where the relationship between P and NP remains one of the deepest open problems in mathematics.
The theorem's core insight is that space can be reused. Where a nondeterministic computation branches into exponentially many possible paths, a deterministic simulation need not track all paths simultaneously. Instead, it can use a recursive divide-and-conquer strategy — the reachability method — to determine whether any path exists from the initial configuration to an accepting configuration, using only logarithmically more space than the nondeterministic machine would require. The quadratic blowup in space comes from the need to store the recursion stack.
The Reachability Method
Savitch's proof hinges on a clever algorithm for the graph reachability problem under severe space constraints. Given a directed graph with n vertices and two designated vertices s and t, the naive approach to determining whether a path from s to t exists uses depth-first search, which requires O(n) space to track the visited set. But Savitch observed that one can instead ask a recursive question: is there some intermediate vertex m such that there is a path from s to m of length at most k/2, and a path from m to t of length at most k/2?
This halving strategy reduces the problem to two smaller subproblems, each with half the path-length budget. The recursion depth is O(log n), and at each level we need only store the current midpoint candidate. The total space is O((log n)²) — a square of the logarithmic bound that would suffice for a nondeterministic guess-and-verify approach. Applied to the configuration graph of a nondeterministic Turing machine, this yields the PSPACE = NPSPACE result.
The reachability method is not merely a technical trick. It embodies a general principle: when exploring an exponentially large state space, the right recursive decomposition can trade exponential time for polynomial space. This principle recurs in algorithm design, in the analysis of two-player games, and in the study of phase transitions in combinatorial search.
Implications and Asymmetries
Savitch's theorem reveals a profound asymmetry between time and space as computational resources. Nondeterminism provides an exponential speedup for time-bounded computation — if it provides any advantage at all — but only a polynomial space advantage. Space, unlike time, can be reclaimed and reused. Every bit of memory can be overwritten; every moment of time is irretrievable. This fundamental difference in the