Lecture 1 2 (Automata Fundamentals)
Lecture 1 2 (Automata Fundamentals)
Formal Languages
Autumn 2023
Dr. Soumya Ranjan Nayak
School of Computer Engineering
KIIT University, Bhubaneswar
1
Objectives
Introduce concepts in automata theory and theory
of computation
Identify different formal language classes and
their relationships
To know about Chomsky hierarchy for organizing
languages
Design grammars and recognizers for different
formal languages
Prove or disprove theorems in automata theory
using its properties
Determine the decidability and intractability of
computational problems
2
Course Organization
Very broadly, the course will contain
Sic parts:
Part I) Finite Automata (FA)
Part II) Regular Expression (RE)
Part III) Context-Free Grammer &
Context Free Languages
Part IV) Push Down Automata (PDA)
Part V) Turing Maching &
undecidibility Problem
3
Grading Policy
Assignments/quizzes/activities: 30 Marks
Mid-semester exam: 20 Marks
End-semester exam: 50 Marks
Total=100 Marks
4
Pre-requisites
Data Structures
Discrete Structures
5
Required Textbook
Introduction to Automata Theory, Languages and
Computation
By J.E. Hopcroft, R. Motwani, J.D. Ullman
3rd Edition
Addison Wesley/Pearson
6
Required Reference book
An Introduction to Formal Language and
Automata, Peter Linz, Jones & Bartlett
Publishers, 6th Edition.
Elements of the theory of computation, Lewis,
Harry R. and Christos H. Papadimitriou
Prentice- Hall Englewood, 2nd Edition.
Introduction to the Theory of Computation,
Michel Sipser, Thomson Brooks/Cole, 2nd
Edition.
Theory of computer science by KLP Mishra &
N. Chandra Sekharan ,PHI, 3rd edition.
7
Course Webpage
https://nptel.ac.in/courses/111/103/11110301
6/:by Dr.K.V.Krishnaand, Dr.D.Goswami, IIT
Guwahati
https://nptel.ac.in/courses/106/106/10610604
9/:by Prof.K.Krithivasan, IIT Madras
https://nptel.ac.in/courses/106/105/10610519
6/:by Prof.S.Mukhopadhyay, IIT Kharagpur
https://www.ics.uci.edu/∼goodrich/teach/cs16
2/notes/:by Prof.M.T.Goodrich, University of
California, Irvine, USA
8
Homework Submission Policy
Cheating:
Helping others, getting help, looking up website for
solutions, etc.
Students caught cheating will be awarded as
less marks.
If something is not clear, on what constitutes
and what does not, please consult the
instructor in advance.
10
Introduction to Aotomata
Theory & Finite Language
or
Theory of Computation
11
Introduction
12
Introduction
13
Introduction
14
Introduction
15
What is a Theory of Computation
16
Application of TOC
17
Motivation of Complexity Theory
Classify the problems according to their degree
of complexity (computational difficulty) by giving
regirus proof that certion problems that seems to
be “hard” are really “hard”.
Classify problems as being solvable or
unsolvable.
Determine the power of different computational
models or, which model can solve more
problems than others.
18
History of TOC
19
What is Automation
20
Mathematical Termology/Basic Concepts
21
Mathematical Termology/Basic Concepts
23
Examples
24
Power of an Albhabets
25
String Operations
Example
Cancatenation
26
String Operations
Example
Reverse
27
Recursive Defination of length
28
Length of cancanetation
29
Empty String
30
Substring
31
Example of substring
32
33
34
Contd..
35
Language
36
Language
37
Language
38
Examples
39
Assumptation
40
Operations on Languages
41
Reverse
42
Examples
43
Star-Clousere (Kleene*)
44
Positive Closure
45
More Examples
46
More Examples
47
More Examples
48
More Examples
49