The Equivalence problem is a decision problem asks if any two machines and are equivalent.
Problem Specification(s)
General
Given any two machines and , are they both equivalent? That is, is ?
Decidability
The decidability of the problem requires a restructuring. Let be a language given by the TM encoding of
Then, we need to check if is T-decidable.
The FSA Equivalence Problem is decidable ^theorem-fsa
That is,
Proof
This proof involves using set operations (specifically, ones that preserve regularity) on and to get the empty set, . Then, the problem reduces to the emptiness problem, which is decidable.
- We know that if , then there should be no set difference between them. That is
- Since the set difference is a regularity-preserving operation, and and are regular by definition, then their set difference can be constructed, is regular, and thus has a corresponding DFA that recognises it.
- We can then use the union (again, a regular operation) to get a DFA, that recognises:
- Then, this is a reduction to the emptiness problem for , which is decidable.
The TM Equivalence Problem is undecidable ^theorem-tm
Proof
We use a simple proof by reduction:
- The emptiness problem reduces to equivalence problem
- The emptiness problem is undecidable
- Hence, the equivalence problem is also undecidable