CS3452 Theory of Computation Syllabus:
CS3452 Theory of Computation Syllabus – Anna University Regulation 2021
COURSE OBJECTIVES:
To understand foundations of computation including automata theory
To construct models of regular expressions and languages.
To design context free grammar and push down automata
To understand Turing machines and their capability
To understand Undecidability and NP class problems
UNIT I AUTOMATA AND REGULAR EXPRESSIONS
Need for automata theory – Introduction to formal proof – Finite Automata (FA) – Deterministic Finite Automata (DFA) – Non-deterministic Finite Automata (NFA) – Equivalence between NFA and DFA – Finite Automata with Epsilon transitions – Equivalence of NFA and DFA- Equivalence of NFAs with and without ε-moves- Conversion of NFA into DFA – Minimization of DFAs.
UNIT II REGULAR EXPRESSIONS AND LANGUAGES
Regular expression – Regular Languages- Equivalence of Finite Automata and regular expressions – Proving languages to be not regular (Pumping Lemma) – Closure properties of regular languages.
UNIT III CONTEXT FREE GRAMMAR AND PUSH DOWN AUTOMATA
Types of Grammar – Chomsky‘s hierarchy of languages -Context-Free Grammar (CFG) and Languages – Derivations and Parse trees – Ambiguity in grammars and languages – Push Down Automata (PDA): Definition – Moves – Instantaneous descriptions -Languages of pushdown automata – Equivalence of pushdown automata and CFG-CFG to PDA-PDA to CFG – Deterministic Pushdown Automata.
UNIT IV NORMAL FORMS AND TURING MACHINES
Normal forms for CFG – Simplification of CFG- Chomsky Normal Form (CNF) and Greibach Normal Form (GNF) – Pumping lemma for CFL – Closure properties of Context Free Languages –Turing Machine : Basic model – definition and representation – Instantaneous Description – Language acceptance by TM – TM as Computer of Integer functions – Programming techniques for Turing machines (subroutines).
UNIT V UNDECIDABILITY
Unsolvable Problems and Computable Functions –PCP-MPCP- Recursive and recursively enumerable languages – Properties – Universal Turing machine -Tractable and Intractable problems – P and NP completeness – Kruskal’s algorithm – Travelling Salesman Problem- 3-CNF SAT problems.
COURSE OUTCOMES:
At the end of this course, the students will be able to:
CO1: Construct automata theory using Finite Automata
CO2: Write regular expressions for any pattern
CO3: Design context free grammar and Pushdown Automata
CO4: Design Turing machine for computational functions
CO5: Differentiate between decidable and undecidable problems
TEXT BOOKS:
1. Hopcroft J.E., Motwani R. & Ullman J.D., “Introduction to Automata Theory, Languages and Computations”, 3rd Edition, Pearson Education, 2008.
2. John C Martin , “Introduction to Languages and the Theory of Computation”, 4th Edition, Tata McGraw Hill, 2011.
REFERENCES:
1. Harry R Lewis and Christos H Papadimitriou , “Elements of the Theory of Computation”, 2nd Edition, Prentice Hall of India, 2015.
2. Peter Linz, “An Introduction to Formal Language and Automata”, 6th Edition, Jones & Bartlett, 2016.
3. K.L.P.Mishra and N.Chandrasekaran, “Theory of Computer Science: Automata Languages and Computation”, 3rd Edition, Prentice Hall of India, 2006.