1 / 21

CS355 – The Mathematics and Theory of Computer Science

CS355 – The Mathematics and Theory of Computer Science. Reducibility. Mapping reducibility. Being able to reduce problem A to problem B by using a mapping reducibility means that a computable function exists that converts instances of problem A to problem B .

gravesl
Télécharger la présentation

CS355 – The Mathematics and Theory of Computer Science

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. CS355 – The Mathematics and Theory of Computer Science Reducibility

  2. Mapping reducibility • Being able to reduce problem A to problem B by using a mapping reducibility means that a computable function exists that converts instances of problem A to problem B. • If we have such a conversion function called a reduction, we can solve A with a solver for B. • The reason is that any instance of A can be solved by first using the reduction to convert it to an instance of B and then applying the solver to B. Dr. A. Mooney, Dept. of Computer Science, NUI Maynooth

  3. Computable function • A function f: Σ* → Σ* is a computable function if some Turing machine M, on every input w, halts with just f(w) on its tape. • All usual arithmetic operations on integers are computable functions. Dr. A. Mooney, Dept. of Computer Science, NUI Maynooth

  4. Mapping reducibility • Language A is mapping reducible to language B, written A ≤m B, if there is a computable function f: Σ* → Σ*, where for every w, • w A <=> f(w) B. • The function f is called the reduction of A to B. Dr. A. Mooney, Dept. of Computer Science, NUI Maynooth

  5. Mapping reducibility A B f f reducing A to B Dr. A. Mooney, Dept. of Computer Science, NUI Maynooth

  6. Mapping reducibility • A mapping reduction of A to B provides a way to convert questions about membership testing in A to membership testing in B. • To test whether wA, we use the reduction f to map w to f(w) and test whether f(w) B. • The term mapping reduction comes from the function or mapping that provides the means of doing the reduction. Dr. A. Mooney, Dept. of Computer Science, NUI Maynooth

  7. Mapping reducibility • If one problem is mapping reducible to a second, previously solved problem, we can thereby obtain a solution to the original problem. • Let us look at this. Dr. A. Mooney, Dept. of Computer Science, NUI Maynooth

  8. Reducibility • If A reduces to B and B is decidable, then A is decidable • To decide A, convert A to B and decide B. • If A reduces to B and B is undecidable, then B is undecidable • If B is decidable, then by above A is decidable, contradiction. Dr. A. Mooney, Dept. of Computer Science, NUI Maynooth

  9. Turing-recognisable • If A≤mB and A is not Turing-recognisable then B is not Turing-recognisable. Dr. A. Mooney, Dept. of Computer Science, NUI Maynooth

  10. Completeness • …suppose we know that there is a problem A not in class X. By finding a reduction from A to B we can prove that B is not in X either. Dr. A. Mooney, Dept. of Computer Science, NUI Maynooth

  11. Completeness • IF A, B are problems, X is a class of problems, and R is a class of reductions, then If B ≤R A for every B X, we say that A is hard for X under R reductions, or, R-hard for X. Dr. A. Mooney, Dept. of Computer Science, NUI Maynooth

  12. Completeness • If is also happens that A X, then we say that A iscomplete for X under R reductions orR-complete for X. Dr. A. Mooney, Dept. of Computer Science, NUI Maynooth

  13. Completeness • Rather than looking at a specific class of reductions we will just look at m-reductions which we can use to get a more concise terminology. Dr. A. Mooney, Dept. of Computer Science, NUI Maynooth

  14. Completeness • If A, B are languages and X is a class of languages, If B ≤mp A for every B X, we say that A is X-hard (≤mp–hard for X). • So, if A is X-hard then it is at least as hard as every problem in X. Dr. A. Mooney, Dept. of Computer Science, NUI Maynooth

  15. Completeness • If A X and A is X-hard, then we say that: A is X-complete(≤mp -complete for X). Dr. A. Mooney, Dept. of Computer Science, NUI Maynooth

  16. Completeness • If X, Y are two classes of problems (or their associated languages) such that X Y, then • Any language B that is Y-complete does not belong to X. B Y X Dr. A. Mooney, Dept. of Computer Science, NUI Maynooth

  17. Completeness • A is X-complete • B is X-hard and Y-complete • C is X-hard, Y-hard and Z-complete B A C Y X Dr. A. Mooney, Dept. of Computer Science, NUI Maynooth

  18. Completeness • The meaning of the word “complete” is not intuitive. • It comes from Godel’s and Kleene’s recursive function theory, and is used to denote that: A solution to any problem in the set can be applied to all others in the set. Dr. A. Mooney, Dept. of Computer Science, NUI Maynooth

  19. Completeness • Some points to note: • If A is X-complete it can be viewed as being typical of the “hardest” problems found in X. • Problems which are hard or complete on one machine-based family of language X will have the same properties on all other machine models. Dr. A. Mooney, Dept. of Computer Science, NUI Maynooth

  20. Completeness • Almost all reductions establishing hardness or completeness of specific problems not only transform solvable instances into solvable instances, but also general solutions into general solutions. Dr. A. Mooney, Dept. of Computer Science, NUI Maynooth

  21. Completeness • Many complete problems have the property that one can efficiently compute a solution as soon as one can prove that a solution exists. • Solving one PSPACE-complete problem in polynomial time implies that all PSPACE problems are in P. Dr. A. Mooney, Dept. of Computer Science, NUI Maynooth

More Related