This is a mandatory course for the following batches:
Schedule
The lectures will take place in LH804 on Mondays and Tuesdays from 9:10 to 10:25.
Weekly problem set will be given on Tuesday. The students are expected to submit the answers to the TAs by Thursday. Each problem set will have 4 problems. The solution to each problem must be written in a separate sheet.
References:
Evaluation:
There will be up to three quizzes in addition to the smid-semester exam and the end-semester exam. The weightage for the final grading will be as follows: (The weightage is subject to change)
Exam | Date | Weightage |
---|---|---|
Quiz 1 | 3- Sep - 2019 | 10 % |
Mid semester exam | 23 - Sep - 2019, 9:30 am | 30 % |
Quiz 2 | 21 - Oct - 2019, 9:10 am, LH 804 | 10 % |
Quiz 3 | 12 - Nov - 2019, 9:10 am, LH 804 | 10 % |
End semester exam | 25 - Nov - 2019, 9:30 am, Seminar Hall | 40 % |
Instructor:
C. AiswaryaTeaching Assistants:
The teaching assistants (listed below) will give you the weekly problem sheets. You should submit your answers to them. Feel free to talk to the TAs if you have questions, or want feedback on your solutions, for the practice problems or even other exercises on the topics covered in the course.
Date | Descr | Topics covered | Resources/materials |
---|---|---|---|
5/8/2019 | Lecture 1 | Alphabet - strings - langauges - decision problems - Finite State Automata - examples (contains "ab", ends with "abbab", even binary number, binary numbers that are multiples of three) - runs - acceptance - language of an automata | Additional reading: Chapter 1, 2.1 and 2.2 of HopcroftUllman, Lectures 1-2-3 of Kozen, Chapters 0 and 1.1 of Sipser. |
6/8/2019 | Lecture 2 | NFA - runs - extended transition relations - language of an NFA - examples - subset construction - correctness of susbet construction
NB: The definition of NFA used in the class is different from that in the text books. 1) We allow multiple initial states. 2) The transitions are seen as a relation instead of a function. |
Additional reading: Lecture 5, Lecture 6 of Kozen, Example 2.9 of HopcroftMotwaniUllman, Sections 2.3 of HopcroftMotwaniUllman, pages 47-58 of Sipser |
6/8/2019 | Problem Set 1 | Submit on or before Thursday 8/8/2019 to the TAs for feedback. Answer each question in a separate sheet. Non complying submissions will not be read by the TAs |
Problem Set 1 Feedback |
13/8/2019 | Lecture 3 | ε-NFA -- ε-NFA have the same recognizing power as NFA -- ε elimination -- correctness argument |
Additional reading: Section 2.5 of HopcroftMotwaniUllman |
13/8/2019 | Problem Set 2 | Submit on or before Thursday 15/8/2019 to the TAs for feedback. Answer each question in a separate sheet. Non complying submissions will not be read by the TAs |
Problem Set 2 Feedback |
19/8/2019 | Lecture 4 | Closure properties of recognizable languages -- under boolean operations (union, intersection, complementation), concatenation, iteration (aka star, or Kleene-star) -- Cartesian product of automata - Cartesian product construction. Class of rational languages - Rational languages are recognizable. Rational expressions. |
Additional reading: Section 1.2 of Sipser, Section 4.2 of HopcroftMotwaniUllman |
20/8/2019 | Lecture 5 | Kleene's theorem - proof -- closure under homomorphism and inverse homomorphism |
Additional reading: Section 1.3 of Sipser, Section 3 and 4.2 of HopcroftMotwaniUllman |
20/8/2019 | Problem Set 3 | Submit on or before Thursday 22/8/2019 to the TAs for feedback. Answer each question in a separate sheet. Non complying submissions will not be read by the TAs |
Problem Set 3 Feedback |
26/8/2019 | Lecture 6 | Closure properties continued - closure under quotients/ residuals. Existence of non-recognizable languages by counting argument. Number of residuals is finite if L is recognizable. Technique to prove non-recognizability: show that there is an infinite number of residulas -- or, equivalently -- infinite set of pair-wise distinguishable words. Distinguishing suffix for a pair of words |
Additional reading: Problems 1.51 and 1.52 of Sipser. |
27/8/2019 | Lecture 7 | Myhill-Nerode theorem: Number of residuals is finite iff L is recognizable. Constructing the Nerode automaton of a regular language. The Nerode automaton is the minimal DFA. Algorithm for membership in a recognizable language. Algorithm for emptiness checking. Pumping lemma. |
|
27/8/2019 | Problem Set 4 | Submit on or before Thursday 29/8/2019 to the TAs for feedback. Answer each question in a separate sheet. Non complying submissions will not be read by the TAs |
Problem Set 4 Feedback |
3/9/2019 | Quiz 1 | ||
9/9/2019 | Lecture 8 | Pumping Lemma. The relation ≡L is a congruence. The relation ≡A is a congruence. The relation ≡A refines ≡L(A). Minimizing a DFA by partition refinement algorithm. | Additional reading: Lectures 13, 14, 15, 16 of Kozen, Section 4.4 of HopcroftMotwaniUllman |
10/9/2019 | Lecture 10 | Minimizing a DFA by partition refinement algorithm. Example. Algorithmic questions on finite representations of regular languages (automata/rational expressions) - membership - nonemptiness - universality - finiteness - intersection-nonemptiness - inclusion/containment - equivalence. | Additional reading: Section 4.3 and 4.4 of HopcroftMotwaniUllman |
10/9/2019 | Problem set 5 | Submit on or before Thursday 12/9/2019 to the TAs for feedback. Answer each question in a separate sheet. Non complying submissions will not be read by the TAs |
Problem Set 5 Feedback |
16/9/2019 | Lecture 11 | Context-free grammars - examples - derivation - sentence - sentential form - Left-most derivations -
right most derivations - parse trees - ambiguity - inherently ambiguous languages Eliminating epsilon productions and unit productions - Chomsky Normal Form |
Additional reading: Section 5.1, 5.2 and 5.4 of HopcroftMotwaniUllman, Section 2.1 of Sipser, Lectures 19, 20, 21 of Kozen |
17/9/2019 | Lecture 12 | Chomsky Normal Form, Pumping lemma for context-free languages, examples, regular languages are context free, some closure properties | Additional reading: Section 7.2 of HopcroftMotwaniUllman, Section 2.3 of Sipser, Lectures 22 of Kozen |
17/9/2019 | Problem Set 6 | Submit on or before Thursday 19/9/2019 to the TAs for feedback. Answer each question in a separate sheet. Non complying submissions will not be read by the TAs |
Problem Set 6 |
30/9/2019 | Lecture 13 | Pushdown automata - examples - acceptance by final states - acceptance by empty stack - both acceptance mechanisms are equi-powerful | 6.1,6.2 of HopcroftMotwaniUllman, Lecture 23, E of Kozen |
1/10/2019 | Lecture 14 | from CFG to PDA. from PDA to CFG | 6.3 of HopcroftMotwaniUllman,Lecture 24, 25 of Kozen |
1/10/2019 | Problem Set 7 | Submit on or before Thursday 03/10/2019 to the TAs for feedback. Answer each question in a separate sheet. Non complying submissions will not be read by the TAs |
Problem Set 7 |
7/10/2019 | Lecture 15 | closure properties of CFLs. not closed under intersection and complementation. closed under union, concatenation, Kleene star, homomorphism, inverse homomorphism, context-free substitutions, reverse, intersection with regular language |
Section 7.3 of HopcroftMotwaniUllman |
15/10/2019 | Lecture 16 | Deterministic Turing machines, examples, language of a Turing machine - recursively enumerable languages - semi-decidable problems, total Turing Machine - recursive languages - decidable problems |
Lectures 28, 29 of Kozen, 3.1 of Sipser |
15/10/2019 | Problem set 8 | Submit on or before Thursday 17/10/2019 to the TAs for feedback. Answer each question in a separate sheet. Non complying submissions will not be read by the TAs |
Problem Set 8 |
22/10/2019 | Lecture 17 | Non-determinsitc Turing machines, Turings machines with bi-infinite tape, k tapes, k heads etc. Simulation of the variants by standard turing machine. Non-determistic turing machines have the same power as deterministic turing machines.
Universal turing machine -- a Turing Machine for the language membership problem of turing machines. |
Lectures 30,31 of Kozen, 3.2 of Sipser |
22/10/2019 | Problem Set 9 | Submit on or before Thursday 24/10/2019 to the TAs for feedback. Answer each question in a separate sheet. Non complying submissions will not be read by the TAs |
Problem Set 9 |
28/10/2019 | Lecture 18 | variants - Turings machines with bi-infinite tape, k tapes, k heads, Non-determinsitc Turing machines, etc. Simulation of the variants by standard turing machine. Non-determistic turing machines have the same power as deterministic turing machines.
Universal turing machine -- a Turing Machine for the language membership problem of turing machines.
There exists languages that are not recursively enumerable. Counting argument. Cantor's diagonalization argument |
Lectures 30,31 of Kozen, 3.2 of Sipser |
29/10/2019 | Lecture 19 |
Universal turing machine -- a Turing Machine for the language membership problem of turing machines. Membership problem is recursively enumerable. It is not recrsive.
Proof by contradiction via Cantor's diagonalization argument to arrive. Co-recursively enumerable lanaguges. A language is recurive iff it is r.e. and co-r.e.
Exercise: Prove that Halting problem is not co-r.e. by diagonalisation. |
Lectures 30,31 of Kozen, 3.2 of Sipser |
29/10/2019 | Problem Set 10 | Submit on or before Thursday 31/10/2019 to the TAs for feedback. Answer each question in a separate sheet. Non complying submissions will not be read by the TAs |
Problem Set 10 |
04/11/2019 | Lecture 20 | Reductions. Epsilon-membership, and Non-emptiness are r.e. but not co-r.e. What about universality? | Lectures 32, 33 of Kozen |
05/11/2019 | Lecture 21 | More Reductions. Universality is not re, and not co-re. Finiteness is not re, not co-re. | Lectures 32, 33 of Kozen |
05/11/2019 | Problem Set 11 | Submit on or before Thursday 7/11/2019 to the TAs for feedback. Answer each question in a separate sheet. Non complying submissions will not be read by the TAs |
Problem Set 11 |
11/11/2019 | Lecture 22 | Rice's theorem. Proof. | Lectures 34 of Kozen |
18/11/2019 | Lecture 23 | Turing powerful models of computations.. 2-stack machines, k-counter machines - 4 counter machines can simulate 2-stack machines - 3 counter machines can simulate 2 stack machines - 2 counter machines can simulate 3 counter machines (Minsky machines) | 8.5 of HopcroftMotwaniUllman, Lecture 30 of Kozen |
19/11/2019 | Lecture 24 |
Turing powerful models of computations cntd .. Queue machines. Undecidability of universality of context free languages.. (reductions via encoding valid computation histories of a turing machine) Post's Correspondence Problem |
Undecidability of universality of CFL: Lecture 35 of Kozen PCP : 9.5 of HopcroftMotwaniUllman, 5.2 of Sipser |
20/11/2019 | Problem Set 12 | Submit on or before Friday 22/11/2019 to the TAs for feedback. Answer each question in a separate sheet. Non complying submissions will not be read by the TAs |
Problem Set 12 |