1 Turing Machines
2 The Language Hierarchy Regular Languages Context-Free Languages ? ?
3 Regular Languages Context-Free Languages Languages accepted by Turing Machines
4 A Turing Machine Tape Read-Write head Control Unit
5 The Tape Read-Write head No boundaries -- infinite length The head moves Left or Right
Read-Write head The head at each time step: 1. Reads a symbol 2. Writes a symbol 3. Moves Left or Right
Example: Time Time 1 1. Reads 2. Writes 3. Moves Left
Time Time 2 1. Reads 2. Writes 3. Moves Right
9 The Input String Blank symbol head Head starts at the leftmost position of the input string Input string
10 States & Transitions Read Write Move Left Move Right
11 Example: Time 1 current state
Time Time 2
Time Time 2 Example:
Time Time 2 Example:
15 Determinism Allowed Not Allowed No lambda transitions allowed Turing Machines are deterministic
16 Partial Transition Function Example: No transition for input symbol Allowed:
17 Halting The machine halts if there are no possible transitions to follow
18 Example: No possible transition HALT!!!
19 Final States Allowed Not Allowed Final states have no outgoing transitions In a final state the machine halts
20 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
21 Turing Machine Example A Turing machine that accepts the language:
22 Time 0
23 Time 1
24 Time 2
25 Time 3
26 Time 4 Halt & Accept
27 Rejection Example Time 0
28 Time 1 No possible Transition Halt & Reject
29 Infinite Loop Example Another Turing machine for language
30 Time 0
31 Time 1
32 Time 2
33 Time 2 Time 3 Time 4 Time 5... Infinite Loop
34 Because of the infinite loop: The final state cannot be reached The machine never halts The input is not accepted
35 Another Turing Machine Example Turing machine for the language
36 Time 0
37 Time 1
38 Time 2
39 Time 3
40 Time 4
41 Time 5
42 Time 6
43 Time 7
44 Time 8
45 Time 9
46 Time 10
47 Time 11
48 Time 12
49 Halt & Accept Time 13
50 If we modify the machine for the language we can easily construct a machine for the language Observation:
51 Formal Definitions for Turing Machines
52 Transition Function
53 Transition Function
54 Turing Machine: States Input alphabet Tape alphabet Transition function Initial state blank Final states
55 Configuration Instantaneous description:
56 Time 4Time 5 A Move:
57 Time 4Time 5 Time 6Time 7
58 Equivalent notation:
59 Initial configuration: Input string
60 The Accepted Language For any Turing Machine Initial stateFinal state
61 Standard Turing Machine Deterministic Infinite tape in both directions Tape is the input/output file The machine we described is the standard: