and Models of Computation
|
|
- Noreen Crawford
- 6 years ago
- Views:
Transcription
1 CDT314 FABE Formal anguages, Automata and Models of Computation ecture 12 Mälardalen University
2 Content Chomsky s anguage Hierarchy Turing Machines Determinism Halting TM Examples Standard TM Computing Functions with TM Combining TMs Turing Thesis 2
3 {! : n a n n n { a n b c : n 0} { ww : w { a, b }} ecursively enumerable languages Turing Machines 0} n n { a b : n Context-free languages Push-down Automata t 0} n 2 n { a b : n { ww : w { a, b}*} 0} egular anguages Finite Automata a *b a *b* 3
4 Turing Machines Theoretical Aspects Based on C Busch, PI, Models of Computation 4
5 TUING MACHINES Unlike egular anguages (with Finite Automata, egular Expressions and egular Grammars) and Context Free anguages (with Pushdown Automata and Context Free Grammars) with many practical applications, estriction Free anguages (and corresponding Turing Machines) are primarily important for Theoretical Computer Science as a means of study of the mechanisms and limits of computability. 5
6 Alan Turing Who was Alan Turing? Founder of Computability Theory, Mathematician, Codebreaker, Natural philosopher, Visionary man before his time. Alan Turing archive - Jack Copeland and Diane Proudfoot The Alan Turing Home Page Andrew Hodges 6
7 Alan Turing 1912 (23 June): Birth, ondon : Sherborne School 1930: Death of friend Christopher Morcom : 34: Undergraduate at King's College, Cambridge University : Quantum mechanics, probability, logic 1935: Elected fellow of King's College, Cambridge 1936: The Turing machine, computability, universal machine : Princeton University. Ph.D. ogic, algebra, number theory : eturn to Cambridge. Introduced to German Enigma cipher machine : The Bombe, machine for Enigma decryption : Breaking of U-boat Enigma, saving battle of the Atlantic 7
8 Alan Turing : Chief Anglo-American crypto consultant. Electronic work. 1945: National Physical aboratory, ondon 1946: Computer and software design leading the world : Programming, neural nets, and artificial intelligence 1948: Manchester University 1949: First serious mathematical use of a computer 1950: The Turing Test for machine intelligence 1951: Elected FS. Non-linear theory of biological growth 1952: Arrested as a homosexual, loss of security clearance : Unfinished work in biology and physics 1954 (7 June): Death (suicide) id by cyanide poisoning, i Wilmslow, l Cheshire. hi 8
9 Turing's Work and Scientific egacy The Mathematics of Emergence: The Mysteries of Morphogenesis Possibility of Building a Brain: Intelligent Machines, Practice and Theory Nature of Information: Complexity, andomness, Hiddenness of Information How should we compute? New Models of ogic and Computation 9
10 Hilbert s Program - formalization of mathematics, 1900 Hilbert s hope was that mathematics would be reducible to finding proofs (syntactic manipulating the strings of symbols) from a fixed system of axioms. Can all of mathematics be made algorithmic, or will there always be new problems that surpass any given algorithm, and so require creative acts of mind to solve? 10
11 Turing Machines and Computability The question Hilbert asked was: is there a general method or process by which one could decide whether a mathematical proposition could be proved? But what exactly was meant by a 'method' or 'process'? People had already used the concept of a 'mechanical' process, and Turing had an idea which made this quite precise: computation. 11
12 Turing Machines and Computability The Turing machine concept involves specifying a very restricted set of logical operations, but Turing showed how other more complex mathematical procedures could be built out of these atomic components. Turing argued that his formalism was sufficiently i general to encompass anything that a human being could do when carrying out a definite computation method. Question: How about geometric methods? There is a way to translate geometry into algebra algebraic geometry. 12
13 Turing Machines and Computability Turing's famous paper On computable numbers, with an application to the Entscheidungsproblem, which worked out the theory of Turing machines and the definition of computability, is available as a PDF file on-line:
14 Turing Machines Turing s "Machines". These machines are humans who calculate. (Wittgenstein) A man provided with paper, pencil, and rubber, and subject to strict discipline, is in effect a universal machine. (Turing) 14
15 Turing Machine Examples Based on C Busch, PI, Models of Computation 15
16 Tape... Turing Machine... Control Unit ead-write head 16
17 ... The Tape No boundaries -- infinite length... ead-write head The head moves eft or ight 17
18 ead-write head The head at each time step: 1. eads a symbol 2. Writes a symbol 3. Moves eft or ight 18
19 Example Step 0... a b a c... Step 1... a b k c eads a 2. Writes k 3. Moves eft 19
20 Step 1... a b k c... Step 2... a f k c eads b 2. Writes f 3. Moves ight 20
21 The Input String Input string Blank symbol... # # a b a c # # #... head Head starts t at the leftmost t position of the input string 21
22 States & Transitions ead Write Move eft a b, q q2 1 Move ight a b, q q2 1 22
23 Example Step 1... # # a b a c # # #... q 1 current state a b, q q
24 Step 1... # # a b a c # # #... q 1 Step # # a b b c # # # q 2 a b, q q2 1 24
25 Example Step 1... # # a b a c # # #... q 1 Step # # a b b c # # # q 2 a b, q q2 1 25
26 Example Step 1... # # a b a c # # #... q 1 Step 2... g # # a b b c g # #... # g, q q2 1 q 2 26
27 Determinism Turing Machines are deterministic Allowed Not Allowed q 1 a b, a b, q2 q 2 q d 3 q 3 a d, b d, q 1 No lambda transitions allowed in TM! 27
28 Determinism Note the difference between state indeterminism when not even possible future states are known in advance and choice indeterminism when possible future states are known, but we do not know which state will be taken. 28
29 Example Partial Transition Function... # # a b a c # # #... q 1 q 1 a b, b d, q 2 q 3 Allowed No transition for input symbol c 29
30 Halting The machine halts if there are no possible transitions to follow 30
31 Example... # # a b a c # # #... q 1 a b, b d, q 2 q 3 q 1 No possible transition HAT! 31
32 Final States q q 2 1 Allowed q1 q2 Not Allowed Final states have no outgoing transitions In a final state the machine halts 32
33 Acceptance Accept Input If machine halts in a final state eject Input If machine halts in a non-final state or If machine enters an infinite loop 33
34 Turing Machine Example A TM that accepts the language aa * a a, # #, q 0 q 1 34
35 Step 0 # # a a a # # q 0 a a, # #, q 0 q 1 35
36 Step 1 # # a a a # # q 0 a a, # #, q0 q 1 36
37 Step 2 # # a a a # # q 0 a a, # #, q0 q 1 37
38 Step 3 # # a a a # # q 0 a a, # #, q0 q 1 38
39 Step 4 # # a a a # # q 1 a a, Halt & Accept # #, q 0 q 1 39
40 ejection Example Step 0 # # a b a # # q 0 a a, # #, q0 q 1 40
41 Step 1 # # a b a # # q 0 a a, No possible Transition Halt & eject # #, q0 q 1 41
42 Infinite oop Example Another TM for language aa * b b, a a, # #, q0 q 1 42
43 Step 0 # # a b a # # q 0 b b, a a, q # #, 0 q 1 43
44 Step 1 # # a b a # # q 0 b b, a a, # #,# q0 q 1 44
45 Step 2 # # a b a # # q 0 b b, a a, # #, q0 q 1 45
46 Step 2 # # a b a # # q 0 Step 3 # # a b a # # q 0 Step 4 # # a b a # # q 0 Step 5 # # a b a # #... infinite loop q 0 46
47 Because of the infinite loop: The final state cannot be reached The machine never halts The input is not accepted 47
48 Another Turing Machine Example Turing machine for the language { a n b n } y y, q 4 # #, y y, a a, y y, a a, q 3 y y, a x, q 0 1 q b y, q 2 x x, 48
49 Step 0 # a a b b # # { a n b n } q 0 y y, q 4 # #, y y, a a, y y, a a, q 3 y y, a, x, b y,, q0 1 q q2 x x, 49
50 Step 1 # x a b b # # q 1 { a n b n } y y, q 4 # #,# y y, a a, y y, a a, q 3 y y, a x, q0 1 q b y, q2 x x, 50
51 Step 2 # x a b b # # { a n b n } q 1 y y, q 4 # #, y y, a a, y y, a a, q 3 y y, a x, q0 1 q b y, q2 x x, 51
52 Step 3 # x a y b # # { a n b n } q 2 y y, q 4 # #, y y, a a, y y, a a, q 3 y y, a x, q0 1 q b y, q2 x x, 52
53 Step 4 # x a y b # # { a n b n } q 2 y y, q 4 # #, y y, a a, y y, a a, q 3 y y, a x, q 0 1 q b y, q 2 x x, 53
54 Step 5 # x a y b # # { a n b n } q 0 y y, q 4 # #, y y, a a, y y, a a, q 3 y y, a x, q 0 1 q b y, q 2 x x, 54
55 Step 6 # x x y b # # { a n b n } q 1 y y, q 4 # #, y y, a a, y y, a a, q 3 y y, a x, q 0 1 q b y, q 2 x x, 55
56 Step 7 # x x y b # # { a n b n } q 1 y y, q 4 # #, y y, a a, y y, a a, q 3 y y, a x, q 0 1 q b y, q 2 x x, 56
57 Step 8 # x x y y # # { a n b n } q 2 y y, q 4 # #, y y, a a, y y, a a, q 3 y y, a x, q 0 1 q b y, q 2 x x, 57
58 Step 9 # x x y y # # { a n b n } q 2 y y, q 4 # #, y y, a a, y y, a a, q 3 y y, a x, q 0 1 q b y, q 2 x x, 58
59 Step 10 # x x y y # # { a n b n } q 0 y y, q 4 # #, y y, a a, y y, a a, q 3 y y, a x, q 0 1 q b y, q 2 x x, 59
60 Step 11 # x x y y # # { a n b n } q 3 y y, q 4 # #, y y, a a, y y, a a, q 3 y y, a x, q 0 1 q b y, q 2 x x, 60
61 Step 12 # x x y y # # { a n b n } q 3 y y, q 4 # #, y y, a a, y y, a a, q 3 y y, a x, q 0 1 q b y, q 2 x x, 61
62 Step 13 # x x y y # # { a n b n } q 4 Halt & Accept y y, q 4 # #, y y, a a, y y, a a, q 3 y y, a x, q 0 1 q b y, q 2 x x, 62
63 Observation If we modify the n b n machine for the language g { a } we can easily construct t a machine for the language { a b c } n n n 63
64 Formal Definitions for Turing Machines 64
65 Transition Function a b, q q 2 1 δ ( 2 q 1, a) = ( q, b, ) 65
66 Transition Function c d, q q2 1 δ ( q 1, c ) = ( q2, d, ) 66
67 Turing Machine States Input alphabet Tape alphabet M = ( Q, Σ, Γ, δ, q, #, F 0 ) Transition Final function Initial state blank states 67
68 Configuration # # c a b a # # q 1 Instantaneous description: ca q 1 ba 68
69 Step 4 Step 5 # x a y b # # # x a y b # # q2 q0 A move: q2 xayb a x q0 ayb 69
70 Step 4 Step 5 # x a y b # # # x a y b # # q 2 q q 0 Step 6 Step 7 # x x y b # # # x x y b # # q1 q 1 q2 xayb a x q0 ayb a xx q1 yb a xxy q1 70 b
71 q2xayb a xq0ayb a xxq1 yb a xxq1 b Equivalent notation: q 2 xayb a xxy q 1 b 71
72 Initial configuration: q w q 0 Input string w # a a b b # # q 0 72
73 The Accepted anguage For any Turing Machine M ( M ) = { w : q0 w a x1 q f x2} Initial state Final state 73
74 Standard Turing Machine The machine we described is the standard: Deterministic Infinite tape in both directions Tape is the input/output file 74
75 Computing Functions with Turing Machines 75
76 Af function f (w ) Domain D (domän): has: w D ange S f ( w ) S (värdemängd): 76
77 A function may have many parameters: Example: Addition function f ( x, y) = x + y 77
78 Integer Domain Decimal: 5 Binary: 101 Unary: We prefer unary representation: easier to manipulate 78
79 Definition f A function is computable if M there is a Turing Machine such that: Initial configuration Final configuration # w # # f (w) # q0 initial state q f final state For all w D Domain 79
80 In other words f A function is computable if there is a Turing Machine M such that a q0 w a q f f (w) w Initial Configuration Final Configuration For all w D Domain 80
81 Example (Addition) The function f ( x, y) = x + y is computable x, y are integers Turing Machine: Input string: x00 y unary Output string: xy0 unary 81
82 x y Start 0 # # q 0 initial state x + y Finishi # # q f final state 82
83 Turing machine for function f ( x, y) = x + y 1 1, 1 1, 1 1, 0 1, 1 q0 q 1 2 # #, q 1 0, q3 q 4 # #, 83
84 Execution Example: Time 0 x y =11 x (2) # # y =11 (2) q0 Final esult x + y # # q 4 84
85 f ( x, y) = x + y Step 0 0 # # q 0 1 1, 1 1, 1 1 1, 0 1, # #, q0 q 1 2 q 1 0, q3 q 4 # #, 85
86 f ( x, y) = x + y Step 1 # # q 0 1 1, 1 1, 1 1 1, 0 1, # #, q0 q 1 2 q 1 0, q3 # #, q 4 86
87 Step 2 # # q 0 f ( x, y) = x + y 1 1, 1 1, 1 1, 0 1, # #, q0 q 1 2 q 1 0, q3 q 4 # #, 87
88 f ( x, y) = x + y Step 3 # # q 1 1 1, 1 1, 1 1 1, 0 1, # #, q0 q 1 2 q 1 0, q3 # #, q 4 88
89 f ( x, y) = x + y Step 4 # # q 1 1 1, 1 1, 1 1 1, 1 0 1, # #, q0 q 1 2 q 1 0, q3 q 4 # #, 89
90 f ( x, y) = x + y Step 5 # # q 1 1 1, 1 1, 1 1 1, 0 1, # #, q0 q 1 2 q 1 0, q3 q 4 # #, 90
91 f ( x, y) = x + y Step 6 # # q 2 1 1, 1 1, 1 1 1, 0 1, # #, q0 q 1 2 q 1 0, q3 # #, q 4 91
92 f ( x, y) = x + y Step 7 # # q 3 1 1, 1 1, 1 1 1, 0 1, # #, q0 q 1 2 q 1 0, q3 q 4 # #, 92
93 f ( x, y) = x + y Step 8 # # q 3 1 1, 1 1, 1 1 1, 0 1, # #, q0 q 1 2 q 1 0, q3 q 4 # #, 93
94 f ( x, y) = x + y Step 9 # # q 3 1 1, 1 1, 1 1 1, 1 0 1, # #, q0 q 1 2 q 1 0, q3 q 4 # #, 94
95 f ( x, y) = x + y Step 10 # # q 3 1 1, 1 1, 1 1 1, 0 1, # #, q0 q 1 2 q 1 0, q3 q 4 # #, 95
96 f ( x, y) = x + y Step 11 # # q 3 1 1, 1 1, 1 1 1, 0 1, # #, q0 q 1 2 q 1 0, q3 # #, q 4 96
97 f ( x, y) = x + y Step 12 # # q 4 1 1, 1 1, 1 1, 0 1, # #, q0 q 1 2 q 1 0, q3 HAT & accept q 4 # #, 97
98 Another Example (Multiplication) The function f ( x ) = 2x is computable x is integer Turing Machine Input string: x unary Output string: xx unary 98
99 x Start 1 # 1 1 # q0 initial state 2x Finishi # # q f final state 99
100 Turing Machine Pseudocode for f ( x ) = 2x eplace every 1 with $ epeat: Find rightmost $, replace it with 1 Go to right end, insert 1 Until no more $ remain 100
101 Turing Machine for f ( x ) = 2x 1 $, 1 1, 1 1, # #, q 0 1 # #, q3 q $ 1, q2 # 1, 101
102 Start f ( x) = 2x Finish # 1 1 # # # q 0 1 $, 1 1, q 3 1 1, # #, q $ 1, 0 q 1 q2 # #, q3 # 1, 102
103 Step 0 # 1 # # # 1 f ( x) = 2x q 0 1 $, 1 1, 1 1, # #, $ 1, q q 1 q2 q 0 # #, q3 # 1, 103
104 Step 1 # $ 1 # # # f ( x) = 2x q 0 1 $, 1 1, 1 1, # #, $ 1, q q 1 q2 q 0 # #, q3 # 1, 104
105 Step 2 # $ $ # # # f ( x) = 2x q 0 1 $, 1 1, 1 1, # #, $ 1, q q 1 q2 q 0 # #, q3 # 1, 105
106 Step 3 # # # # $ $ f ( x) = 2x q 1 1 $, 1 1, 1 1, # #, $ 1, q q 1 q2 q 0 # #, q3 # 1, 106
107 Step 4 # 1 # # # $ f ( x) = 2x q 2 1 $, 1 1, 1 1, # #, $ 1, q q 1 q2 q 0 # #, q3 # 1, 107
108 Step 5 # 1 1 # # $ f ( x) = 2x q 1 1 $, 1 1, 1 1, # #, $ 1, q q 1 q2 q 0 # #, q3 # 1, 108
109 Step 6 # 1 1 # # $ f ( x) = 2x q 1 1 $, 1 1, 1 1, # #, $ 1, q q 1 q2 q 0 # #, q3 # 1, 109
110 Step 7 # # # f ( x) = 2x q 2 1 $, 1 1, 1 1, # #, $ 1, q q 1 q2 q 0 # #, q3 # 1, 110
111 Step 8 # # # f ( x) = 2x q 2 1 $, 1 1, 1 1, # #, $ 1, q q 1 q2 q 0 # #, q3 # 1, 111
112 Step 9 # # # f ( x) = 2x q 2 1 $, 1 1, 1 1, # #, $ 1, q q 1 q2 q 0 # #, q3 # 1, 112
113 Step 10 # # f ( x) = 2x q 1 1 $, 1 1, 1 1, # #, $ 1, q q 1 q2 q 0 # #, q3 # 1, 113
114 Step 11 # # f ( x) = 2x q 1 1 $, 1 1, 1 1, # #, $ 1, q q 1 q2 q 0 # #, q3 # 1, 114
115 Step 12 # # f ( x) = 2x q 1 1 $, 1 1, 1 1, # #, $ 1, q q 1 q2 q 0 # #, q3 # 1, 115
116 Step 13 # # f ( x) = 2x q 1 1 $, 1 1, 1 1, # #, $ 1, q q 1 q2 q 0 # #, q3 # 1, 116
117 Step 14 # # f ( x) = 2x q 3 1 $, 1 1, 1 1, # #, $ 1, q q 1 q2 q 0 # #, q3 # 1, 117
118 Yet Another Example Turing Machine for f ( x, y ) = 1 if x > y 0 if x y The function is computable Input: x0y or Output:
119 Turing Machine Pseudocode epeat Match a 1 from x with a 1 from y Until all of x or y are matched x If a 1 from is not matched erase tape, write 1 else erase tape, write 0 119
120 Combining Turing Machines 120
121 Block Diagram input Turing Machine output 121
122 Example x + y if x > y f ( x, y) = 0 x y if Adder x + y x, y x > y Comparer x y 0 Eraser 122
123 Turing s Thesis 123
124 Question: Do Turing machines have the same power as a digital computer? Intuitive answer: Yes There is no formal proof! Among others because computers develop all the time. The Church-Turing Thesis over Arbitrary Domains Udi Boker and Nachum Dershowitz 124
125 Turing s thesis (1930) Any computation carried out by mechanical means can be performed by a Turing Machine. p p p The Origins of the Turing Thesis Myth Goldin & Wegner 125
126 And, the other way round: A computation is mechanical if and only if it can be performed by a Turing Machine. Strong Turing Thesis: There is no known model of computation more powerful than Turing Machine. Wrong. Asynchronous parallel computation is more powerful than TM model, and cannot be reduced to TM. 126
127 Definition of an Algorithm An algorithm for function f (w) is a Turing Machine which computes f (w) 127
128 Algorithms are Turing Machines When we say: There exists an algorithm It means: There exists a Turing Machine. 128
129 anguages, Grammars, Machines properly inclusive anguage Grammar Machine Chomsky Hierarchy Non-computable?? ecursively enumerable (E) ecursive Unrestricted Turing machines 0 Turing machines that always halt 0 Context-sensitive Context-sensitive grammar inear-bounded automata 1 Context-free Context-free grammar Non-deterministic pushdown automata 2 egular egular expressions Finite state automata 3 129
130 { a n! : n 0} { a b : n 0} n n n { a b c : n 0} { ww : w { a, b }} n Unrestricted grammar languages TUING MACHINES Context-free languages PUSH-DOWN AUTOMATA { a n n b : n 0} { ww : w { a, b }*} 2 n egular anguages FINITE AUTOMATA a *b* 130
131 Turing Machine Video Examples EGO Turing Machine g_machines/turing_machines.mov Salling on Turing Machines Overview Turing Machines Subtraction 131
132 Interesting Further eading The Alan Turing World Turing s thesis Computational and evolutionary aspects of language Symposium on Natural/Unconventional Computing AISB/IACAP World Congress 132
HIS LEGACY. 100 Years Turing celebration. Gordana Dodig Crnkovic, IDT Open Seminar. Computer Science and Network Department Mälardalen University
IDT Open Seminar AAN TUING AND HIS EGACY 00 Years Turing celebration http://www.mrtc.mdh.se/~gdc/work/turingcentenary.pdf http://www.mrtc.mdh.se/ mdh se/~gdc/work/turingmachine.pdf Gordana Dodig Crnkovic,
More informationBusch Complexity Lectures: Turing Machines. Prof. Busch - LSU 1
Busch Complexity ectures: Turing Machines Prof. Busch - SU 1 The anguage Hierarchy a n b n c n? ww? Context-Free anguages n b n a ww egular anguages a* a *b* Prof. Busch - SU 2 a n b anguages accepted
More informationTuring Machines. The Language Hierarchy. Context-Free Languages. Regular Languages. Courtesy Costas Busch - RPI 1
Turing Machines a n b n c The anguage Hierarchy n? ww? Context-Free anguages a n b n egular anguages a * a *b* ww Courtesy Costas Busch - PI a n b n c n Turing Machines anguages accepted by Turing Machines
More informationTuring Machines. Wen-Guey Tzeng Computer Science Department National Chiao Tung University
Turing Machines Wen-Guey Tzeng Computer Science Department National Chiao Tung University Alan Turing One of the first to conceive a machine that can run computation mechanically without human intervention.
More informationFinite Automata Theory and Formal Languages TMV027/DIT321 LP4 2018
Finite Automata Theory and Formal Languages TMV027/DIT321 LP4 2018 Lecture 15 Ana Bove May 17th 2018 Recap: Context-free Languages Chomsky hierarchy: Regular languages are also context-free; Pumping lemma
More informationIntroduction to Turing Machines
Introduction to Turing Machines Deepak D Souza Department of Computer Science and Automation Indian Institute of Science, Bangalore. 12 November 2015 Outline 1 Turing Machines 2 Formal definitions 3 Computability
More informationFundamentals of Computer Science
Fundamentals of Computer Science Chapter 8: Turing machines Henrik Björklund Umeå University February 17, 2014 The power of automata Finite automata have only finite memory. They recognize the regular
More informationCSci 311, Models of Computation Chapter 9 Turing Machines
CSci 311, Models of Computation Chapter 9 Turing Machines H. Conrad Cunningham 29 December 2015 Contents Introduction................................. 1 9.1 The Standard Turing Machine...................
More informationCSE 105 Theory of Computation
CSE 105 Theory of Computation http://www.jflap.org/jflaptmp/ Professor Jeanne Ferrante 1 Today s Agenda Quick Review of CFG s and PDA s Introduction to Turing Machines and their Languages Reminders and
More informationBefore We Start. Turing Machines. Languages. Now our picture looks like. Theory Hall of Fame. The Turing Machine. Any questions? The $64,000 Question
Before We Start s Any questions? Languages The $64,000 Question What is a language? What is a class of languages? Now our picture looks like Context Free Languages Deterministic Context Free Languages
More informationTuring machines Finite automaton no storage Pushdown automaton storage is a stack What if we give the automaton a more flexible storage?
Turing machines Finite automaton no storage Pushdown automaton storage is a stack What if we give the automaton a more flexible storage? What is the most powerful of automata? In this lecture we will introduce
More informationcse303 ELEMENTS OF THE THEORY OF COMPUTATION Professor Anita Wasilewska
cse303 ELEMENTS OF THE THEORY OF COMPUTATION Professor Anita Wasilewska LECTURE 13 CHAPTER 4 TURING MACHINES 1. The definition of Turing machine 2. Computing with Turing machines 3. Extensions of Turing
More informationChapter 1 Welcome Aboard
Chapter 1 Welcome Aboard Abstraction Interface Source: http://static.usnews.rankingsandreviews.com/images/auto/izmo/365609/2014_hyundai_elantra_gt_dashboard.jpg http://www.ridelust.com/wp-content/uploads/2012/12/engine2.jpg
More informationDecidability: Church-Turing Thesis
Decidability: Church-Turing Thesis While there are a countably infinite number of languages that are described by TMs over some alphabet Σ, there are an uncountably infinite number that are not Are there
More informationMost General computer?
Turing Machines Most General computer? DFAs are simple model of computation. Accept only the regular languages. Is there a kind of computer that can accept any language, or compute any function? Recall
More informationModels. Models of Computation, Turing Machines, and the Limits of Turing Computation. Effective Calculability. Motivation for Models of Computation
Turing Computation /0/ Models of Computation, Turing Machines, and the Limits of Turing Computation Bruce MacLennan Models A model is a tool intended to address a class of questions about some domain of
More informationFORMAL LANGUAGES, AUTOMATA AND COMPUTABILITY
15-453 FORMAL LANGUAGES, AUTOMATA AND COMPUTABILITY Chomsky Normal Form and TURING MACHINES TUESDAY Feb 4 CHOMSKY NORMAL FORM A context-free grammar is in Chomsky normal form if every rule is of the form:
More informationComputability Theory. CS215, Lecture 6,
Computability Theory CS215, Lecture 6, 2000 1 The Birth of Turing Machines At the end of the 19th century, Gottlob Frege conjectured that mathematics could be built from fundamental logic In 1900 David
More informationChomsky Normal Form and TURING MACHINES. TUESDAY Feb 4
Chomsky Normal Form and TURING MACHINES TUESDAY Feb 4 CHOMSKY NORMAL FORM A context-free grammar is in Chomsky normal form if every rule is of the form: A BC A a S ε B and C aren t start variables a is
More informationTuring Machines. Lecture 8
Turing Machines Lecture 8 1 Course Trajectory We will see algorithms, what can be done. But what cannot be done? 2 Computation Problem: To compute a function F that maps each input (a string) to an output
More informationUndecidability COMS Ashley Montanaro 4 April Department of Computer Science, University of Bristol Bristol, UK
COMS11700 Undecidability Department of Computer Science, University of Bristol Bristol, UK 4 April 2014 COMS11700: Undecidability Slide 1/29 Decidability We are particularly interested in Turing machines
More informationPart I: Definitions and Properties
Turing Machines Part I: Definitions and Properties Finite State Automata Deterministic Automata (DFSA) M = {Q, Σ, δ, q 0, F} -- Σ = Symbols -- Q = States -- q 0 = Initial State -- F = Accepting States
More informationTuring Machines (TM) The Turing machine is the ultimate model of computation.
TURING MACHINES Turing Machines (TM) The Turing machine is the ultimate model of computation. Alan Turing (92 954), British mathematician/engineer and one of the most influential scientists of the last
More informationCS5371 Theory of Computation. Lecture 10: Computability Theory I (Turing Machine)
CS537 Theory of Computation Lecture : Computability Theory I (Turing Machine) Objectives Introduce the Turing Machine (TM)? Proposed by Alan Turing in 936 finite-state control + infinitely long tape A
More informationIntroduction to Turing Machines. Reading: Chapters 8 & 9
Introduction to Turing Machines Reading: Chapters 8 & 9 1 Turing Machines (TM) Generalize the class of CFLs: Recursively Enumerable Languages Recursive Languages Context-Free Languages Regular Languages
More informationTuring s thesis: (1930) Any computation carried out by mechanical means can be performed by a Turing Machine
Turing s thesis: (1930) Any computation carried out by mechanical means can be performed by a Turing Machine There is no known model of computation more powerful than Turing Machines Definition of Algorithm:
More informationTuring machines and linear bounded automata
and linear bounded automata Informatics 2A: Lecture 30 John Longley School of Informatics University of Edinburgh jrl@inf.ed.ac.uk 25 November 2016 1 / 17 The Chomsky hierarchy: summary Level Language
More informationDecision Problems with TM s. Lecture 31: Halting Problem. Universe of discourse. Semi-decidable. Look at following sets: CSCI 81 Spring, 2012
Decision Problems with TM s Look at following sets: Lecture 31: Halting Problem CSCI 81 Spring, 2012 Kim Bruce A TM = { M,w M is a TM and w L(M)} H TM = { M,w M is a TM which halts on input w} TOTAL TM
More informationCS5371 Theory of Computation. Lecture 10: Computability Theory I (Turing Machine)
CS537 Theory of Computation Lecture : Computability Theory I (Turing Machine) Objectives Introduce the Turing Machine (TM) Proposed by Alan Turing in 936 finite-state control + infinitely long tape A stronger
More informationTuring Machines. COMP2600 Formal Methods for Software Engineering. Katya Lebedeva. Australian National University Semester 2, 2014
Turing Machines COMP2600 Formal Methods for Software Engineering Katya Lebedeva Australian National University Semester 2, 2014 Slides created by Jeremy Dawson and Ranald Clouston COMP 2600 Turing Machines
More informationTheory of Computation (IX) Yijia Chen Fudan University
Theory of Computation (IX) Yijia Chen Fudan University Review The Definition of Algorithm Polynomials and their roots A polynomial is a sum of terms, where each term is a product of certain variables and
More informationChapter 3: The Church-Turing Thesis
Chapter 3: The Church-Turing Thesis 1 Turing Machine (TM) Control... Bi-direction Read/Write Turing machine is a much more powerful model, proposed by Alan Turing in 1936. 2 Church/Turing Thesis Anything
More informationCS4026 Formal Models of Computation
CS4026 Formal Models of Computation Turing Machines Turing Machines Abstract but accurate model of computers Proposed by Alan Turing in 1936 There weren t computers back then! Turing s motivation: find
More informationTuring machines and linear bounded automata
and linear bounded automata Informatics 2A: Lecture 29 John Longley School of Informatics University of Edinburgh jrl@inf.ed.ac.uk 27 November 2015 1 / 15 The Chomsky hierarchy: summary Level Language
More informationTheory of Computation Turing Machine and Pushdown Automata
Theory of Computation Turing Machine and Pushdown Automata 1. What is a Turing Machine? A Turing Machine is an accepting device which accepts the languages (recursively enumerable set) generated by type
More informationTuring Machines Part II
Turing Machines Part II COMP2600 Formal Methods for Software Engineering Katya Lebedeva Australian National University Semester 2, 2016 Slides created by Katya Lebedeva COMP 2600 Turing Machines 1 Why
More informationTuring Machines (TM) Deterministic Turing Machine (DTM) Nondeterministic Turing Machine (NDTM)
Turing Machines (TM) Deterministic Turing Machine (DTM) Nondeterministic Turing Machine (NDTM) 1 Deterministic Turing Machine (DTM).. B B 0 1 1 0 0 B B.. Finite Control Two-way, infinite tape, broken into
More informationTuring machines and linear bounded automata
and linear bounded automata Informatics 2A: Lecture 29 John Longley School of Informatics University of Edinburgh jrl@inf.ed.ac.uk 25 November, 2011 1 / 13 1 The Chomsky hierarchy: summary 2 3 4 2 / 13
More informationChapter 8. Turing Machine (TMs)
Chapter 8 Turing Machine (TMs) Turing Machines (TMs) Accepts the languages that can be generated by unrestricted (phrase-structured) grammars No computational machine (i.e., computational language recognition
More informationTuring Machines A Turing Machine is a 7-tuple, (Q, Σ, Γ, δ, q0, qaccept, qreject), where Q, Σ, Γ are all finite
The Church-Turing Thesis CS60001: Foundations of Computing Science Professor, Dept. of Computer Sc. & Engg., Turing Machines A Turing Machine is a 7-tuple, (Q, Σ, Γ, δ, q 0, q accept, q reject ), where
More informationCS21 Decidability and Tractability
CS21 Decidability and Tractability Lecture 8 January 24, 2018 Outline Turing Machines and variants multitape TMs nondeterministic TMs Church-Turing Thesis So far several models of computation finite automata
More informationTuring machines COMS Ashley Montanaro 21 March Department of Computer Science, University of Bristol Bristol, UK
COMS11700 Turing machines Department of Computer Science, University of Bristol Bristol, UK 21 March 2014 COMS11700: Turing machines Slide 1/15 Introduction We have seen two models of computation: finite
More informationEquivalent Variations of Turing Machines
Equivalent Variations of Turing Machines Nondeterministic TM = deterministic TM npda = pushdown automata with n stacks 2PDA = npda = TM for all n 2 Turing machines with n tapes (n 2) and n tape heads has
More informationTuring Machines. Nicholas Geis. February 5, 2015
Turing Machines Nicholas Geis February 5, 2015 Disclaimer: This portion of the notes does not talk about Cellular Automata or Dynamical Systems, it talks about turing machines, however this will lay the
More informationTheory of Computation
Theory of Computation Lecture #6 Sarmad Abbasi Virtual University Sarmad Abbasi (Virtual University) Theory of Computation 1 / 39 Lecture 6: Overview Prove the equivalence of enumerators and TMs. Dovetailing
More informationCS154, Lecture 10: Rice s Theorem, Oracle Machines
CS154, Lecture 10: Rice s Theorem, Oracle Machines Moral: Analyzing Programs is Really, Really Hard But can we more easily tell when some program analysis problem is undecidable? Problem 1 Undecidable
More informationX-machines - a computational model framework.
Chapter 2. X-machines - a computational model framework. This chapter has three aims: To examine the main existing computational models and assess their computational power. To present the X-machines as
More informationAutomata & languages. A primer on the Theory of Computation. Laurent Vanbever. ETH Zürich (D-ITET) October,
Automata & languages A primer on the Theory of Computation Laurent Vanbever www.vanbever.eu ETH Zürich (D-ITET) October, 19 2017 Part 5 out of 5 Last week was all about Context-Free Languages Context-Free
More informationLecture 13: Turing Machine
Lecture 13: Turing Machine Instructor: Ketan Mulmuley Scriber: Yuan Li February 19, 2015 Turing machine is an abstract machine which in principle can simulate any computation in nature. Church-Turing Thesis:
More informationThe Church-Turing Thesis
The Church-Turing Thesis Huan Long Shanghai Jiao Tong University Acknowledgements Part of the slides comes from a similar course in Fudan University given by Prof. Yijia Chen. http://basics.sjtu.edu.cn/
More informationLecture notes on Turing machines
Lecture notes on Turing machines Ivano Ciardelli 1 Introduction Turing machines, introduced by Alan Turing in 1936, are one of the earliest and perhaps the best known model of computation. The importance
More informationState Machines. Example FSM: Roboant
page 1 State Machines 1) State Machine Design 2) How can we improve on FSMs? 3) Turing Machines 4) Computability Oh genie, will you now tell me what it means to compute? Doctor, I think you ve built a
More information10. Finite Automata and Turing Machines
. Finite Automata and Turing Machines Frank Stephan March 2, 24 Introduction Alan Turing s th Birthday Alan Turing was a completely original thinker who shaped the modern world, but many people have never
More informationCSE 105 THEORY OF COMPUTATION
CSE 105 THEORY OF COMPUTATION Fall 2016 http://cseweb.ucsd.edu/classes/fa16/cse105-abc/ Today's learning goals Sipser Ch 3 Trace the computation of a Turing machine using its transition function and configurations.
More informationCOMP-330 Theory of Computation. Fall Prof. Claude Crépeau. Lec. 16 : Turing Machines
COMP-330 Theory of Computation Fall 2017 -- Prof. Claude Crépeau Lec. 16 : Turing Machines COMP 330 Fall 2017: Lectures Schedule 1-2. Introduction 1.5. Some basic mathematics 2-3. Deterministic finite
More informationTuring Machines Part III
Turing Machines Part III Announcements Problem Set 6 due now. Problem Set 7 out, due Monday, March 4. Play around with Turing machines, their powers, and their limits. Some problems require Wednesday's
More informationIV. Turing Machine. Yuxi Fu. BASICS, Shanghai Jiao Tong University
IV. Turing Machine Yuxi Fu BASICS, Shanghai Jiao Tong University Alan Turing Alan Turing (23Jun.1912-7Jun.1954), an English student of Church, introduced a machine model for effective calculation in On
More informationHarvard CS 121 and CSCI E-121 Lecture 14: Turing Machines and the Church Turing Thesis
Harvard CS 121 and CSCI E-121 Lecture 14: Turing Machines and the Church Turing Thesis Harry Lewis October 22, 2013 Reading: Sipser, 3.2, 3.3. The Basic Turing Machine The Basic Turing Machine a a b a
More informationCSCI3390-Assignment 2 Solutions
CSCI3390-Assignment 2 Solutions due February 3, 2016 1 TMs for Deciding Languages Write the specification of a Turing machine recognizing one of the following three languages. Do one of these problems.
More informationTuring Machines and the Church-Turing Thesis
CSE2001, Fall 2006 1 Turing Machines and the Church-Turing Thesis Today our goal is to show that Turing Machines are powerful enough to model digital computers, and to see discuss some evidence for the
More informationDecidable Languages - relationship with other classes.
CSE2001, Fall 2006 1 Last time we saw some examples of decidable languages (or, solvable problems). Today we will start by looking at the relationship between the decidable languages, and the regular and
More informationThe purpose here is to classify computational problems according to their complexity. For that purpose we need first to agree on a computational
1 The purpose here is to classify computational problems according to their complexity. For that purpose we need first to agree on a computational model. We'll remind you what a Turing machine is --- you
More information7.1 The Origin of Computer Science
CS125 Lecture 7 Fall 2016 7.1 The Origin of Computer Science Alan Mathison Turing (1912 1954) turing.jpg 170!201 pixels On Computable Numbers, with an Application to the Entscheidungsproblem 1936 1936:
More informationBusch Complexity Lectures: Turing s Thesis. Costas Busch - LSU 1
Busch Complexity Lectures: Turing s Thesis Costas Busch - LSU 1 Turing s thesis (1930): Any computation carried out by mechanical means can be performed by a Turing Machine Costas Busch - LSU 2 Algorithm:
More informationThe Turing Machine. CSE 211 (Theory of Computation) The Turing Machine continued. Turing Machines
The Turing Machine Turing Machines Professor Department of Computer Science and Engineering Bangladesh University of Engineering and Technology Dhaka-1000, Bangladesh The Turing machine is essentially
More informationSection 14.1 Computability then else
Section 14.1 Computability Some problems cannot be solved by any machine/algorithm. To prove such statements we need to effectively describe all possible algorithms. Example (Turing machines). Associate
More informationCSE 2001: Introduction to Theory of Computation Fall Suprakash Datta
CSE 2001: Introduction to Theory of Computation Fall 2013 Suprakash Datta datta@cse.yorku.ca Office: CSEB 3043 Phone: 416-736-2100 ext 77875 Course page: http://www.cse.yorku.ca/course/2001 11/7/2013 CSE
More informationTuring Machines. Wolfgang Schreiner
Turing Machines Wolfgang Schreiner Wolfgang.Schreiner@risc.jku.at Research Institute for Symbolic Computation (RISC) Johannes Kepler University, Linz, Austria http://www.risc.jku.at Wolfgang Schreiner
More informationTURING MAHINES
15-453 TURING MAHINES TURING MACHINE FINITE STATE q 10 CONTROL AI N P U T INFINITE TAPE read write move 0 0, R, R q accept, R q reject 0 0, R 0 0, R, L read write move 0 0, R, R q accept, R 0 0, R 0 0,
More informationThe Turing Machine. Computability. The Church-Turing Thesis (1936) Theory Hall of Fame. Theory Hall of Fame. Undecidability
The Turing Machine Computability Motivating idea Build a theoretical a human computer Likened to a human with a paper and pencil that can solve problems in an algorithmic way The theoretical provides a
More informationCS Lecture 28 P, NP, and NP-Completeness. Fall 2008
CS 301 - Lecture 28 P, NP, and NP-Completeness Fall 2008 Review Languages and Grammars Alphabets, strings, languages Regular Languages Deterministic Finite and Nondeterministic Automata Equivalence of
More informationLecture 19: Universality and Computability
Fundamental Questions Lecture 19: Universality and Computability Universality What is a general purpose computer? Computability Are there problems that no machine can solve? Church-Turing thesis Are there
More informationAutomata Theory (2A) Young Won Lim 5/31/18
Automata Theory (2A) Copyright (c) 2018 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later
More informationDesigning 1-tape Deterministic Turing Machines
MCS-265: The Theory of Computation Handout #T1 San Skulrattanakulchai Gustavus Adolphus College April 5, 2011 Designing 1-tape Deterministic Turing Machines A TM corresponds to a computer program. We will
More informationFORMAL LANGUAGES, AUTOMATA AND COMPUTATION
FORMAL LANGUAGES, AUTOMATA AND COMPUTATION DECIDABILITY ( LECTURE 15) SLIDES FOR 15-453 SPRING 2011 1 / 34 TURING MACHINES-SYNOPSIS The most general model of computation Computations of a TM are described
More informationCST Part IB. Computation Theory. Andrew Pitts
Computation Theory, L 1 1/171 CST Part IB Computation Theory Andrew Pitts Corrections to the notes and extra material available from the course web page: www.cl.cam.ac.uk/teaching/0910/comptheory/ Introduction
More informationUniversality and Computability. 7.4 Turing Machines. Fundamental Questions. Turing Machine
Fundamental Questions Universality and Computability Q. What is a general-purpose computer? Q. Are there limits on the power of digital computers? Q. Are there limits on the power of machines we can build?
More informationTheory of Computer Science
Theory of Computer Science D1. Turing-Computability Malte Helmert University of Basel April 18, 2016 Overview: Course contents of this course: logic How can knowledge be represented? How can reasoning
More informationThe Unsolvability of the Halting Problem. Chapter 19
The Unsolvability of the Halting Problem Chapter 19 Languages and Machines SD D Context-Free Languages Regular Languages reg exps FSMs cfgs PDAs unrestricted grammars Turing Machines D and SD A TM M with
More informationFinal Exam Comments. UVa - cs302: Theory of Computation Spring < Total
UVa - cs302: Theory of Computation Spring 2008 Final Exam Comments < 50 50 59 60 69 70 79 80 89 90 94 95-102 Total 2 6 8 22 16 16 12 Problem 1: Short Answers. (20) For each question, provide a correct,
More informationTheory of Computation - Module 4
Theory of Computation - Module 4 Syllabus Turing Machines Formal definition Language acceptability by TM TM as acceptors, Transducers - designing of TM- Two way infinite TM- Multi tape TM - Universal Turing
More informationUndecidable Problems. Z. Sawa (TU Ostrava) Introd. to Theoretical Computer Science May 12, / 65
Undecidable Problems Z. Sawa (TU Ostrava) Introd. to Theoretical Computer Science May 12, 2018 1/ 65 Algorithmically Solvable Problems Let us assume we have a problem P. If there is an algorithm solving
More informationFoundations of
91.304 Foundations of (Theoretical) Computer Science Chapter 3 Lecture Notes (Section 3.3: Definition of Algorithm) David Martin dm@cs.uml.edu With modifications by Prof. Karen Daniels, Fall 2012 This
More informationSequence of Topics. 1. The Nature of Truth. 2. Biography of Alan Turing ( ) 3. The Church-Turing Thesis. 4. Interactive Computing
1 Sequence of Topics 1. The Nature of Truth 2. Biography of Alan Turing (1912-1954) 3. The Church-Turing Thesis 4. Interactive Computing 5. Rationalism Versus Empiricism 6. Can Machines Think? 7. Stephen
More informationCPSC 421: Tutorial #1
CPSC 421: Tutorial #1 October 14, 2016 Set Theory. 1. Let A be an arbitrary set, and let B = {x A : x / x}. That is, B contains all sets in A that do not contain themselves: For all y, ( ) y B if and only
More informationECS 120 Lesson 15 Turing Machines, Pt. 1
ECS 120 Lesson 15 Turing Machines, Pt. 1 Oliver Kreylos Wednesday, May 2nd, 2001 Before we can start investigating the really interesting problems in theoretical computer science, we have to introduce
More informationChapter 7 Turing Machines
Chapter 7 Turing Machines Copyright 2011 The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 1 A General Model of Computation Both finite automata and pushdown automata are
More informationTuring Machines. Fall The Chinese University of Hong Kong. CSCI 3130: Formal languages and automata theory
The Chinese University of Hong Kong Fall 2011 CSCI 3130: Formal languages and automata theory Turing Machines Andrej Bogdanov http://www.cse.cuhk.edu.hk/~andrejb/csc3130 Turing Machines control head a
More informationTuring s Thesis. Fall Costas Busch - RPI!1
Turing s Thesis Costas Busch - RPI!1 Turing s thesis (1930): Any computation carried out by mechanical means can be performed by a Turing Machine Costas Busch - RPI!2 Algorithm: An algorithm for a problem
More informationMA/CSSE 474 Theory of Computation
MA/CSSE 474 Theory of Computation CFL Hierarchy CFL Decision Problems Your Questions? Previous class days' material Reading Assignments HW 12 or 13 problems Anything else I have included some slides online
More informationCSCE 551: Chin-Tser Huang. University of South Carolina
CSCE 551: Theory of Computation Chin-Tser Huang huangct@cse.sc.edu University of South Carolina Church-Turing Thesis The definition of the algorithm came in the 1936 papers of Alonzo Church h and Alan
More informationCS Lecture 29 P, NP, and NP-Completeness. k ) for all k. Fall The class P. The class NP
CS 301 - Lecture 29 P, NP, and NP-Completeness Fall 2008 Review Languages and Grammars Alphabets, strings, languages Regular Languages Deterministic Finite and Nondeterministic Automata Equivalence of
More informationTheory of Computation Lecture Notes. Problems and Algorithms. Class Information
Theory of Computation Lecture Notes Prof. Yuh-Dauh Lyuu Dept. Computer Science & Information Engineering and Department of Finance National Taiwan University Problems and Algorithms c 2004 Prof. Yuh-Dauh
More informationTuring Machines COMP1600 / COMP6260. Dirk Pattinson Australian National University. Semester 2, 2017
Turing Machines COMP1600 / COMP6260 Dirk Pattinson Australian National University Semester 2, 2017 Catch Up / Drop in Lab When Fridays, 15.00-17.00 Where N335, CSIT Building (bldg 108) Until the end of
More informationComputational Models - Lecture 6
Computational Models - Lecture 6 Turing Machines Alternative Models of Computers Multitape TMs, RAMs, Non Deterministic TMs The Church-Turing Thesis The language classes R = RE core David Hilbert s Tenth
More informationTheory of Computation CS3102 Spring 2014 A tale of computers, math, problem solving, life, love and tragic death
Theory of Computation CS3102 Spring 2014 A tale of computers, math, problem solving, life, love and tragic death Nathan Brunelle Department of Computer Science University of Virginia www.cs.virginia.edu/~njb2b/theory
More informationVariants of Turing Machine (intro)
CHAPTER 3 The Church-Turing Thesis Contents Turing Machines definitions, examples, Turing-recognizable and Turing-decidable languages Variants of Turing Machine Multi-tape Turing machines, non-deterministic
More informationCOMP-330 Theory of Computation. Fall Prof. Claude Crépeau. Lec. 14 : Turing Machines
COMP-330 Theory of Computation Fall 2012 -- Prof. Claude Crépeau Lec. 14 : Turing Machines 1 COMP 330 Fall 2012: Lectures Schedule 1. Introduction 1.5. Some basic mathematics 2. Deterministic finite automata
More informationLimits of Computation
The real danger is not that computers will begin to think like men, but that men will begin to think like computers Limits of Computation - Sydney J. Harris What makes you believe now that I am just talking
More informationEquivalence of TMs and Multitape TMs. Theorem 3.13 and Corollary 3.15 By: Joseph Lauman
Equivalence of TMs and Multitape TMs Theorem 3.13 and Corollary 3.15 By: Joseph Lauman Turing Machines First proposed by Alan Turing in 1936 Similar to finite automaton, but with an unlimited and unrestricted
More information