View
213
Download
0
Category
Tags:
Preview:
Citation preview
Russel’s Paradox• http://www.jimloy.com/logic/russell.htm
• An Index is a book that lists other books in the library– Index of all biology text books in the library.
• Consider the index of all indices, i.e., book that lists other indices.– It would contain itself.– Called a self-referential index (form of recursion).
• Consider the index of all non self-referential indices.– The book that lists all indices that are non self-referential.– Call it the non-recursive index
1. If the non-recursive index lists itself then its recursive and shouldn’t be in the list.
2. But if it doesn’t list itself, then it is non-recursive and it should be listed as one of the non self-referential books.
ATM reduces to HALTTM
• Proof by Contradiction– Assume we have a Turing Machine R that decides
HALTTM.• In other words, we can design an algorithm that
determines of another algorithm (M) will halt on a given input (w).
ATM reduces to HALTTM
• Proof by Contradiction– Assume we have a Turing Machine R that decides
HALTTM.– Then, use R to construct a new machine S that can
decide ATM.– We have already proven that is NOT decidable.– So, if we can construct a machine S that can
decide ATM based on HALTTM then we must conclude that cannot be decidable.
ATM reduces to HALTTM
• Proof by Contradiction– Assume we have a Turing Machine R that decides
HALTTM.– Then, use R to construct a new machine S that can
decide ATM.
– We have already proven that ATM is NOT decidable.– So, if we can construct a machine S that can
decide ATM based on HALTTM then we must conclude that cannot be decidable.
Deeply Understanding ATM
• ATM is just a set of strings where part of the string is the encoding of a Turing Machine (M) and the other part is an input string (w).– The string in ATM are the ones were the input w is accepted by the
Machine M.– The string in the complement of are the ones the input w is rejected
by the Machine M.
• A decider for ATM cannot exist because there are absurd Turing Machines infinite loop or output nothing.
• Detecting such absurdity is impossible because you are limited by the power of the same machine that allows for such absurdity. – Simulating an absurd Turing Machine with another Turing Machine
cannot “undo” it absurdity and allow it to always produce an answer (accept or reject).
Polynomial Verification
• Some problems (Hamiltonian Path) cannot be solved in Polynomial Time (P), but…
• If we could somehow obtain a solution (ask an oracle), the solution could be verified in P-time.
Hamiltonian Path: Decider vs. Verifier
• There is very subtle difference:
• Hamiltonian Decider – Input: Graph– Output: Hamiltonian Path
• Hamiltonian Verifier– Input: Graph, Hamiltonian Path– Output: Accept/Reject
Understand NP in English
• Problems where the solutions can be verified in P-Time, but cannot be “discovered” in P-time
• Problems where the solutions can be “discovered” P-Time using a Non-deterministic Turing Machine
• Note: Every non-deterministic Turing machine can be made deterministic by adding O(kn)
Non-determinism O(kn)
• k is usually 2– Given a graph with n vertices, there are 2n possible
subsets.• 2 options for each vertex• Either you are in the subset (1) on not (0)• Binary state condition
– Given a list with n value, there are 2n possible subsets
Non-determinism O(kn)
“Non deterministically select a subset implies 2n operations.”• This is a loop through a Turing machine state
that has a branching non-deterministic transition
• For each n vertex regardless of the tape symbol– Add (1) the vertex to the subset and continue– Don’t add (2) the vertex and continue
Recommended