PSPACE ⊆ EXP — proof internals #
⚠️ Unreviewed by Bolton
A space-bounded machine has only exponentially many configurations, and a deterministic run visits each at most once before halting, so its halting time is bounded by that count. The machine is unchanged: only the time bound is new.
The counting needs one invariant the space predicate does not state. Cfg.WithinDecisionSpace
bounds head positions, not tape contents; but a head that never leaves [0, S] can never
write outside it, so every cell beyond the window still holds its initial blank. Windowed
records that, and Windowed.step propagates it.
Counting the configurations inside the window #
A halting deterministic run is short #
The deterministic iteration TM.runCfg and its algebra come from
Complexitylib.Classes.P.Cobham.Internal.Simulate, where the Cobham simulation already needed
them.
A repeat before the first halt is impossible: periodicity would pull a halted
configuration back before time t.
Before the first halt, the configurations of a deterministic run are pairwise distinct.
From a space bound to a time bound #
A space-bounded machine halts within its configuration count.
A polynomial dominating the exponent of the configuration count.
Equations
- tm.boundExp p = Polynomial.C (Fintype.card tm.Q) + (Polynomial.X + p + Polynomial.C 2) + Polynomial.C (3 * k) * (p + 1) + Polynomial.C 3 * (p + Polynomial.C 2)
Instances For
The configuration count is at most 2 to a polynomial.
The time bound #
A space-bounded decider is a time-bounded decider, with no change of machine: the run halts by the time it would have to repeat a configuration.
A polynomial is eventually dominated by the next power.
PSPACE ⊆ EXP. A polynomial-space decider halts within its configuration count, which
is exponential, so the same machine is an exponential-time decider.