Csc3130 formal languages and automata theory tutorial 9 undecidable problem
Download
1 / 40

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


  • 87 Views
  • Uploaded on

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

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'CSC3130 Formal Languages and Automata Theory Tutorial 9 Undecidable Problem' - osma


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



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



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!



  • 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?