Zero Lecture
Zero Lecture
Zero Lecture
Zero Lecture
Mrs. Anamika Maurya
Assistant Professor
MCA, PSIT
Subject Overview
Theory Subject
No practical session
100 marks
4 credit
6 lectures in week
Total 60 lectures
13/01/2016
Books
Authors
Publisher
Introduction to Automata
Theory, Languages and
Computation
John E. Hopcroft, D.
Ullman
Pearson Education,
3rd Ed.
An Introduction to Formal
languages and automata
Peter Linz
Theory of Computer
Science
K. L. P. Mishra
Prentice-Hall, 2007,
3rd Ed.
Formal Languages
and Automata Theory
C. K. Nagpal
Oxford Higher
Education, 2013
13/01/2016
Automata Theory
Plural of automaton, means to automate
or mechanize
An automaton is a machine that can
perform computation in a mechanized
manner
Basic aim of studying automata theory is,
what is computable and what is not
Study of abstract machine that can
perform computing
13/01/2016
Introduction
Computer machine understands the
instruction given by human unambiguously
Develop languages for writing instructions
For a computer science student, it is
necessary to study
Computability ( to know what is computable)
Formal Languages ( to design languages to
write instructions for machine)
Automata theory (design computing machine)
13/01/2016
13/01/2016
Structural Representations:
There are two important notations there
are not automation-like, but play an
important role in the study of automata
and their applications
Grammars are useful models when
software that processes data with a
recursive structure.
Regular Expressions are denoted the
structure of data, especially text strings.
13/01/2016
13/01/2016
10
Practical application of
Automata Theory
You want to spot duplicate
occurrences of a phrase in a
document and delete the second
occurrence. In essence, you want to
substitute a sequence in a
language.
Does a program contain an
assertion violation?
13/01/2016
11
Practical application of
Automata Theory
Does a device driver respect certain
protocols when interacting with the
kernel? The behaviour of a program is
a set of executions; in other words, a
language. The correctness property is
another language. The program
correctness problem amounts to a
language inclusion check.
13/01/2016
12
Practical application of
Automata Theory
13/01/2016
13
Current compilers,
Regular expressions,
Parsers,
Web-scrappers,
Natural language processing
(NLP),
State machines based on markov
chains
13/01/2016
14
13/01/2016
15
13/01/2016
16
Example of Machine
A table is an information processing
machine with the i/p signals being either
up or down position of switch and o/p
signals being either on or off.
An adder is an information processing
machine with the input signals being to
decimal number and output signal being
their sum.
13/01/2016
17
Example of Machine
An automobile is an information
processing machine with depression of
accelerator and angular position of
steering wheel is an input signal and
output signal are speed and direction
13/01/2016
18
Syllabus
UNIT 1:Basic concepts of Automata
Theory
UNIT 2: Regular Expressions and
Languages
UNIT 3: Non-Regular Grammars
UNIT 4: Turing Machines
UNIT 5: Undecidability
13/01/2016
19
Unit 1
Alphabets, Strings and Languages,
Deterministic Finite Automata (DFA)
Nondeterministic Finite Automata
(NFA),
Language of DFA and NFA.
NFA with -transitions,
Language ofNFA with -transitions
Equivalence of NFA and DFA.
13/01/2016
20
Unit 2
Regular Expressions and Languages: Introduction,
Definition of regular expression,
KleensTheorem,
Equivalence of regular expression and Finite
Automata,
Pumping Lemma for regular
Languages, Closure properties of Regular
Languages,
Decision properties of Regular Languages,
Finite Automata with Output: Moore and Mealy
Machine,
Equivalence of Moore and Mealy Machines.
13/01/2016
21
Unit 3
Non-Regular Grammars: Definition of Grammar,
Classification of Grammars,
Chomosky's Hierarchy.
Context Free Grammars (CFG) and Context Free
Languages (CFL)
Derivation trees,
Ambiguous Grammars,
Simplification of Grammars,
Normal forms of CFGs: CNF and GNF,
Closure properties of CFLs,
Decision Properties of CFLs,
Pumping lemma for CFLs. Push Down
Automata (PDA): Definition and Description,
13/01/2016
22
Language of PDA and its applications.
Unit 4
Turing Machines: Introduction,
Basic Features of a Turing Machine,
Language of a Turing Machine,
Variants of Turing Machine:
Multitapes,
Nondeterministic Turing Machine,
Universal Turing Machine.
Turing Machine as Computer of Integer functions,
Halting problem of Turing Machine,
Church-TuringThesis.
13/01/2016
23
Unit 5
Undecidability: Introduction
Undecidable problems about Turing
Machines,
Rice's Theorem,
Post's Correspondence problem (PCP)
Modified PCP
Tractable and Intractable Problems:
P and NP, NPComplete Problems,
Introduction to recursive function theory.
13/01/2016
24
11 Lecture
UNIT
2
10 Lecture
UNIT
3
UNIT
4
24 Lecture
8 Lecture
UNIT
5
7 Lecture
Outcomes
Student will be able to
Differentiate
between NFA
and DFA
Design Finite
automata
Differentiate
between Mealy
and Moore
Write the regular
expression for
regular languages
Apply Ardens
Theorem and
Pumping Lemma
Write CFG
Design PDA
Understand the
simplification of
CFG
Understand the
Closure and
decision
property of
CFL
13/01/2016
Explain the
Concept
and working
of Turing
Machine
Differentiate
between
variants of
Turing
Machine
Describe the
Halting
Problem of
Turing
Machine
Understand
the concept
of decidability
Define the
concept of P,
NP and NP
complete
problem
Know the
concept of
PCP problem
26
GATE
UGC NET
PSU for CS Student
Base of Compiler Design
13/01/2016
27
Rules
No cell phone
Full duplex
Previous topic
revision
13/01/2016
28
Thank You
13/01/2016
29