BSc CSIT · Semester IV
Theory of Computation syllabus
Official TU syllabus for Theory of Computation (CSC262): 7 units, 121 topics, 3 credit hours. Every unit links to its notes and solved questions.
1
Basic Foundations
3h · 4 Q- Review of Set Theory
- Logic
- Functions
- Proofs
- Automata, Computability and Complexity
- Complexity Theory
- Computability Theory
- Automata Theory
- Basic concepts of Automata Theory
- Alphabets
- Power of Alphabet
- Kleen Closure Alphabet
- Positive Closure of Alphabet
- Strings
- Empty String
- Substring of a string
- Concatenation of strings
- Languages
- Empty Language
2
Introduction to Finite Automata
8h · 11 Q- Introduction to Finite Automata
- Introduction of Finite State Machine
- Deterministic Finite Automata (DFA)
- Notations for DFA
- Language of DFA
- Extended Transition Function of DFA
- Non-Deterministic Finite Automaton (NFA)
- Notations for NFA
- Language of NFA
- Extended Transition
- Equivalence of DFA and NFA
- Subset-Construction
- Method for reduction of NFA to DFA
- Theorems for equivalence of Language accepted by DFA and NFA
- Finite Automaton with Epsilon Transition (ε - NFA)
- Notations for ε - NFA
- Epsilon Closure of a State
- Extended Transition Function of ε – NFA
- Removing Epsilon Transition using the concept of Epsilon Closure
- Equivalence of NFA and ε –NFA
- Equivalence of DFA and ε – NFA
- Finite State Machines with output: Moore machine and Mealy Machines
3
Regular Expressions
6h · 13 Q- Regular Expressions
- Regular Operators
- Regular Languages and their applications
- Algebraic Rules for Regular Expressions
- Equivalence of Regular Expression and Finite Automata
- Reduction of Regular Expression to ε – NFA
- Conversion of DFA to Regular Expression
- Properties of Regular Languages
- Pumping Lemma
- Application of Pumping Lemma
- Closure Properties of Regular Languages over (Union, Intersection, Complement)
- Minimization of Finite State Machines: Table Filling Algorithm
4
Context Free Grammar
9h · 13 Q- Introduction to Context Free Grammar (CFG)
- Components of CFG
- Use of CFG
- Context Free Language (CFL)
- Types of derivations: Bottomup and Topdown approach
- Leftmost and Rightmost
- Language of a grammar
- Parse tree and its construction
- Ambiguous grammar
- Use of parse tree to show ambiguity in grammar
- Regular Grammars: Right Linear and Left Linear
- Equivalence of regular grammar and finite automata
- Simplification of CFG: Removal of Useless symbols, Nullable Symbols, and Unit Productions
- Chomsky Normal Form (CNF)
- Greibach Normal Form (GNF)
- Backus-Naur Form (BNF)
- Context Sensitive Grammar
- Chomsky Hierarchy
- Pumping Lemma for CFL
- Application of Pumping Lemma
- Closure Properties of CFL
5
Push Down Automata
7h · 9 Q- Introduction to Push Down Automata (PDA)
- Representation of PDA
- Operations of PDA
- Move of a PDA
- Instantaneous Description for PDA
- Deterministic PDA
- Non Deterministic PDA
- Acceptance of strings by PDA
- Language of PDA
- Construction of PDA by Final State
- Construction of PDA by Empty Stack
- Conversion of PDA by Final State to PDA accepting by Empty Stack and vice-versa
- Conversion of CFG to PDA
- Conversion of PDA to CFG
6
Turing Machines
10h · 12 Q- Introduction to Turing Machines (TM)
- Notations of Turing Machine
- Language of a Turing Machine
- Instantaneous Description for Turing Machine
- Acceptance of a string by a Turing Machines
- Turing Machine as a Language Recognizer
- Turing Machine as a Computing Function
- Turing Machine with Storage in its State
- Turing Machine as a enumerator of stings of a language
- Turing Machine as Subroutine
- Turing Machine with Multiple Tracks
- Turing Machine with Multiple Tapes
- Equivalence of Multitape-TM and Multitrack-TM
- Non-Deterministic Turing Machines
- Restricted Turing Machines: With Semi-infinite Tape, Multistack Machines, Counter Machines
- Curch Turing Thesis
- Universal Turing Machine
- Turing Machine and Computers
- Encoding of Turing Machine
- Enumerating Binary Strings
- Codes of Turing Machine
- Universal Turing Machine for encoding of Turing Machine
7
Undecidability and Intractability
5h · 10 Q- Computational Complexity
- Time and Space complexity of A Turing Machine
- Intractability
- Complexity Classes
- Problem and its types: Absract, Decision, Optimization
- Reducibility
- Turing Reducible
- Circuit Satisfiability
- Cook's Theorem
- Undecidability
- Undecidable Problems: Post's Correspondence Problem, Halting Problem and its proof, Undecidable Problem about Turing Machines
Textbooks and references
- John E. Hopcroft, Rajeev Motwani, Jeffrey D. Ullman, Introduction to Automata Theory, Languages, and Computation, 3rd Edition, Pearson - Addison-Wesley.
- Harry R. Lewis and Christos H. Papadimitriou, Elements of the Theory of Computation, 2nd Edition, Prentice Hall.
- Michael Sipser, Introduction to the Theory of Computation, 3rd Edition, Thomson Course Technology
- Efim Kinber, Carl Smith, Theory of Computing: A Gentle introduction, Prentice-Hall.
- John Martin, Introduction to Languages and the Theory of Computation, 3rd Edition, Tata McGraw Hill.
- Kenneth H. Rosen, Discrete Mathematics and its Applications to Computers Science, WCB/Mc-Graw Hill.
Study CSC262 the smart way
Solved questions, flashcards & practice