6
CS6503 THEORY OF COMPUTATION L T P C 3 0 0 3 OBJECTIVES: The student should be made to: Understand various Computing models like Finite State Machine, Pushdown Automata, and Turing Machine. Be aware of Decidability and Un-decidability of various problems. Learn types of grammars. UNIT I FINITE AUTOMATA 9 Introduction- Basic Mathematical Notation and techniques- Finite State systems – Basic Definitions –Finite Automaton – DFA & NDFA – Finite Automaton with €- moves – Regular Languages- Regular Expression – Equivalence of NFA and DFA – Equivalence of NDFA’s with and without € - moves – Equivalence of finite Automaton and regular expressions – Minimization of DFA- - Pumping Lemma for Regular sets – Problems based on Pumping Lemma. UNIT II GRAMMARS 9 Grammar Introduction– Types of Grammar - Context Free Grammars and Languages– Derivations and Languages – Ambiguity- Relationship between derivation and derivation trees – Simplification of CFG – Elimination of Useless symbols - Unit productions - Null productions – Greiback Normal form – Chomsky normal form – Problems related to CNF and GNF. UNIT III PUSHDOWN AUTOMATA 9 Pushdown Automata- Definitions – Moves – Instantaneous descriptions – Deterministic pushdown automata – Equivalence of Pushdown automata and CFL - pumping lemma for CFL – problems based on pumping Lemma. UNIT IV TURING MACHINES 9 Definitions of Turing machines – Models – Computable languages and functions –Techniques for Turing machine construction – Multi head and Multi tape Turing Machines - The Halting problem – Partial Solvability – Problems about Turing machine- Chomskian hierarchy of languages. UNIT V UNSOLVABLE PROBLEMS AND COMPUTABLE FUNCTIONS 9 Unsolvable Problems and Computable Functions – Primitive recursive functions – Recursive and recursively enumerable languages – Universal Turing machine. MEASURING AND CLASSIFYING COMPLEXITY: Tractable and Intractable problems- Tractable and possibly intractable problems – P and NP completeness - Polynomial time reductions. TOTAL: 45 PERIODS OUTCOMES: At the end of the course, the student should be able to: Design Finite State Machine, Pushdown Automata, and Turing Machine. Explain the Decidability or Undecidability of various problems

Cs6503 theory of computation syllabus

Embed Size (px)

Citation preview

Page 1: Cs6503 theory of computation syllabus

CS6503 THEORY OF COMPUTATION L T P C 3 0 0 3

OBJECTIVES:The student should be made to:

Understand various Computing models like Finite State Machine, Pushdown Automata, and Turing Machine.

Be aware of Decidability and Un-decidability of various problems. Learn types of grammars.

UNIT I FINITE AUTOMATA 9Introduction- Basic Mathematical Notation and techniques- Finite State systems – Basic Definitions –Finite Automaton – DFA & NDFA – Finite Automaton with €- moves – Regular Languages- Regular Expression – Equivalence of NFA and DFA – Equivalence of NDFA’s with and without € - moves – Equivalence of finite Automaton and regular expressions –Minimization of DFA- - Pumping Lemma for Regular sets – Problems based on Pumping Lemma.

UNIT II GRAMMARS 9Grammar Introduction– Types of Grammar - Context Free Grammars and Languages– Derivations and Languages – Ambiguity- Relationship between derivation and derivation trees – Simplification of CFG – Elimination of Useless symbols - Unit productions - Null productions – Greiback Normal form – Chomsky normal form – Problems related to CNF and GNF.

UNIT III PUSHDOWN AUTOMATA 9Pushdown Automata- Definitions – Moves – Instantaneous descriptions – Deterministic pushdown automata – Equivalence of Pushdown automata and CFL - pumping lemma for CFL – problems based on pumping Lemma.

UNIT IV TURING MACHINES 9Definitions of Turing machines – Models – Computable languages and functions –Techniques for Turing machine construction – Multi head and Multi tape Turing Machines - The Halting problem – Partial Solvability – Problems about Turing machine- Chomskian hierarchy of languages.

UNIT V UNSOLVABLE PROBLEMS AND COMPUTABLE FUNCTIONS 9Unsolvable Problems and Computable Functions – Primitive recursive functions – Recursive and recursively enumerable languages – Universal Turing machine. MEASURING AND CLASSIFYING COMPLEXITY: Tractable and Intractable problems- Tractable and possibly intractable problems – P and NP completeness - Polynomial time reductions.

TOTAL: 45 PERIODS

OUTCOMES:At the end of the course, the student should be able to:

Design Finite State Machine, Pushdown Automata, and Turing Machine. Explain the Decidability or Undecidability of various problems

TEXT BOOKS:1. Hopcroft J.E., Motwani R. and Ullman J.D, “Introduction to Automata Theory, Languages

and Computations”, Second Edition, Pearson Education, 2008. (UNIT 1,2,3)2. John C Martin, “Introduction to Languages and the Theory of Computation”, Third Edition,

