Download presentation
Presentation is loading. Please wait.
Published byGeoffrey Ambrose Byrd Modified over 8 years ago
1
1 Turing Machines
2
2 The Language Hierarchy Regular Languages Context-Free Languages ? ?
3
3 Regular Languages Context-Free Languages Languages accepted by Turing Machines
4
4 A Turing Machine...... Tape Read-Write head Control Unit
5
5 The Tape...... Read-Write head No boundaries -- infinite length The head moves Left or Right
6
6...... Read-Write head The head at each time step: 1. Reads a symbol 2. Writes a symbol 3. Moves Left or Right
7
7...... Example: Time 0...... Time 1 1. Reads 2. Writes 3. Moves Left
8
8...... Time 1...... Time 2 1. Reads 2. Writes 3. Moves Right
9
9 The Input String...... Blank symbol head Head starts at the leftmost position of the input string Input string
10
10...... Blank symbol head Input string Remark: the input string is never empty
11
11 States & Transitions Read Write Move Left Move Right
12
12 Example:...... Time 1 current state
13
13...... Time 1...... Time 2
14
14...... Time 1...... Time 2 Example:
15
15...... Time 1...... Time 2 Example:
16
16 Determinism Allowed Not Allowed No lambda transitions allowed Turing Machines are deterministic
17
17 Partial Transition Function...... Example: No transition for input symbol Allowed:
18
18 Halting The machine halts if there are no possible transitions to follow
19
19 Example:...... No possible transition HALT!!!
20
20 Final States Allowed Not Allowed Final states have no outgoing transitions In a final state the machine halts
21
21 Acceptance Accept Input If machine halts in a final state Reject Input If machine halts in a non-final state or If machine enters an infinite loop
22
22 Turing Machine Example A Turing machine that accepts the language:
23
23 Time 0
24
24 Time 1
25
25 Time 2
26
26 Time 3
27
27 Time 4 Halt & Accept
28
28 Rejection Example Time 0
29
29 Time 1 No possible Transition Halt & Reject
30
30 Infinite Loop Example A Turing machine for language
31
31 Time 0
32
32 Time 1
33
33 Time 2
34
34 Time 2 Time 3 Time 4 Time 5 Infinite loop
35
35 Because of the infinite loop: The final state cannot be reached The machine never halts The input is not accepted
36
36 Formal Definitions for Turing Machines
37
37 Transition Function
38
38 Transition Function
39
39 Turing Machine: States Input alphabet Tape alphabet Transition function Initial state blank Final states
40
40 Configuration Instantaneous description:
41
41 Time 4Time 5 A Move:
42
42 Time 4Time 5 Time 6Time 7
43
43 Equivalent notation:
44
44 Initial configuration: Input string
45
45 The Accepted Language For any Turing Machine Initial stateFinal state
46
46 Standard Turing Machine Deterministic Infinite tape in both directions Tape is the input/output file The machine we described is the standard:
47
47 Computing Functions with Turing Machines
48
48 A function Domain: Result Region: has:
49
49 A function may have many parameters: Example: Addition function
50
50 Integer Domain Unary: Binary: Decimal: 11111 101 5 We prefer unary representation: easier to manipulate with Turing machines
51
51 Definition: A function is computable if there is a Turing Machine such that: Initial configurationFinal configuration Domain final stateinitial state For all
52
52 Initial Configuration Final Configuration A function is computable if there is a Turing Machine such that: In other words: Domain For all
53
53 Example The function is computable Turing Machine: Input string: unary Output string: unary are integers
54
54 Start initial state The 0 is the delimiter that separates the two numbers
55
55 Start Finish final state initial state
56
56 Finish final state The 0 helps when we use the result for other operations
57
57 Turing machine for function
58
58 Execution Example: Time 0 Final Result (2)
59
59 Time 0
60
60 Time 1
61
61 Time 2
62
62 Time 3
63
63 Time 4
64
64 Time 5
65
65 Time 6
66
66 Time 7
67
67 Time 8
68
68 Time 9
69
69 Time 10
70
70 Time 11
71
71 HALT & accept Time 12
72
72 Another Example The function is computable Turing Machine: Input string: unary Output string:unary is integer
73
73 Start Finish final state initial state
74
74 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
75
75 Turing Machine for
76
76 Example Start Finish
77
77 Another Example The function is computable if
78
78 Turing Machine for Input: Output: or if
79
79 Turing Machine Pseudocode: Match a 1 from with a 1 from Repeat Until all of or is matched If a 1 from is not matched erase tape, write 1 else erase tape, write 0
80
80 Combining Turing Machines
81
81 Block Diagram Turing Machine inputoutput
82
82 Example: if Comparer Adder Eraser
83
83 Turing’s Thesis
84
84 Turing’s thesis: Any computation carried out by mechanical means can be performed by a Turing Machine (1930)
85
85 Computer Science Law: A computation is mechanical if and only if it can be performed by a Turing Machine There is no known model of computation more powerful than Turing Machines
86
86 Definition of Algorithm: An algorithm for function is a Turing Machine which computes
87
87 When we say: There exists an algorithm Algorithms are Turing Machines We mean: There exists a Turing Machine that executes the algorithm
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.