0% found this document useful (0 votes)
10 views

Lesson 0

This document provides an introduction to a course on theory of automata and formal languages. It outlines the objectives of the course, topics to be covered, reference materials, and general concepts regarding formal languages and automata theory.
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
10 views

Lesson 0

This document provides an introduction to a course on theory of automata and formal languages. It outlines the objectives of the course, topics to be covered, reference materials, and general concepts regarding formal languages and automata theory.
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 21

Welcome to !

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

 This course attempts to make it possible for the


average student to develop the standard
mathematical models of computational devices,
as well as investigating the cognitive and
generative capabilities of such machines. The
engineering viewpoint is addressed. 3
Course Outlines
 Languages
 Recursive Definitions
 Regular Expression
 Finite Automata
 Transition Graph
 Generalized Transition Graph
 Kleene’s Theorem

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

1. Introduction to Computer Theory, by


Daniel I. Cohen, John Wiley and Sons, Inc.,
1991, Second Edition
2. An Introduction to Formal Languages &
Automata
7
Grading

Mid-Term Exams. 20%


Assignments 15%
Quiz 5%
Final Exams. 60%

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 …

 Strings of symbols include those of


 natural languages,
 computer languages,

 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!

Assume (for simplicity):


 Only NT 5-dollar and 10-dollar coins are
used.
 Only drinks all of 20 dollars are sold.

13
General Concepts

 Automata Theory ---


 An example (cont’d) --- need “memory” called
“states” $5
$10
$15
$5

start $0 $5 $5 $10 $5

$10 $10 transition diagram


$10 $20

Notes: $10 $5 is returned as “output” (not


shown)
start $0 “Start state” $20 “Final state”
14
General Concepts
 Automata Theory ---
 Definition --- study of dynamic
behaviors of “discrete-parameter
information systems” in form of
“abstract computing devices, or
“machines”

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

generator acceptor transducer


17
General Concepts
 Automata Theory ---
 Examples ---
 generator ---
 “natural” grammar (generating
“sentences” spoken by people)
 reception robot (speaking organized
words and sentences)
 context-free grammar (generating
strings of symbols) ***
(*** abstract models studied in this course) Reception robot
--- Expo 2005

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

You might also like