L8 - Further Undecidable Problems Flashcards
What is Problem Reduction?
Technique of reducing a problem A to problem B such that a solution to B can be used to solve A.
How does Problem Reduction relate to decidability?
If A reduces to B, and B is decidable, then A is also decidable.
How does Problem Reduction and the Halting Problem help classify decidability of problems?
If the Halting Problem is undecidable, through problem reduction we can verify that other problems are also undecidable.
What is the Totality Problem?
Is there a universal program that can determine whether another program halts for all inputs.
What is the relationship between the Totality and Halting Problems?
The Halting Problem is reducible to the Totality Problem. If we solve the Totality Problem, it means M halts on all X, thus M halts on X.
Define the Equivalence Problem…
Given 2 Turing machines, determine whether they compute the same function. I.e both machines halt or not for an input.
Why is the Totality Problem reducible to the Equivalence Problem?
Program T is true if P halts on D. Program U always returns true.
If T==U, then P halts on all inputs.
What is Rices theorem…
Any functional property of a program is undecidable.
What is the implication of Rices Theorem?
There exists no verification tool that can be sure that a program meets its technical specification.
What are the 4 ways to deal with undecidability in Program Verification?
Approximation algorithms
Probabilistic arguments -> Test on a subset to gauge probability
Less automation
Simplify problems