Limits of Finite State Machines - PowerPoint PPT Presentation

1 / 11
About This Presentation
Title:

Limits of Finite State Machines

Description:

We saw that FSMs are limited: there is no recogniser for the palindrome language ... Palindrome checking. Twice 0s for 1s. Anything a computer can do! ... – PowerPoint PPT presentation

Number of Views:462
Avg rating:3.0/5.0
Slides: 12
Provided by: derek69
Category:

less

Transcript and Presenter's Notes

Title: Limits of Finite State Machines


1
Limits of Finite State Machines
  • We saw that FSMs are limited there is no
    recogniser for the palindrome language
  • A similar argument can be used to prove other
    languages cannot be recognised by FSMs
  • For example, the language of strings containing
    exactly twice as many 0s as 1s

2
No FSM for twice 0s for 1s
  • Suppose there is such a machine, M
  • M has finitely many states, say n of them
  • Suppose we feed n 1s into M, then M must revisit
    some state call it SR and suppose it is first
    visited after x 1s and again after y 1s (x lt y)
  • Then, after x 1s M is in SR and if we then feed
    in 2x 0s and finish, M should accept the string
  • However, if we feed in y 1s M will be in SR and
    so will accept a string with 2x further 0s
  • This is a problem, since that string is not in
    the language and M cannot accept it!

3
What is missing?
  • FSMs have repetition can revisit states via
    transitions
  • FSMs have conditional behaviour transitions
    depend on inputs
  • But FSMs only have finite memory capacity
  • The proofs of limitation all depend on
    overflowing the FSM memory

4
Adding Memory to FSMs
  • Turing Machines extend FSMs by adding a memory
    unit
  • Memory is modelled as an infinite tape of cells,
    with a read-write head over one of the cells
  • Inputs now come from the tape and outputs are
    written into the cell over the top of the input
  • In addition, each transition of the machine is
    coupled with a movement of the head, left or
    right, along the tape

5
Turing Machines
6
Simple Example
  • A Turing Machine to check for palindromes

0/0/R 1/1/R
Read 1
1/_/R
_/_/R
Start
1?
_/_/L
0/0/R 1/1/R
1/_/L
Read 0
_/Y/.
0/N/. _/N/.
0/_/R
_/_/L
Back to start
0?
0/0/L 1/1/L
Stop
0/_/L
1/N/. _/N/.
7
What can Turing Machines do?
  • Everything a FSM can do!
  • Arbitrary simple arithmetic
  • Palindrome checking
  • Twice 0s for 1s
  • Anything a computer can do!

8
Are Turing Machines really computers?
  • Each Turing Machine computes one function its
    control is hardwired
  • Turing showed that there is a family of Turing
    Machines that can simulate the behaviour of a
    Turing Machine from a description given on the
    tape
  • A Universal Turing Machine

9
Universal Turing Machines
  • A Universal Turing Machine is essentially a
    programmable computer the program is a Turing
    Machine description on its tape

10
How complex are UTMs?
  • There is a Universal Turing Machine using only 10
    states (for a language of 0,1,_)
  • The number of states can be reduced by using more
    special symbols
  • With a language of 18 symbols (including _) there
    is a machine with just 2 states!

11
Is there anything a Turing Machine cannot do?
  • Are there problems a computer cannot solve?
  • This raises important questions about the nature
    of human problem-solving and its limits
Write a Comment
User Comments (0)
About PowerShow.com