Download presentation

Presentation is loading. Please wait.

Published byCollin Simmons Modified over 5 years ago

1
1 CSC3130 Formal Languages and Automata Theory Tutorial 9 Undecidable Problem KN Hung SHB 1026

2
2 Agenda Recap –Decidibility, Undecidibility, Turing- Recognizable … Reduction Undecidable Problem

3
3 Recap

4
4 Recap: Recognize Given a language L and a machine M “ M recognizes L ” iff “For any w ∈ L, M halts and goes to an accepting state” “ M is a recognizer for L ” However, for w ∉ L, M may –Reject –Loop forever

5
5 Recap: Decide Given a language L and a machine M “ M decides L ” iff “For any w ∈ L, M halts and accepts AND Otherwise, M rejects” “ M is a decider for L ” Meaning: M can determine whether a given string is in L or not

6
6 Recognize VS Decide Recognize = Halts for accepting input Decide = Halts for all inputs Decide => Recognize Make sure that you can distinguish these two concepts!

7
7 Recap: ~able / ~ability L is Turing-recognizable iff there is a TM that recognizes L L is decidable iff there is a TM that decides L L is undecidable iff there is no TM that decides L

8
8 Recognizability VS Decidibility Turing- Recognizable Decidable For a language, L, located here, there is no machine that halts for all input string

9
9 Some Decidable Problems The following problems are decidable –A DFA = { | A is a DFA that accepts w} –A NFA = { | A is a NFA that accepts w} –E DFA = { | A is a DFA and L(A) = Ø} –EQ DFA = { | A, B are DFAs, L(A) = L(B)} –A CFG = { | G is a CFG that generates w}

10
10 Some Undecidable Problems The following problems are undecidable –A TM = { | M is a TM that accepts w} To prove undecidability of a problem using reduction, A TM is used very frequently (nearly in all situations) Used in Example 1 and 2 (Later slides)

11
11 Reduction

12
12 Reduction Occurs in daily life… Problem A : Travel to Japan Problem B : Buying a air ticket to Japan Problem A reduces to Problem B –Meaning: Settling B automatically solves A –Put in logical statement: B is solvable A is solvable

13
13 Reduction Buy an air ticket Travel to Japan Reduce to The problem “To buy an air ticket” encloses The problem “To travel to Japan”

14
14 Reduction B A Reduce to Problem B “encloses” A So, B is solved => A is solved Thus, B is no harder than A !

15
15 Reduction A reduces to B A is reducible to B –If B is solved, then A is solved –i.e., Whenever there is a solution to B, then there is a solution to A If A cannot be solved, then B cannot be solved (Contrapositive) Thus, B is no harder than A B A Reduced to

16
16 Undecidable Problems

17
17 Example 1 Show that REGULAR TM is undecidable REGULAR TM = { | M is a TM and L(M) is a regular language }

18
18 REGULAR TM is undecidable? Idea (By Contradiction): –Assume there is a TM R that decides REGULAR TM –Construct a TM S that decides A TM –Contradiction!

19
19 Construction of S On input –where M is a TM and w is a string: Construct M’ by M and w Run R on Output the answer

20
20 Idea of M’ Strategy: Convert M into another TM M’ : M’ recognizes a regular language iff M accepts w If M accepts w, let M’ recognizes {0, 1}* Otherwise, let M’ recognizes {0 n 1 n } With the above properties –When we run R on, the output is “accept” iff M accepts w –Why…? [See next few slides…]

21
21 Construction of M’ M’ = “On input x : 1. If x has the form 0 n 1 n, accept 2. If x does not have this form, run M on input w and output answer” {0 n 1 n } is recognized by M’ anyway How about the other strings?

22
22 Construction of M’ For strings of form 0 n 1 n, M’ accepts For all the other strings, listing all cases… –If M accepts w they are all accepted by M’ –If M rejects w they are all rejected by M’ –If M loops on w they all loop on M’ M’ = “On input x : 1. If x has the form 0 n 1 n, accept 2. If x does not have this form, run M on input w and output answer”

