Presentation is loading. Please wait.

Presentation is loading. Please wait.

CS355 – The Mathematics and Theory of Computer Science Reducibility.

Similar presentations


Presentation on theme: "CS355 – The Mathematics and Theory of Computer Science Reducibility."— Presentation transcript:

1 CS355 – The Mathematics and Theory of Computer Science Reducibility

2 Dr. A. Mooney, Dept. of Computer Science, NUI Maynooth 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.

3 Dr. A. Mooney, Dept. of Computer Science, NUI Maynooth 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.

4 Dr. A. Mooney, Dept. of Computer Science, NUI Maynooth 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.

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

6 Dr. A. Mooney, Dept. of Computer Science, NUI Maynooth 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 w A, 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.

7 Dr. A. Mooney, Dept. of Computer Science, NUI Maynooth 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.

8 Dr. A. Mooney, Dept. of Computer Science, NUI Maynooth 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.

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

10 Dr. A. Mooney, Dept. of Computer Science, NUI Maynooth 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.

11 Dr. A. Mooney, Dept. of Computer Science, NUI Maynooth 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.

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

13 Dr. A. Mooney, Dept. of Computer Science, NUI Maynooth 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.

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

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

16 Dr. A. Mooney, Dept. of Computer Science, NUI Maynooth 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. X Y B

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

18 Dr. A. Mooney, Dept. of Computer Science, NUI Maynooth 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.

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

20 Dr. A. Mooney, Dept. of Computer Science, NUI Maynooth Completeness 3.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.

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


Download ppt "CS355 – The Mathematics and Theory of Computer Science Reducibility."

Similar presentations


Ads by Google