Processing math: 100%

Heirarchy Theorem

2019-02-16

With more resource comes more power, at least computationally speaking.

Constructibility

Given a function, f:NN, it is said to be (weakly) time/space construtible if and only if the map 1n1f(n) could be computed in O(f(n)) time/space resources.

It basically says that f is computationally easier to determine.

Diagonalization for Undecidability

One way to show that there’s a problem undecidable is by diagonalization.
Consider the following language,
L={w=M,x:wL(M)},
where M is a Turing machine. If machine D decides L, then
w=D,xLwL(D)=L,
which is a contradiction. Thus there exists a undecidable problem.

Space Heirachy Theorem

Given s(n) weakly space constructible, then there exists a language A that

  • ASPACE(s(n))
  • ASPACE(o(s(n)))

We are showing this by also diagonalization. Consider a Turing machine D doing the following,

  • On input w=M,10k where M is a Turing machine, we try to simulate M on input w under following modification.
  • By space constructibility, calculate 1s(n) as memory boundary, if during simulation M attempt to use more then s(n) memory, reject.
  • Maintain a time counter, if simulatation time ever exceeds 2s(n), reject.
  • If M accepts w, reject; otherwise, accept.

It is clear from declaration that L(D)SPACE(s(n)). If L(D)SPACE(o(s(n))), then for those machines M running in space go(f) and large enough N0, g(n)<s(n) whenever n>N0. Therefore consider k=N0, M runs to the last step. But then wL(D)wL(D), which is a contradiction.

Remark.

SPACE(s(n))TIME(2O(s(n))), so the third step make sure the total process using no more then O(s(n)) memory.

Time Heirachy Theorem

Given t(n) weakly time constructible, then there exists a language A that

  • ATIME(t(n))
  • ATIME(o(t/logt))

The proof is essentially similar, but note that to avoid zigzag that typically wasting time, we need to drag the time counter and state information along with the pointer location. That would cause O(log(t)) time for each transition.


Comments: