UNIT 1: Foundations of Formal Languages & Finite Automata (15 Hrs)
- Mathematical Preliminaries
- Operations on Languages
- Regular Languages
- Properties of Regular Languages
UNIT 2: Context-Free Languages & Pushdown Automata (15 Hrs)
UNIT 3: Turing Machines, Computability & Complexity (15 Hrs)
Tutorials Course (1 Credit, 15 Hours)
- Write a regular expression for even number of a’s
- To accept strings ending with ‘a’
- To accept strings with exactly two consecutive ‘b’s
- Convert a given NFA into DFA
- Use Pumping Lemma to show a language is not regular
- Write a CFG for balanced parentheses
- Draw a parse tree for a given grammar
- Design a PDA for strings of equal number of a’s and b’s
- Design a simple Turing Machine to recognize 0^n1^n
- Explain the Halting Problem with an example
- Identify if a problem belongs to P or NP
SUGGESTED READING
- Introduction to the Theory of Computation, Third Edition Michael Sipser, Cengage Learning, ISBN-13: 978-1-133-18779-0
- Cohen, D. I. A. (2003). Introduction to computer theory (2nd ed., ISBN: 8126513349). New Delhi, India: McGraw-Hill Education.
- Formal Languages and Automata Theory by Peter Linz (3rd edition, 2011)
- Hoperoft, Aho, Ullman Introduction to Automata Theory, Language & Computation.