I am absolutely stumped on this one. I am unsure of how to start with this one. I have thought to reducing the problem to Atm. Another thought I have had is to convert M1 to a PDA and use the complement of EQPDA to solve this but I am honestly really unsure. Any tips that could point me in the right direction or solutions to this or similar problems?
Here is one attempt to solve this problem:
DifferentPDADFA = {<M1, M2> | M1 is a PDA and M2 is a PDA, L(M1) != L(M2)}
Write a turing machine, C, to decide the language of M1
Write a turing machine, D, to decide the language of M2
ALLCFG = {<G, w> | G is a CFG, L(G)=Σ*}
ALLCFG' = {<G, w> | G is a CFG, L(G) != Σ*}
Since ALLCFG is known to be undecidable, its complement ALLCFG' is also undeciable.
Use turing machine A, which simulates ALLCFG'.
AllCFG' <ₘ L
F -> Input <D, P, w>:
1. Construct Turing Machine Y to simulate PDA P
Y<P, w>:
On Input X:
1. Ignore Input X
2. Convert our PDA P to a CFG G (page 147)
3. Simulate A with <G, w> and return what A returns.
2. Construct Turing Machine Z to simulate DFA D
Z<D, w>:
On Input X:
1. Ignore Input X, accept.
Output <Z, Y>
Since Z ignores all inputs the language accepted by L(Z) is always Σ*.
If A accepts <G, w> then L(Y) != Σ*, therefore L(Y) != L(Z).
If A rejects <G, w> then L(Y) must be Σ*, therefore L(Y) = L(Z).
Therefore A accepting <G, w> <=> L(Y) != L(Z)
Since we know that ALLCFG' is undeciable, L is also undeciable.