A typical proof of Cook-Levin's Theorem proceeds like this:
Suppose problem X is in NP. Then there is an NTM M deciding X in time n^k, for some k. Given a word w, NTM M, and k, we construct a Boolean formula φ in polytime(|w|) that is satisfiable iff the NTM accepts w, as follows. [...]
Question: why can we assume that k is given? I agree that "there exists such k", however knowing that it exists and directly using it in the reduction are different things (to me). I would expect the reduction to be independent of k (so the formula doesn't depend on k), but the proof of its correctness relies on the fact that k in N exists.