You are on page 1of 2

Course Title: Formal Languages and Automata Theory Course Code: COMP 356

Course Structure: 3 Cr. Hrs. Lecture: 3 Cr. Hrs. Practical: None


Prerequisites:

Learning Outcomes:
Subject-specific knowledge:
Introduce the student to the concepts of theory of computation in computer science and the
student acquires insights into the relationship among formal languages, formal grammars, and
automata.
 introduce with the mathematical notation of Sets, Graphs and Trees
 understand about (Finite) Automata concepts
 study and understand about Grammars, Languages and Normal Forms
 introduce the mechanism of Turing Machine
Subject-specific practical skills:
None
Transferable skills:
Analyzing and Reasoning skills

Course Description:
Introduction to Mathematical Notation and Basic Concepts; Finite Automata; Regular
Expressions, Grammars and Languages; Context Free Grammars and Languages; Normal
Forms – Chomsky Normal Form and Greibach Normal Form; Push down Automata; Turing
machines

Course Contents:
Chapter-One : Introduction to the Theory of Computation
1.1 Sets
1.2 Functions and Relations
1.3 Graphs and Trees
1.4 Languages
1.5 Grammars
1.6 Automata
Chapter-Two : Finite Automata
2.1 Deterministic Finite Automata
2.2 Nondeterministic Finite Automata
2.3 Equivalence of Deterministic and Non-deterministic
Finite Automata
2.4 Reducing number of states in Finite Automata
Chapter-Three : Regular Languages and Regular Grammars
3.1 Regular Expressions
3.2 Connection between Regular Expressions and Regular
Languages
3.3 Regular Grammars
Chapter-Four : Context Free Languages
4.1 Context Free Grammars
4.2 Parsing and Ambiguity
4.3 Context Free Grammars and Programming Languages
Chapter-Five : Simplification of Context Free Grammars and Normal Forms
5.1 Methods for Transforming Grammars
5.2 Normal Forms
5.2.1 Chomsky Normal Form
5.2.2 Greibach Normal Form
Chapter-Six : Push Down Automata
6.1 Nondeterministic Push down Automata
6.2 Push down Automata and Context Free Languages
6.3 Deterministic Push down Automata and Deterministic
Context Free Languages
Chapter-Seven : Turing Machines
7.1 The Standard Turing Machine
7.2 Combining Turing Machines for complicated tasks

Assessment Methods:
Mid Exam – 30%
Quizzes – 10%
Final Exam – 60%

Text & Reference Books:


Text Books
1. Peter Linz, “An Introduction to Formal Languages and Automata”, D.C.Heath and Company.
References:
1. Dasaradh ramaiah k “Introduction To Automata and Compiler Design” 2011.

You might also like