Csc3130 formal languages and automata theory tutorial 9 undecidable problem
This presentation is the property of its rightful owner.
Sponsored Links
1 / 40

CSC3130 Formal Languages and Automata Theory Tutorial 9 Undecidable Problem PowerPoint PPT Presentation


  • 56 Views
  • Uploaded on
  • Presentation posted in: General

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

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.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Csc3130 formal languages and automata theory tutorial 9 undecidable problem

CSC3130Formal Languages andAutomata TheoryTutorial 9Undecidable Problem

KN Hung

SHB 1026


Agenda

Agenda

  • Recap

    • Decidibility, Undecidibility, Turing-Recognizable …

  • Reduction

  • Undecidable Problem


Recap

Recap


Recap recognize

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


Recap decide

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


Recognize vs decide

Recognize VS Decide

  • Recognize = Halts for accepting input

  • Decide = Halts for all inputs

  • Decide => Recognize

  • Make sure that you can distinguish these two concepts!


Recap able ability

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


Recognizability vs decidibility

Recognizability VS Decidibility

Turing-Recognizable

Decidable

For a language, L, located here,there is no machine that halts for all input string


Some decidable problems

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}


Some undecidable problems

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)


Reduction

Reduction


Reduction1

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


Reduction2

Reduction

Buy an air ticket

Reduce to

Travel to Japan

The problem “To buy an air ticket”enclosesThe problem “To travel to Japan”


Reduction3

Reduction

B

Reduce to

A

Problem B“encloses”ASo, B is solved => A is solvedThus, B is no harder than A!


Reduction4

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


Undecidable problems

Undecidable Problems


Example 1

Example 1

  • Show that REGULARTM is undecidable

  • REGULARTM = {<M> | M is a TM and L(M) is a regular language}


Regular tm is undecidable

REGULARTM is undecidable?

  • Idea (By Contradiction):

    • Assume there is a TM R that decides REGULARTM

    • Construct a TM S that decides ATM

    • Contradiction!


Construction of s

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


Idea of m

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…]


Construction of m

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?


Construction of m1

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”


L m in relation to s

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’


Regular tm is undecidable1

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!


  • Example 2

    Example 2

    • L = {<M, w> |M accepts all strings shorter than w}

    • Show that L is undecidable


    L is undecidable

    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!


    Construction of s1

    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


    Idea of m1

    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


    Idea of m2

    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


    Construction of m2

    Construction of M’

    • M’ = “On input x:

      • If x =ε

        Run M on w

        Output the answer

      • If x ≠ε

        Reject


    Construction of m3

    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”


    Construction of m4

    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”


    L m in relation to s1

    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”>


    L is undecidable1

    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!


  • Conclusion

    Conclusion


    Pf undecidability by reduction

    Pf: Undecidability by Reduction

    • Given an undecidable language, L

    • Assume such a decider TM R, exists

    R


    Pf undecidability by reduction1

    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


    Pf undecidability by reduction2

    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


    Pf undecidability by reduction3

    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


    Csc3130 formal languages and automata theory tutorial 9 undecidable problem

    Q & A

    • Thanks for coming!

    • I understand that this topic is confusing…

    • Should have some questions?


  • Login