# What is the complexity of the following problem?

Input: $M$ is non deterministic Turing machine that always halts in $cn^k$ moves/steps, where $c$ and $k$ are constants and $n$ is the length of the input string of $M$, $w$ is any string in $\Sigma^*$ and $a$ is another string in $\Sigma^*$ where $\Sigma=\{0,1\}$.

Output: Does $a$ represent a valid computation of $M$ on $w$?

$a$ indeed encodes truth assignment, when the symbol $0$ encodes false value and the symbol $1$ encodes true value.

If $a$ satisfies $\Phi_{M,w}$, where $\Phi_{M,w}$ is the boolean formula that deterministic Turing machine can compute in polynomial time by the Cook Levin reduction that is satisfiable if and only if $M$ accepts $w$, then $a$ is indeed represents a valid computation of $M$ on $w$ since the Cook Levin reduction is parsimonious.

But if $a$ falsifies $\Phi_{M,w}$ then this is not necessarily true that $a$ represents a valid computation of $M$ on $w$, because it is possible that the given non deterministic Turing machine $M$ accepts the given string $w$ on all computations, paths and routes and the given truth assignment $a$ still falsifies $\Phi_{M,w}$.

So in case that $a$ falsifies $\Phi$, how do I decide whether or not $a$ represents a valid computation of $M$ on $w$?

What is the complexity of this problem?

Does exist polynomial time deterministic algorithm that decides/solves this problem or nobody doesn't know if such algorithm exist yet?

• "then $a$ indeed represents a valid computation of $M$ on $w$ since the Cook Levin reduction is parsimonious" - This has nothing to do with the reduction being parsimonious, this is a result of the specific construction of the reduction. Also, you don't have to appeal to Cook-Levin to encode computations of a Turing machine, there is no real reason to talk about assignments for boolean formulas in this context. You can simply say that $a$ is a description of $M$'s tape, state and head location during some prefix of its computation. – Ariel Jan 19 '18 at 0:56
• Additionally, the input should consist of $M, w$ alone, you don't have any information about $M$'s running time from its encoding (how would you know if the machine actually runs in exponential time?). Now, the problem is trivially solvable in polynomial time by reading $a$ and checking that any configuration is reachable from its predecessor by one of $M$'s transition functions. – Ariel Jan 19 '18 at 1:02
• @Ariel Your last comment was supposed to be an answer. – user82913 Jan 19 '18 at 4:13
• The title you have chosen is not well suited to representing your question. Please take some time to improve it; we have collected some advice here. Thank you! – Raphael Jan 27 '18 at 13:12

"then $a$ indeed represents a valid computation of $M$ on $w$ since the Cook Levin reduction is parsimonious" - This has nothing to do with the reduction being parsimonious, this is a result of the specific construction of the reduction. Also, you don't have to appeal to Cook-Levin to encode computations of a Turing machine, there is no real reason to talk about assignments for boolean formulas in this context. You can simply say that $a$ is a description of $M$'s tape, state, and head location during some prefix of its computation.
Additionally, the input should consist of $M,w$ alone, you don't have any information about $M$'s running time from its encoding (how would you know if the machine actually runs in exponential time?). Now, the problem is trivially solvable in polynomial time by reading $a$ and checking that any configuration is reachable from its predecessor by one of $M$'s transition functions.