23
23 L(M’) in relation to S If M accepts w –M’ recognizes {0 n 1 n } ∪ {0,1}* –{0,1}* is regular –R will accept M’ If M does not accept w –M’ recognizes {0 n 1 n } ∪ Ø –{0 n 1 n } is not regular –R will reject M’

24
24 REGULAR TM is undecidable Assume “ R that decides REGULAR TM ” exists We construct S to decide A TM “On input, where M is a TM and w is a string: 1.Construct the following TM M’ M’ = “On input x : 1.If x has the form 0 n 1 n, accept 2.If x does not have this form, run M on input w and accept if M accepts w ” 2. Run R on input 3. Output the output of R ” Now, S decides A TM … Contradiction!

25
25 Example 2 L = { | M accepts all strings shorter than w} Show that L is undecidable

26
26 L is undecidable? L = { | M accepts all strings shorter than w} Again, we try to use the undecidability of A TM to achieve a contradiction Idea (By Contradiction): –Assume there is a TM R that decides L –Construct a TM (by R ), S that decides A TM –Contradiction!

27
27 Construction of S On input –where M is a TM and w is a string: Construct M’ by M and w Run R on –This time, we have a TM that takes 2 arguments – a TM, and a string – as inputs –Think what string to put as the 2 nd input Output the answer

28
28 Idea of M’ Strategy: Convert M into another TM M’ : M’ accepts all strings shorter than z iff M accepts w We want to achieve the following: –When we run R on, the output is “accept” iff M accepts w

29
29 Idea of M’ Strategy: Convert M into another TM M’ : M’ accepts all strings shorter than “ 1 ” iff M accepts w We want to achieve the following: –When we run R on, the output is “accept” iff M accepts w

30
30 Construction of M’ M’ = “On input x : 1. If x =ε Run M on w Output the answer 2. If x ≠ε Reject

31
31 Construction of M’ For M’ –If M accepts w the only possibility is input isε AND M’ accepts ε –If M rejects w, Case 1: x = ε –M’ rejects Case 2: x ≠ε –M’ rejects –If M loops on w Case 1: x = ε –M’ loops Case 2: x ≠ε –M’ rejects M’ = “On input x : If x = ε run M on w and output answer If x ≠ε reject”

32
32 Construction of M’ For M’ –If M accepts w M’ accepts only ε –Otherwise M’ does not accepts any string –including ε M’ = “On input x : If x = ε run M on w and output answer If x ≠ε reject”

33
33 L(M’) in relation to S If M accepts w –L(M’) = { ε } –{ ε } is exactly the language that contains all string shorter than “1” –S accepts Otherwise (i.e., M loops on or rejects w ) –L(M’) = Ø –S rejects

34
34 L is undecidable Assume “ R that decides REGULAR TM ” exists We construct S to decide A TM “On input, where M is a TM and w is a string: 1.Construct the following TM M’ M’ = “On input x : 1. If x =ε Run M on x Output the answer 2. If x ≠ε Reject 2. Run R on input 3. Output the output of R ” Now, S decides A TM … Contradiction!

35
35 Conclusion

36
36 Pf: Undecidability by Reduction R Given an undecidable language, L Assume such a decider TM R, exists

37
37 Given an undecidable language, L Assume such a decider TM R, exists Construct a TM, M’, by M and w –M is from input Pf: Undecidability by Reduction R MM’ Modify Input w

38
38 Given an undecidable language, L Assume such a decider TM R, exists Construct a TM, M’, by M and w –M is from input Feed M’ to R Pf: Undecidability by Reduction R MM’ Modify Input w

39
39 Given an undecidable language, L Assume such a decider TM R, exists Construct a TM, M’, by M and w –M is from input Feed M’ to R If you are right –R will accept M’ iff M accepts w –R will reject M’ iff M does not accept w Thus, you obtain a decider for A TM –Contradiction!! Pf: Undecidability by Reduction R MM’ Modify Input “M acc w” then ACC Otherwise, REJ w

40
40 Q & A Thanks for coming! I understand that this topic is confusing… Should have some questions?

Similar presentations

© 2020 SlidePlayer.com Inc.

All rights reserved.

To make this website work, we log user data and share it with processors. To use this website, you must agree to our Privacy Policy, including cookie policy.

Ads by Google