The space-bounded machine problems are PSPACE-complete #
The bridge, closed. Membership was
DescriptiveComplexity.Problems.Machine.Space: a configuration is an assignment of
a block of relation variables and a run is a transitive closure over them, so
both problems are SO(TC) definable. This file supplies hardness, and with it
the identification of the logically defined PSPACE with the machine class.
Hardness is proved once, for the deterministic problem, by
DescriptiveComplexity.QsatTM.qsat_ordered_fo_reduction_dtmAcceptSpace: the machine
built inside a QSAT instance evaluates the quantified Boolean formula by the
standard iterative algorithm, the recursion stack being one bit per variable in
the variable's own cell. It then travels to the nondeterministic problem along
DescriptiveComplexity.dtmAcceptSpace_fo_reduction_ntmAcceptSpace, since hardness
moves forward along reductions – which is why the deterministic problem is
the one to prove hard, and why Savitch never has to be run on the machine side.
The two completeness theorems together say PSPACE = NPSPACE in the form this
library can state it: deterministic and nondeterministic space-bounded
acceptance are complete for the same class.
Deterministic space-bounded machine acceptance is PSPACE-hard, by the
QBF-evaluating machine of DescriptiveComplexity.Problems.Machine.QsatInterp.
Dependency graph
Nondeterministic space-bounded machine acceptance is PSPACE-hard, by transfer: determinism is a first-order promise a reduction can enforce.
Dependency graph
Deterministic space-bounded machine acceptance is PSPACE-complete. The classes of this library are definitions in logic; this theorem is the bridge saying its PSPACE is the machine one.
Dependency graph
Nondeterministic space-bounded machine acceptance is PSPACE-complete.
Dependency graph
PSPACE = NPSPACE, in the form this framework states it: deterministic
and nondeterministic space-bounded acceptance are complete for the same class,
so each reduces to the other. Savitch's theorem is what
DescriptiveComplexity.Problems.Qsat already spent, logically; nothing simulates a
nondeterministic machine deterministically here.
Dependency graph
Every problem of PSPACE reduces to space-bounded machine acceptance:
the forward half of a machine characterization of the class. (The converse
direction is membership, DescriptiveComplexity.dtmAcceptSpace_mem_PSPACE, but a
relativized reduction only carries hardness, so the two do not assemble into
an iff the way DescriptiveComplexity.mem_NP_iff_le_ntmAccept does.)