Syllabus
Unit I
Finite Automata (FA): Introduction, Deterministic Finite Automata (DFA) -Formal definition, simpler notations (state transition diagram, transition table), the language of a DFA. Nondeterministic Finite Automata (NFA)- Definition of the FA, language of an NFA, Equivalence of Deterministic and Nondeterministic Finite Automata, Applications of Finite Automata, Finite Automata with Epsilon Transitions, Eliminating Epsilon transitions, Minimization of Deterministic Finite Automata, Finite automata with output (Moore and Mealy machine Interconversion.
Unit II
Regular Expressions (RE): Introduction, Identities of Regular Expressions, Finite Automata and Regular Expressions- Converting from DFA’s to Regular Expressions, Converting Regular Expressions to Automata, applications of Regular Expressions. REGULAR GRAMMARS: Definition, regular grammar and FA, FA for regular grammar, Regular grammar for FA. Proving languages to be non-regular -Pumping lemma, applications, Closure properties of regular languages.
Unit III
Context Free Grammar (CFG): Derivation Trees, Sentential Forms, Rightmost and Leftmost derivations of Strings. Ambiguity in CFGs, Minimization of CCFGs CNF, GNF, Pumping Lemma for CFLs Enumeration of Properties of CFL
Unit IV
Pushdown Automata: Definition, Model, Acceptance of CFL, Acceptance by Final State and Acceptance by Empty stack and its Equivalence, Equivalence of CFG and PDA. TURING MACHINES (TM): Formal definition and behavior, Languages of a TM, TM as accepters, and TM as a computer of integer functions, Types of TMs.
Unit V
Recursive And Recursively Enumerable Languages (REL): Properties of recursive and recursively enumerable languages, Universal Turing machine, The Halting problem, Undecidable problems about TMs. Context-sensitive language and linear bounded automata (LBA), Chomsky hierarchy, Decidability, Post’s correspondence problem (PCP), undecidability of PCP.
Objectives and Outcomes
Course Description
Formal languages and automata theory deals with the concepts of automata, formal languages, grammar, computability and decidability. The reasons to study. Automata Theory possesses a high degree of permanence and stability, in contrast with the ever-changing paradigms of the technology, development, and management of computer systems.
Course Objectives
This course gives an overview of the theoretical foundations of computer science from the perspective of formal languages. Formal Languages and Automata Theory provide a simple, elegant view of the complex machine we call a computer. Further, parts of the Automata theory have a direct bearing on circuit design, compiler design, and search algorithms.
Course Outcomes
| COs |
Description |
| CO1 |
Explain kinds of finite automata and their capabilities. |
| CO2 |
Design Finite Automata for different Regular Expressions and Languages. |
| CO3 |
Construct context-free grammar for various languages. |
| CO4 |
Solve various problems by applying normal form techniques, push down automata and Turing Machines. |
| CO5 |
Explain Recursively enumerable languages |
CO-PO Mapping
| PO/PSO |
PO1 |
PO2 |
PO3 |
PO4 |
PO5 |
PO6 |
PO7 |
PO8 |
| CO |
| CO1 |
2 |
2 |
– |
– |
– |
– |
– |
2 |
| CO2 |
2 |
2 |
– |
– |
– |
– |
– |
2 |
| CO3 |
3 |
2 |
– |
– |
1 |
– |
– |
2 |
| CO4 |
3 |
2 |
– |
– |
– |
– |
– |
2 |
| CO5 |
3 |
2 |
2 |