Verifying Time Complexity of Deterministic Turing Machines
arXiv:1307.3648 · doi:10.1016/j.tcs.2015.07.028
Abstract
We show that, for all reasonable functions , we can algorithmically verify whether a given one-tape Turing machine runs in time at most . This is a tight bound on the order of growth for the function because we prove that, for and , there exists no algorithm that would verify whether a given one-tape Turing machine runs in time at most . We give results also for the case of multi-tape Turing machines. We show that we can verify whether a given multi-tape Turing machine runs in time at most iff for some . We prove a very general undecidability result stating that, for any class of functions that contains arbitrary large constants, we cannot verify whether a given Turing machine runs in time for some . In particular, we cannot verify whether a Turing machine runs in constant, polynomial or exponential time.
18 pages, 1 figure