I know that we can visualize a Non deterministic TM as a TM which splits into multiple copies of itself whenever it sees a non deterministic path (Yes, I also know that this is just a visualization and is usually used by beginners like me for understanding non determistisism).
Further, I also know that a Decider is a TM that halts on all possible inputs.
Now, my question is how can I visualize a Non determistic Decider? Does a non-determistic decider mean a TM where
- All the copies must halt, (OR)
- At-least one copy halts.
Kindly explain in detail why so. Thanks.
Asked By : bongubj
Answered By : Vor
For a nondeterministic decider the answer is At-least one "copy" halts on a "yes"/"no" state; copy-paste from another answer:
for a Nondeterministic Turing machine (NDTM) processing an input $x$ there can be infinite computations (paths); some of them will halt on the accept state $q_Y$, some will halt on the reject state $q_N$, some will run forever;
a string $x$ is accepted by a Nondeterministic Turing machine if at least one of its computations halts on the accepting state $q_Y$;
we say that "$M$ accepts $x$ in $m$ steps" if $M$ accepts $x$ and $m$ is the length of the shortest accepting computation on input $x$;
a language $L_M$ recognized by a NDTM $M$ is the set of $x$ accepted by $M$ (this is independent of whether $N$ is a decider or not);
the definition of time complexity for a Nondeterministic Turing Machine $M$ is slightly different from the definition of time complexity for a Deterministic Turing Machine:
$T_M(n) = max ( \{1\} \cup \{ m \; : \; $ there is an $x \in L_M$ such that $|x|=n$ and $M$ accepts $x$ in $m$ steps $\})$
we say $M$ is a decider if $T_M(n)$ is computable.
See Garey&Johnson, "Computers and Intractability"
Best Answer from StackOverflow
Question Source : http://cs.stackexchange.com/questions/6253
0 comments:
Post a Comment
Let us know your responses and feedback