L T P C
20CS006 THEORY OF COMPUTATION
3 1 0 4
COURSE OBJECTIVE:
This course will enable the students to learn the basic concepts of computing models like Finite
State Machine, Pushdown Automata and Turing Machine, decidability and decidability conditions
of various automata problems.
COURSE CONTENT:
Finite Automata
Alphabets - Strings and Languages - Automata and Grammars - Deterministic Finite Automata
(DFA) - Formal Definition - Simplified notation: State transition graph - Transition table -
Language of DFA - Nondeterministic Finite Automata (NFA) - NFA with epsilon transition -
Language of NFA - Equivalence of NFA and DFA - Minimization of Finite Automata -
Distinguishing one string from other.
Regular Expression
Definition - Operators of regular expression and their precedence - Algebraic laws for Regular
expressions - Kleene's Theorem - Regular expression to FA - DFA to Regular expression - Arden
Theorem - Non Regular Languages - Pumping Lemma for Regular Languages. Application of
Pumping Lemma - Closure properties of Regular Languages - Decision properties of Regular
Languages - FA with output: Moore and Mealy machine - Equivalence of Moore and Mealy
Machine - Applications and Limitation of FA.
Grammars
Grammar Introduction– Types of Grammar - Context Free Grammars and Languages– Derivations
and Languages – Ambiguity- Relationship between derivation and derivation trees – Simplification
of CFG – Elimination of Useless symbols - Unit productions - Null productions – Greibach
Normal form – Chomsky Normal form – Problems related to CNF and GNF
Push Down Automata
Description and definition - Instantaneous Description - Language of PDA - Acceptance by Final
state - Acceptance by empty stack - Deterministic PDA - Equivalence of acceptance by empty
stack and final state - Conversion of CFG to PDA and PDA to CFG.
Turing Machines & Undecidability
Basic model - definition and representation - Instantaneous Description - Language acceptance by
TM - Variants of Turing Machine - TM as Computer of Integer functions - Universal TM -
Church's Thesis - Recursive and recursively enumerable languages - Halting problem -
Introduction to undecidability - undecidable problems about TMs - Post correspondence problem
(PCP) - Modified PCP and undecidable nature of Post correspondence problem
80
COURSE OUTCOMES:
At the end of the course, the students will have the
CO1: Ability to recall Finite Automata for Regular expressions and languages.
CO2: Ability to understand Context Free Grammar for computational languages.
CO3: Ability to interpret the automata theory for real world problems.
CO4: Ability to illustrate solutions for computational problems utilizing Push Down Automata and Turing
Machines.
REFERENCES:
1. Hopcroft J.E., Motwani R. and Ullman J.D, “Introduction to Automata Theory, Languages and
Computations”, Second Edition, Pearson Education, 2008. (UNIT 1,2,3)
2. John C Martin, “Introduction to Languages and the Theory of Computation”, Third Edition, Tata
McGraw Hill Publishing Company, New Delhi, 2007. (UNIT 4,5)
3. Mishra K L P and Chandrasekaran N, “Theory of Computer Science – Automata, Languages and
Computation”, Third Edition, Prentice Hall of India, 2004.
4. Harry R Lewis and Christos H Papadimitriou, “Elements of the Theory of Computation”, Second
Edition, Prentice Hall of India, Pearson Education, New Delhi, 2003.
5. Peter Linz, “An Introduction to Formal Language and Automata”, Third Edition, Narosa
Publishers, New Delhi, 2002.
6. Michel Sipser, “Introduction of the Theory of Computation”, Thompson Brokecole, 1997.
81