630 likes | 773 Views
ATM, Halting Problem, P vs. NP. Chapter 4, 5 & 7. 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.
E N D
ATM, Halting Problem, P vs. NP Chapter 4, 5 & 7
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 • If the non-recursive index lists itself then its recursive and shouldn’t be in the list. • 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).
Chapter 7 Time Complexity
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)