1 / 40

CSC3130 Formal Languages and Automata Theory Tutorial 9 Undecidable Problem

CSC3130 Formal Languages and Automata Theory Tutorial 9 Undecidable Problem. KN Hung SHB 1026. Agenda. Recap Decidibility, Undecidibility, Turing-Recognizable … Reduction Undecidable Problem. Recap. Recap: Recognize. Given a language L and a machine M “ M recognizes L ” iff

osma
Download Presentation

CSC3130 Formal Languages and Automata Theory Tutorial 9 Undecidable Problem

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. CSC3130Formal Languages andAutomata TheoryTutorial 9Undecidable Problem KN Hung SHB 1026

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

  3. Recap

  4. Recap: Recognize • Given a language L and a machine M “MrecognizesL” 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. Recap: Decide • Given a language L and a machine M “MdecidesL” 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. 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. Recap: ~able / ~ability • L is Turing-recognizable iffthere is a TM that recognizes L • L is decidable iffthere is a TM that decides L • L is undecidable iffthere is no TM that decides L

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

  9. Some Decidable Problems • The following problems are decidable • ADFA = {<A, w> | A is a DFA that accepts w} • ANFA = {<A, w> | A is a NFA that accepts w} • EDFA= {<A, w> | A is a DFA and L(A) = Ø} • EQDFA = {<A, B> | A, B are DFAs, L(A) = L(B)} • ACFG = {<G, w> | G is a CFG that generates w}

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

  11. Reduction

  12. Reduction • Occurs in daily life… • Problem A: Travel to Japan • Problem B: Buying a air ticket to Japan • Problem Areduces toProblem B • Meaning: Settling B automatically solves A • Put in logical statement: B is solvable  A is solvable

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

  14. Reduction B Reduce to A Problem B“encloses”ASo, B is solved => A is solvedThus, B is no harder than A!

  15. Reduction B • 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 Reduced to A

  16. Undecidable Problems

  17. Example 1 • Show that REGULARTM is undecidable • REGULARTM = {<M> | M is a TM and L(M) is a regular language}

  18. REGULARTM is undecidable? • Idea (By Contradiction): • Assume there is a TM R that decides REGULARTM • Construct a TM S that decides ATM • Contradiction!

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

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

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

  22. Construction of M’ • For strings of form 0n1n, 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: • If x has the form 0n1n, accept • If x does not have this form, run M on input wand output answer”

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

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

  25. Example 2 • L = {<M, w> |M accepts all strings shorter than w} • Show that L is undecidable

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

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

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

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

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

  31. Construction of M’ • For M’ • If M accepts w • the only possibility is input isε ANDM’ 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. 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. 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 <M’, “1”> • Otherwise (i.e., M loops on or rejects w) • L(M’) = Ø • S rejects <M’, “1”>

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

  35. Conclusion

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

  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 Input Modify M M’ w 37

  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 Input Modify M M’ w 38

  39. Pf: Undecidability by Reduction “M acc w” then ACC Otherwise,REJ • 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 ATM • Contradiction!! R Input Modify M M’ w

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

More Related