Languages and Finite Automata - PowerPoint PPT Presentation

1 / 102
About This Presentation
Title:

Languages and Finite Automata

Description:

We prefer unary representation: easier to manipulate with Turing machines. 71. Definition: ... unary. are integers. 74. Start. initial state. The 0 is the ... – PowerPoint PPT presentation

Number of Views:40
Avg rating:3.0/5.0
Slides: 103
Provided by: cost70
Category:

less

Transcript and Presenter's Notes

Title: Languages and Finite Automata


1
Formal Languages Turing Machines Hinrich
Schütze IMS, Uni Stuttgart, WS 2006/07 Slides
based on RPI CSCI 2400 Thanks to Costas Busch
2
The Language Hierarchy
?
?
Context-Free Languages
Regular Languages
3
Languages accepted by Turing Machines
Context-Free Languages
Regular Languages
4
A Turing Machine
Tape
......
......
Read-Write head
Control Unit
5
The Tape
No boundaries -- infinite length
......
......
Read-Write head
The head moves Left or Right
6
......
......
Read-Write head
The head at each time step 1.
Reads a symbol 2. Writes a
symbol 3. Moves Left or Right
7
Example
Time 0
......
......
Time 1
......
......
1. Reads
2. Writes
3. Moves Left
8
Time 1
......
......
Time 2
......
......
1. Reads
2. Writes
3. Moves Right
9
The Input String
Input string
Blank symbol
......
......
head
Head starts at the leftmost position of the input
string
10
Input string
Blank symbol
......
......
head
Remark the input string is never empty
11
States Transitions
Write
Read
Move Left
Move Right
12
Example
Time 1
......
......
current state
13
Time 1
......
......
Time 2
......
......
14
Example
Time 1
......
......
Time 2
......
......
15
Example
Time 1
......
......
Time 2
......
......
16
Determinism
Turing Machines are deterministic
Not Allowed
Allowed
No lambda transitions allowed
17
Partial Transition Function
Example
......
......
Allowed
No transition for input symbol
18
Halting
The machine halts if there are no possible
transitions to follow
19
Example
......
......
No possible transition
HALT!!!
20
Final States
Allowed
Not Allowed
  • Final states have no outgoing transitions
  • In a final state the machine halts

21
Acceptance
If machine halts in a final state
Accept Input
If machine halts in a non-final state
or If machine enters an infinite loop
Reject Input
22
Turing Machine Example
Language?
23
Turing Machine Example
A Turing machine that accepts the language
24
Time 0
25
Time 1
26
Time 2
27
Time 3
28
Time 4
Halt Accept
29
Rejection Example
Time 0
30
Time 1
No possible Transition
Halt Reject
31
Language?
32
Infinite Loop Example
A Turing machine for language
33
Time 0
34
Time 1
35
Time 2
36
Time 2
Time 3
Infinite loop
Time 4
Time 5
37
  • Because of the infinite loop
  • The final state cannot be reached
  • The machine never halts
  • The input is not accepted

38
Another Turing Machine Example
Language?
39
Another Turing Machine Example
Turing machine for the language
40
Time 0
41
Time 1
42
Time 2
43
Time 3
44
Time 4
45
Time 5
46
Time 6
47
Time 7
48
Time 8
49
Time 9
50
Time 10
51
Time 11
52
Time 12
53
Time 13
Halt Accept
54
Observation
If we modify the machine for the language
we can easily construct a machine for the
language
55
Machine for L vvv in a,b ?

56
Formal Definitionsfor Turing Machines

57
Transition Function
58
Transition Function
59
Turing Machine
Input alphabet
Tape alphabet
States
Transition function
Final states
Initial state
blank
60
Configuration
Instantaneous description
61
Time 4
Time 5
A Move
62
Time 4
Time 5
Time 6
Time 7
63
Equivalent notation
64
Initial configuration
Input string
65
The Accepted Language
For any Turing Machine
Initial state
Final state
66
Standard Turing Machine
The machine we described is the standard
  • Deterministic
  • Infinite tape in both directions
  • Tape is the input/output file

67
Computing FunctionswithTuring Machines

68
A function
has
Range
Domain
69
A function may have many parameters
Example
Addition function
70
Integer Domain
Decimal
5
Binary
101
Unary
11111
71
Definition
A function is computable if there is
a Turing Machine such that
Initial configuration
Final configuration
final state
initial state
For all
Domain
72
In other words
A function is computable if there is
a Turing Machine such that
Initial Configuration
Final Configuration
For all
Domain
73
Example
is computable
The function
are integers
Turing Machine
Input string
unary
Output string
unary
74
Start
initial state
The 0 is the delimiter that separates the two
numbers
75
Start
initial state
Finish
final state
76
The 0 helps when we use the result for other
operations
Finish
final state
77
Turing machine for function
78
Execution Example
Time 0
(2)
(2)
Final Result
79
Time 0
80
Time 1
81
Time 2
82
Time 3
83
Time 4
84
Time 5
85
Time 6
86
Time 7
87
Time 8
88
Time 9
89
Time 10
90
Time 11
91
Time 12
HALT accept
92
Another Example
is computable
The function
is integer
Turing Machine
Input string
unary
Output string
unary
93
Start
initial state
Finish
final state
94
Turing Machine Pseudocode for
  • Replace every 1 with
  • Repeat
  • Find rightmost , replace it with 1
  • Go to right end, insert 1

Until no more remain
95
Turing Machine for
96
Example
Start
Finish
97
Another Example
if
The function
if
is computable
98
Turing Machine for
if
if
Input
or
Output
99
Turing Machine Pseudocode
  • Repeat

Match a 1 from with a 1 from
Until all of or is matched
  • If a 1 from is not matched
  • erase tape, write 1
  • else
  • erase tape, write 0

100
Combining Turing Machines

101
Block Diagram
Turing Machine
input
output
102
Example
if
if
Adder
Comparer
Eraser
Write a Comment
User Comments (0)
About PowerShow.com