Question

I think that the next language is not decidable but I can't think of reduction to show it. I would appreciate some hint or intuition

$EQ = $ { $<M1,M2>$ |$ M1\,\,\, and\,\,\, M2 \,\,\, are\,\,\, TMs\,\,\, and\,\,\, |\,L(M1)\,∩\,L(M2)\,|\, $$= 2020\, $}

Was it helpful?

Solution

Consider an instance of Halting problem $\langle M, x \rangle$. Construct a new Turing Machine which $M_x$ which will accept the strings $0$, $00$, $000 \ldots 0^{2020}$ if the machine $M$ halts on the input $x$; and it will reject all other strings. Let $M_u$ be the TM which accepts all the strings.

Convince yourself that $|L(M_x) \cap L(M_u)|$ will be 2020 if $M$ halts on $x$, and otherwise $0$.

The proof follows easily.

(Informal) Hint: Whenever you have such a question, try thinking about how can you solve the Halting problem (or some other undecidable language) using the hypothetical decider for the given language.

OTHER TIPS

welcome to the site :)

I assume you already know that the Halting problem $L_H$ is undecidable (as it is usually the first specific undecidable language students learn of). So, let us try and find a reduction $L_H \leq EQ$.

We want to know whether some given TM $M$ halts given the input word $w$ by transforming the pair $\langle M, w \rangle$ to some $EQ$-instance $f(\langle M, w \rangle) = \langle M_1, M_2 \rangle$ such that $\langle M, w \rangle \in L_H$ if and only if $\langle M_1, M_2 \rangle \in EQ$. Let us consider some dummy TM $M_{2020}$ which just accepts 2020 inputs (any set of 2020 words will do the trick) and modify $M_{2020}$ such that it only ever accepts if $M$ halts on $w$ to get another TM $M_{2020}(M, w)$. Since we know $M$ and $w$ when we construct $M_{2020}(M, w)$, we can implement it to do the following:

  1. Read the input and if it is one of the 2020 words accepted by $M_{2020}$, make note of that (we can use the states to store this).
  2. Clear the tape and write $w$ to it.
  3. Run $M$ on $w$.
  4. If $M$ halts on $w$, accept the original input.

Such a construction can be performed by another TM, this is a bit tedious to show formally but by noting that we can essentially "embed" $M$ in $M_{2020}(M, w)$ it should be intuitive that this can be done (as $M_{2020}$ is a fixed TM).

Now observe that $M_{2020}(M, w)$ accepts some input $x \in L(M_{2020})$ precisely when $M$ halts on $w$, hence we have that $L(M_{2020}) = L(M_{2020}(M, w))$ if and only if $\langle M, w \rangle \in L_H$, otherwise we have $L(M_{2020}(M, w)) = \emptyset$. It follows that $$ | L(M_{2020}(M, w)) \cap L(M_{2020}) | = \begin{cases} 2020, & \text{if $M$ halts on $w$} \\ 0, & \text{otherwise} \end{cases} $$ and thus (denoting $\langle M_{2020}, M_{2020}(M, w) \rangle$ as $f(\langle M, w \rangle$) we have $\langle M, w \rangle \in L_H \Leftrightarrow f(\langle M, w \rangle)$ and therefore a suitable reduction.

An easier way to prove that the language is not decidable is by using Rice's theorem which (roughly speaking) says that properties of functions computed by TMs (we call these semantic properties) cannot be decided algorithmically unless they are trivial. If we fix some TM $M_1$ and consider an arbitrary TM $M$ then asking whether $L(M_1) \cap L(M)$ has size 2020 is such a semantic property and hence Rice's theorem immediately gives us that $EQ$ is undecidable. The theorem (for me, at least) is basically the formal underpinning of the informal intuition I gave above.

Licensed under: CC-BY-SA with attribution
Not affiliated with cs.stackexchange
scroll top