If a branch of an NTM uses f(n) space, we know that f(n) is the maximum number of (input) tape cells that it scans on any branch of its computation for an input of length n. But we don't know how many times it runs back and forth over those cells before the computation branch finishes. So how does he determine that such a branch may run for [itex]2^{O(f(n))}[/itex] steps only? Why not, for example, [itex]2^{O(f(n^2))}[/itex]? Or maybe some much lower limit? I don't know. Any ideas where this [itex]2^{O(f(n))}[/itex] comes from?