Theorem (Lecture 19). NL ⊆ SPACE(log² n). Any language in NL is decidable in
deterministic space O((log n)²).
(log₂ n)² = o(n): the function n ↦ (Nat.log 2 n)² is asymptotically dominated by n.
This is the key gap used to separate NL from PSPACE.
If g = O(h) and h = o(f), then g = o(f): composing a Big-O bound with a little-o
bound yields a little-o bound.
SPACE((log₂ n)²) ⊆ PSPACE: any language decidable in space (log₂ n)² is decidable
in polynomial space (in particular, in space n²).
NL ⊆ PSPACE. Combines NL ⊆ SPACE(log² n) with SPACE(log² n) ⊆ PSPACE.
(log₂ n)² = o(n + 2). Combined with the Space Hierarchy Theorem at bound n + 2,
this lets us separate SPACE(n + 2) from NL ⊆ SPACE(log² n).
A language decidable in space (log₂ n)² is decidable in space o(n + 2), i.e. it lies
in SPACEo (n + 2).
The function n ↦ n + 2 is space-constructible. This is the technical hypothesis needed
to apply the Space Hierarchy Theorem at this bound.
SPACE(n + 2) ⊆ PSPACE. Linear space is contained in polynomial space (in particular n²).
Corollary (Sipser, Review of Hierarchy Theorems). NL ⊊ PSPACE.
Concretely we prove the two parts of strict inclusion:
- Every
NLlanguage lies inPSPACE. - There exists a
PSPACElanguage not inNL, obtained from the Space Hierarchy Theorem at the boundn + 2(which is space-constructible). AnyNLlanguage is inSPACE(log² n), hence inSPACEo(n + 2), contradicting the hierarchy separation.