introduction automata
TRANSCRIPT
-
8/9/2019 Introduction Automata
1/18
Fall 2005 Costas Busch - RPI 1
CSCI-2400
Models of Computation
-
8/9/2019 Introduction Automata
2/18
Fall 2005 Costas Busch - RPI 2
Syllabus: tentative class schedule
can be found in course web page
http://www.cs.rpi.edu/~buschc/courses/modcomp/fall2005
Grading: Weekly Homeworks: 34%
3 Exams: 66% (each 22%)
Instructor: Costas Busch
General Info for the Course
-
8/9/2019 Introduction Automata
3/18
Fall 2005 Costas Busch - RPI 3
Book: Introduction to the
Theory of Computation
Michael Sipser, 2nd edition
Chapters that will be covered: 1-5,7
-
8/9/2019 Introduction Automata
4/18
Fall 2005 Costas Busch - RPI 4
Computation
CPU memory
Outline of the course contents
-
8/9/2019 Introduction Automata
5/18
Fall 2005 Costas Busch - RPI 5
CPUinput
output
Program memory
temporary memory
-
8/9/2019 Introduction Automata
6/18
Fall 2005 Costas Busch - RPI 6
CPUinput
output
Program memory
temporary memory
3)( xxf !
compute xx
compute
xx
2
Example:
-
8/9/2019 Introduction Automata
7/18
Fall 2005 Costas Busch - RPI 7
CPU
input
output
Program memory
temporary memory
3)( xxf !
compute xx
compute
xx
2
2!
x
-
8/9/2019 Introduction Automata
8/18
Fall 2005 Costas Busch - RPI 8
CPU
input
output
Program memory
temporary memory 3)( xxf !
compute xx
compute
xx
2
2!
x
42*2 !!z
82*)( !! zxf
-
8/9/2019 Introduction Automata
9/18
Fall 2005 Costas Busch - RPI 9
CPU
input
outputProgram memory
temporary memory 3)( xxf !
compute xx
compute
xx
2
2!
x
42*2 !!z
82*)( !! zxf
8)( !xf
-
8/9/2019 Introduction Automata
10/18
Fall 2005 Costas Busch - RPI 10
Automaton
CPUinput
output
Program memory
temporary memory
Automaton
-
8/9/2019 Introduction Automata
11/18
Fall 2005 Costas Busch - RPI 11
Automaton
input
output
temporary memory
Automaton
state
transition
-
8/9/2019 Introduction Automata
12/18
Fall 2005 Costas Busch - RPI 12
Different Kinds of Automata
Automata are distinguished by the temporary memory
Finite Automata: no temporary memory
Pushdown Automata: stack
Turing Machines: random access memory
-
8/9/2019 Introduction Automata
13/18
Fall 2005 Costas Busch - RPI 13
input
output
temporary memory
FiniteAutomaton
Finite Automaton
Example: Vending Machines
(small computing power)
-
8/9/2019 Introduction Automata
14/18
Fall 2005 Costas Busch - RPI 14
input
output
Stack
Pushdown
Automaton
Pushdown Automaton
Example: Compilers for Programming Languages
(medium computing power)
Push, PopTemp.
memory
-
8/9/2019 Introduction Automata
15/18
Fall 2005 Costas Busch - RPI 15
input
output
Random Access Memory
Turing
Machine
Turing Machine
Examples: Any Algorithm
(highest computing power)
Temp.memory
-
8/9/2019 Introduction Automata
16/18
Fall 2005 Costas Busch - RPI 16
Finite
AutomataPushdownAutomata
TuringMachine
Power of Automata
Less power More power
Solve more
computational problems
Simpleproblems
More complexproblems
Hardestproblems
-
8/9/2019 Introduction Automata
17/18
Fall 2005 Costas Busch - RPI 17
Turing Machine is the most powerful
computational model known
Question:A
re there computationalproblems that a Turing Machine
cannot solve?
Answer: Yes (unsolvable problems)
-
8/9/2019 Introduction Automata
18/18
Fall 2005 Costas Busch - RPI 18
Time Complexity of Computational Problems:
NP-complete problems
P problems
Believed to take exponential
time to be solved
Solved in polynomial time