Professional Documents
Culture Documents
Automata
Automata
Admistrative Stuff
Instructor: Shahab Baqai (baqai@lums.edu.pk)
Room # 428, Ext 4428
Lectures:
Tutorials:
http://suraj.lums.edu.pk/~cs311a04
Course Organization
Text Book: SJ. E. Hopcroft, R. Motwani, and
J. D. Ullman Introduction to Automata Theory,
Languages, and Computation, Second Edition,
Addison-Wesley, New York, 2001.
Sections:
There are two parallel sections.
The material covered in each will be the same.
The 6~8 assignments, midterm and Final will be
common. Each section may have different quizzes.
Weights:
Homework
Quizzes
Midterm
Final Exam
06~08%
17~19%
35%
40%
What we will do
Automata = abstract computing devices
Turing studied Turing Machines (= computers)
before there were any real computers
We will also look at simpler devices than
Turing machines (Finite State Automata,
Pushdown Automata, . . . ), and specification
means, such as grammars and regular expressions.
Computation
CPU
memory
temporary memory
input memory
CPU
output memory
Program memory
Example:
f ( x) x
temporary memory
input memory
CPU
output memory
Program memory
compute
compute
xx
2
x x
f ( x) x
temporary memory
input memory
x2
CPU
output memory
Program memory
compute
compute
xx
2
x x
temporary memory
z 2*2 4
f ( x) z * 2 8
f ( x) x
input memory
x2
CPU
output memory
Program memory
compute
compute
xx
2
x x
temporary memory
z 2*2 4
f ( x) z * 2 8
f ( x) x
input memory
x2
CPU
Program memory
compute
compute
xx
2
x x
f ( x) 8
output memory
Automaton
temporary memory
Automaton
input memory
CPU
output memory
Program memory
no temporary memory
Pushdown Automata:
stack
Turing Machines:
Finite Automaton
temporary memory
Finite
Automaton
input memory
output memory
Pushdown Automaton
Stack
Pushdown
Automaton
Push, Pop
input memory
output memory
Turing Machine
Random Access Memory
Turing
Machine
input memory
output memory
Power of Automata
Finite
Pushdown
Turing
Automata
Automata
Machine
Less power
More power
Solve more
computational problems