Tata McGraw Hill Publishing Company, New Delhi, 2007. (UNIT 4,5)

REFERENCES:1. Mishra K L P and Chandrasekaran N, “Theory of Computer Science - Automata, Languages

and Computation”, Third Edition, Prentice Hall of India, 2004.2. Harry R Lewis and Christos H Papadimitriou, “Elements of the Theory of Computation”,

Second Edition, Prentice Hall of India, Pearson Education, New Delhi, 2003.3. Peter Linz, “An Introduction to Formal Language and Automata”, Third Edition, Narosa

Publishers, New Delhi, 2002.4. Kamala Krithivasan and Rama. R, “Introduction to Formal Languages, Automata Theory and

Computation”, Pearson Education 2009

Page 2: Cs6503 theory of computation syllabus

UNIT I FINITE AUTOMATA Introduction Basic Mathematical Notation and techniquesFinite State systems Basic DefinitionsFinite Automaton DFA & NDFA Finite Automaton with ε- moves Regular LanguagesRegular Expression Equivalence of NFA and DFA Equivalence of NDFA’s with and without ε - moves Equivalence of finite Automaton and regular expressions Minimization of DFA Pumping Lemma for Regular sets Problems based on Pumping Lemma

UNIT II GRAMMARS Grammar Introduction Types of Grammar Context Free Grammars and Languages Derivations and Languages Ambiguity Relationship between derivation and derivation trees Simplification of CFG Elimination of Useless symbols Unit productions Null productions Greiback Normal form Chomsky normal form Problems related to CNF and GNF

UNIT III PUSHDOWN AUTOMATA Pushdown AutomataDefinitions Moves Instantaneous descriptions Deterministic pushdown automata Equivalence of Pushdown automata and CFL Pumping lemma for CFL Problems based on pumping Lemma.

Page 3: Cs6503 theory of computation syllabus

UNIT IV TURING MACHINES Definitions of Turing machines Models Computable languages and functions Techniques for Turing machine construction Multi head and Multi tape Turing Machines The Halting problem Partial Solvability Problems about Turing machineChomskian hierarchy of languages

UNIT V UNSOLVABLE PROBLEMS AND COMPUTABLE FUNCTIONS Unsolvable Problems and Computable Functions Primitive recursive functions Recursive and recursively enumerable languages Universal Turing machine. MEASURING AND CLASSIFYING COMPLEXITY: Tractable and Intractable problemsTractable and possibly intractable problemsP and NP completenessPolynomial time reductions.

Page 4: Cs6503 theory of computation syllabus

UNIT I FINITE AUTOMATA 1.1 Introduction 1.2 Basic Mathematical Notation and techniques1.3 Finite State systems 1.4 Basic Definitions1.5 Finite Automaton 1.6 DFA & NDFA 1.7 Finite Automaton with ε- moves 1.8 Regular Languages1.9 Regular Expression 1.10 Equivalence of NFA and DFA 1.11 Equivalence of NDFA’s with and without ε - moves 1.12 Equivalence of finite Automaton and regular expressions 1.13 Minimization of DFA 1.14 Pumping Lemma for Regular sets 1.15 Problems based on Pumping Lemma

UNIT II GRAMMARS 2.1 Grammar Introduction 2.2 Types of Grammar 2.3 Context Free Grammars and Languages 2.4 Derivations and Languages 2.5 Ambiguity 2.6 Relationship between derivation and derivation trees 2.7 Simplification of CFG 2.8 Elimination of Useless symbols 2.9 Unit productions 2.10 Null productions 2.11 Greiback Normal form 2.12 Chomsky normal form 2.13 Problems related to CNF and GNF

UNIT III PUSHDOWN AUTOMATA 3.1 Pushdown Automata3.2 Definitions 3.3 Moves 3.4 Instantaneous descriptions 3.5 Deterministic pushdown automata 3.6 Equivalence of Pushdown automata and CFL 3.7 Pumping lemma for CFL 3.8 Problems based on pumping Lemma.

Page 5: Cs6503 theory of computation syllabus

UNIT IV TURING MACHINES 4.1 Definitions of Turing machines 4.2 Models 4.3 Computable languages and functions 4.4 Techniques for Turing machine construction 4.5 Multi head and Multi tape Turing Machines 4.6 The Halting problem 4.7 Partial Solvability 4.8 Problems about Turing machine4.9 Chomskian hierarchy of languages

UNIT V UNSOLVABLE PROBLEMS AND COMPUTABLE FUNCTIONS 5.1 Unsolvable Problems and Computable Functions 5.2 Primitive recursive functions 5.3 Recursive and recursively enumerable languages 5.4 Universal Turing machine. 5.5 MEASURING AND CLASSIFYING COMPLEXITY: 5.6 Tractable and Intractable problems5.7 Tractable and possibly intractable problems5.8 P and NP completeness5.9 Polynomial time reductions.