How to show that EQtm is not recognizable

909 Views Asked by At

I can't seem to understand why $EQ_{tm}$ is not recognizable. Would this be an appropiate recognizer:

On input $M_1,M_2$:

$1.$ For $i = 1,2,3, \dots$ do:

$1.1.$ For every string $x$ such that $|x|<i$ do:

$1.1.1.$ Run $M_1$ on $x$ for $i$ steps, at most.

$1.1.2.$ Run $M_2$ on $x$ for $i$ steps, at most.

$1.1.3.$ If $M_1$ has accepted $x$ and $M_2$ has accepted $x$, accept."

Why is this not a suitable recognizer? Is it because I'm checking it only for one $x$, and there could be $x$'s in $M_1$ and $M_2$?

Thanks.

1

There are 1 best solutions below

0
On

In order for your proposed TM to be a recognizer, it would have to halt on any input $M_1,M_2$ for which $L(M_1) = L(M_2)$. However, either your TM never halts, or it will accept some inputs for which $L(M_1) \neq L(M_2)$. Your idea is to go through every string $x$ of length $i$ for every $i \in \mathbb{N}$. However, since there are infinitely many such $i$'s, your TM will never halt! If you want it to halt, then you will have to stop at some $i$, but then there may be some strings of length $k > i$ for which the two inputs $M_1$ and $M_2$ disagree.