196 Complexity — NTIME
196.1 Overview
This module defines acceptance and deciding for finite nondeterministic multi-tape Turing machines over the binary alphabet, where a branch accepts when it has halted with output exactly the one-bit string \(1\), and introduces the nondeterministic time classes \(\mathrm{NTIME}(T)\) of languages decided in time \(c \cdot T\) for some constant \(c\) (Arora–Barak, Definition 2.5). It proves that acceptance and \(\mathrm{NTIME}\) are monotone in the time bound, that \(\mathrm{DTIME}(T) \subseteq \mathrm{NTIME}(T)\), and that \(\mathrm{NTIME}(T)\) is empty when \(T\) vanishes at some input length.
196.2 Declarations
Let \(N\) be a nondeterministic multi-tape Turing machine over the binary alphabet with finitely many states and two transition functions, one for each choice bit; let \(x\) be a binary string and \(t \in \mathbb {N}\). We say that \(N\) accepts \(x\) within \(t\) steps if there is a choice word \(w \in \{ 0,1\} ^t\) such that running \(N\) from its initial configuration on input \(x\) for \(t\) steps, using the \(i\)-th bit of \(w\) to select the transition function at step \(i\), reaches a halted configuration whose output is exactly the one-bit string \(1\). A branch halted with any other output, including the empty string and \(0\), is not accepting.
Let \(N\) be a finite nondeterministic multi-tape Turing machine over the binary alphabet, let \(x\) be a binary string, and let \(t \le t'\) be natural numbers. If some choice word of length \(t\) drives \(N\) on input \(x\) to a halted configuration with output exactly \(1\), then some choice word of length \(t'\) does as well; that is, if \(N\) accepts \(x\) within \(t\) steps then \(N\) accepts \(x\) within \(t'\) steps.
Let \(N\) be a finite nondeterministic multi-tape Turing machine over the binary alphabet, let \(L\) be a language of binary strings, and let \(T : \mathbb {N} \to \mathbb {N}\). We say that \(N\) decides \(L\) within time \(T\) if for every binary input \(x\): every choice word of length \(T(|x|)\) drives \(N\) from its initial configuration on \(x\) to a halted configuration, and \(x \in L\) if and only if some choice word of length \(T(|x|)\) drives \(N\) on \(x\) to a halted configuration with output exactly the one-bit string \(1\).
For a time bound \(T : \mathbb {N} \to \mathbb {N}\), the class \(\mathrm{NTIME}(T)\) consists of all languages \(L\) of binary strings for which there exist a constant \(c \in \mathbb {N}\) and a finite nondeterministic multi-tape Turing machine \(N\) over the binary alphabet such that, on every input \(x\), every choice word of length \(c \cdot T(|x|)\) drives \(N\) to a halted configuration, and \(x \in L\) exactly when some choice word of that length drives \(N\) to a halted configuration with output \(1\).
Let \(T_1, T_2 : \mathbb {N} \to \mathbb {N}\) be time bounds with \(T_1(n) \le T_2(n)\) for every \(n\). Then \(\mathrm{NTIME}(T_1) \subseteq \mathrm{NTIME}(T_2)\): every language of binary strings decided by some finite nondeterministic multi-tape machine within \(c \cdot T_1(n)\) steps on inputs of length \(n\), for some constant \(c\), is also decided by such a machine within \(c \cdot T_2(n)\) steps.
For every time bound \(T : \mathbb {N} \to \mathbb {N}\), \(\mathrm{DTIME}(T) \subseteq \mathrm{NTIME}(T)\). That is, if a language \(L\) of binary strings is decided by a finite deterministic multi-tape Turing machine that, for some constant \(c\), halts on every input \(x\) within \(c \cdot T(|x|)\) steps with output \(1\) if \(x \in L\) and \(0\) otherwise, then \(L\) is decided by a finite nondeterministic multi-tape machine within \(c \cdot T(|x|)\) steps on every input \(x\).
Let \(T : \mathbb {N} \to \mathbb {N}\) be a time bound with \(T(n) = 0\) for at least one input length \(n\). Then \(\mathrm{NTIME}(T) = \emptyset \): no language of binary strings is decided by a finite nondeterministic multi-tape machine within \(c \cdot T(|x|)\) steps on every input \(x\), for any constant \(c\).