CS2344 Toc
CS2344 Toc
3024
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 9
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.
UNIT II REGULAR EXPRESSIONS AND LANGUAGES 9
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 9
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.
UNIT IV NORMAL FORMS AND TURING MACHINES 9
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.
UNIT V UNDECIDABILITY 9
Unsolvable Problems and Computable Functions –PCP-MPCP- Recursive and recursively
enumerable languages – Properties - Universal Turing machine -Tractable and Intractable
problems - P and NP completeness.
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
TOTAL:45 PERIODS
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.
NOTE:
1. Credits to be checked in LTPC
2. Unit 1- Remove Minimization of DFA
3. Unit 3- Remove Deterministic PDA
4. Unit 4- Remove Programming Techniques of Turing Machine
5. Unit 5- Remove from Kruskal’s Algorithm