Lesson 0
Lesson 0
Lecture
#0
Theory Of Automata
&
Formal Languages
Syed M. Saqlain 1
Why This Course?
Philosophy of computer science (CS)
Indispensable for complete study of CS
Broadening views in all fields of CS
Enhancing problem solving capability
Basic training for undergraduate students
Background course for graduate students
Qualify exam topic for Ph. D. students.
2
Objectives of Course
The three major foundations of computer science,
the mathematical description of computational
networks,
the limitations of mechanical computation, and
the formal specification of languages
4
Course Outlines
Non-Deterministic Finite Automata
NFA to FA Conversion
NFA and Kleene’s Theorem
FA with output
Applications of incrementing and
Complementing machines
Regular Languages
5
Course Outlines
Pumping Lemma
CFG
Trees
Chomsky Normal Form
PushDown Automata
6
Text and Reference Material
8
General Concepts
Course title ---
“Theory of Automata & Formal
Languages”
Scope of course:
Formal languages
Automata theory
9
General Concepts
Formal Languages ---
Definition --- study of “strings of symbols,”
including their
descriptions,properties,
generations, recognitions,
compiling, Applications …
Discrete signals, … 10
General Concepts
Formal Languages ---
Results of study of automatic processing
of symbolic information
Parallel to numerical mathematical
processing
Similar to the role of set theory in
mathematics
11
General Concepts
Automata Theory ---
A question ---
Do you know how a vending machine
works? Can you design one?
Vending machine
room seen in
Hokkaido, Japan
2004
12
General Concepts
Automata Theory ---
An example (1/2) ---
How to design a vending machine?
Use a finite automaton!
13
General Concepts
start $0 $5 $5 $10 $5
15
General Concepts
Automata Theory ---
Examples of discrete-parameter
information systems ---
digital systems, nerve systems, languages
information transmission systems
human-environment interactions, …
16
General Concepts
Automata Theory ---
Three major models of automata ---
generator --- with output and without input
acceptor --- with input and without output
transducer --- both with input and with output
trigger Yes
signal or
No
18
General Concepts
Automata Theory ---
Examples ---
acceptor ---
digital lock (accepting digits)
lexical analyzer (recognizing keywords
in computer languages)
finite automaton (accepting valid
strings of symbols) ***
(*** abstract models studied in this course)
Digital lock
19
General Concepts
Automata Theory ---
Examples ---
transducer ---
Interpreter (translating natural
languages)
Compiler (translating high-level
languages into machine codes)
Turing machine (transforming strings
of symbols) ***
(*** abstract models studied in this course)
“Interpreter”
雙面翻譯
(a movie)
20
Summing UP
Why This Course, Objectives of Course,
Course Outlines, Grading policy,
General Concepts of Formal
Languages and Automata.
21