PGCA1927 Theory of Computation
PGCA1927 Theory of Computation
Prerequisite:
Co requisite:
Additional material required in ESE: NO
COURSE OUTCOMES: Students will be able to
CO# Course outcomes
CO1 Use basic concepts of formal languages of finite automata techniques.
CO2 Design Finite Automata for different Regular Expressions and Languages.
CO3 Construct context free grammar for various languages.
CO4 Solve various problems of applying normal form techniques, push down automata and
Turing Machines.
CO5 Solve computational problems regarding their computability and complexity and prove
the basic results of the theory of computation.
Push Down Automata: Ambiguity, Parse Tree Representation of Derivation Trees, 22 hours
Equivalence of PDA’s and Pushdown Automaton (PDA), Non-Deterministic Pushdown
Automaton (NPDA).
Turing Machines (TM): Standard Turing Machine and its Variations; Universal Turing
Machines, Models of Computation and Church Turing Thesis. Recursive and Recursively-
Enumerable Languages; Context Sensitive Languages, Unrestricted Grammars, Chomsky
Hierarchy of Languages, Construction of TM for Simple Problems.
Unsolvable Problems and Computational Complexity: Unsolvable Problem, Halting
Problem, Post Correspondence Problem, Unsolvable Problems for Context-Free
Languages, Measuring and Classifying Complexity, Tractable and Intractable Problems.
Text Books:
1. Jeffrey Ullman and John Hopcroft, Introduction to Automata Theory, Languages, and
Computation, 3e, Pearson Education India (2008).
2. K.L.P. Mishra, Theory of Computer Science: Automata, Languages and Computation, Prentice
Hall India Learning Private Limited (2006).
3. John Martin, Introduction to Languages and the Theory of Computation, McGraw-Hill Higher
Education (2007).
Reference Books:
1. Introduction to Computer Theory, Daniel. I.A. Cohen, John Wiley & Sons.