Course Title: Theory of Computation Credit Units: 04 Course Code: CSE204
Course Title: Theory of Computation Credit Units: 04 Course Code: CSE204
Course Objectives: The course begins with the basic mathematical preliminaries and goes on to discuss the general theory of automata, properties of regular
sets and regular expressions, and the basics of formal languages. Besides, sufficient attention is devoted to such topics as pushdown automata and it’s relation
with context free languages, Turing machines and linear bounded automata, the basic concepts of computability such as primitive recursive functions and
partial recursive functions.
Pre-requisites: Mathematical Basics: familiarity with proofs, discrete math and algorithms.
Course Contents/Syllabus:
Weightage (%)
Module I: Introduction to Languages and Automata
Formal Grammars and Chomsky Hierarchy, Regular Expression Deterministic and Nondeterministic Finite Automata,
Regular Expression, Regular Expression to Finite Automata and vice versa, Arden’s Theorem , Two way Finite
25
Automata, Finite Automata with output, Properties of regular sets, pumping lemma for regular sets, My-Hill-Nerode
Theorem .
Module V: Computability
Partial and Total Functions, Primitive Recursive functions, Recursive functions. 10
Familiarity with basics of Formal Languages, Grammars, Automata and their relationship.
Design regular expressions and context-free grammars accepting or generating a certain language.
Transform between equivalent deterministic and non-deterministic finite automata, and regular expressions.
Have an overview of how the theoretical study in this course is applicable to an engineering application like designing the compilers
100 ---
Presentation
Weightage (%) 5 15 4 60
Text Reading:
1. K.L.P. Mishra and N.Chandrasekaran, “Theory of Computer Science : Automata, Languages and Computation”, PHI.
References:
1. Introduction to theory of computation by Michael sipser.
2. An introduction to formal languages and Automata by Peter Linz, Narosa Publication Papadimitrou, C. and Lewis, C.L., “Elements of the Theory of
Computation”, PHI
3. Martin J. C., “Introduction to Languages and Theory of Computations”, TMH
4. Hopcroft and Ullman, “Introduction to Automata Theory, languages and computation”, Addision Wesley.
5. Formal Languages and Automata Theory by C.K Nagpal