COL352 – Introduction to Automata & Theory of Computation

January 2025 – May 2025

Course timings & Venue:

H slot: Mondays & Wednesdays 1100 – 1150 (LH 108), and Thursdays 1200 – 1250 (LH 121).



Prerequisites

This fundamental material covered in this course is fairly abstract and theoretical, and will therefore require some mathematical acumen — students should, at the very least, be able to write and understand rigorous formal proofs, especially those involving various kinds of induction. Various discrete maths concepts like closures, cardinality etc. will also feature strongly, so students should be familiar with these as well. The COL202 (Discrete Mathematical Structures) course is a strict prerequisite.


Evaluation policy

  • Minor: 25%. No re-minor will be conducted. If you miss the minor for a medical reason (with appropriate documentation produced within one week of the minor), the major marks will be scaled up accordingly.

  • Major: 35%. The syllabus for the major exam will include everything covered in the course.

  • Quizzes: 35–40%. There will be both scheduled and surprise quizzes conducted at various points during the semester. The best n-1 out of n surprise quizzes will be considered. All scheduled quizzes will count towards the final grade. Absence in a quiz is directly marked 0. No make-up quizzes will be conducted.

  • In-class tutorial questions: 0–5%.

  • Bonus: Asking questions and participating on Piazza and participating in Q&A in the TA-run tutorials: 0– 5%. This incentivizes an intent to learn — for questions to receive a bonus, students must have tried the problem by themselves beforehand and be willing to engage in a discussion with the teaching staff. This bonus will only be added to the final total, and is computed as (100-(your total))/100 * (instances of participation)/5 * constant, with a choice of constant such that this value normalizes to a maximum of 5%.

Audit pass needs at least a B- overall, including at least 25% out of the 35–40% earmarked for quizzes.

Deviation of any sort from the IIT Delhi honour code (copying, plagiarism, collaborating on gradable items where explicitly disallowed etc. – see here and here for more examples) will summarily result in an F grade, or in case of audit, an NF, and potentially further disciplinary action.

Reference material

We will follow notes presented in class, for the most part, which will be uploaded here. Some external references for much of the course are listed below (caveat emptor: notation used in these books might differ significantly from that used in class).

TAs & Office Hours

I will have my office hours on Mon, Thu 2–3PM in my office (412 Bharti Building).
The TAs (listed below) will hold their office hours at the General Computing Lab (GCL, 507 Bharti Building).

  • Raghav Ajmera (2021CS10562): Tue, Fri 4–5PM   Tut: Fri 6–7PM

  • Adithya Bijoy (2021CS10571): Tue, Fri 1–2PM   Tut: Wed 6–7PM

  • Vatsal Jingar (2020CS50449): Mon, Thu 12–1PM   Tut: Mon 6.30–7.30PM

  • Shreyash Satish Chikte (2024MCS2458): Mon, Wed 3–4PM

  • Ramanuj Goel (2020CS50437): Mon, Thu 2–3PM   Tut: Wed 6–7PM

  • Lakshay Saggi (2022CSZ8231): Wed, Thu 4–5PM   Tut: Wed 6–7PM

  • Utkarsh Sharma (2021CS10098): Thu, Fri 2–3PM   Tut: Fri 6–7PM

Lecture Notes & Reference Material

Date Material covered Slides and upplementary material (if any)
2 January, 2025

Preliminaries and introduction

Slides
6 January, 2025

Deterministic finite-state automata

Slides
8 January, 2025

Regular languages

Slides
9 January, 2025

Nondeterminism

Slides

Tutorial sheet 1

13 January, 2025

NFAs and DFAs are equivalent

Slides
15 January, 2025

Regular expressions

Slides
20 January, 2025

DFA minimization: The Myhill-Nerode theorem

Slides
22 January, 2025

DFA minimization: Algorithm

Slides

The video linked to in the slides is here.
The L* DFA learning algorithm is closely connected to the Myhill-Nerode theorem and the techniques we have used for minimizing DFAs. The original paper is quite readable, and gives a nice overview of the procedure involved in learning a DFA from language membership queries.

23 January, 2025

Limitations of DFAs

Slides

This page has an excellent compendium of tiny exercises you can try out to test your understanding of some of the material we cover in this course. Given the material we have covered so far, you should go through Part A. If you have ideas about extending/improving this webpage, come talk to me!

27 January, 2025

Pumping lemma

Slides

Tutorial sheet 2

29 January, 2025

Non-regular languages

Slides
30 January, 2025

Context-free grammars

Slides
3 February, 2025

Context-free languages

Slides
6 February, 2025

Pushdown automata

Slides
10 February, 2025

More about pushdown automata

Slides

For details of how to show the equivalence between acceptance by empty stack and final state, see Supplementary Lecture E in Kozen's Automata and Computability.

12 February, 2025

Languages accepted by PDAs

Slides
17 February, 2025

Context-free = PDA-recognizable (part 1)

Slides

Tutorial sheet 3

19 February, 2025

Context-free = PDA-recognizable (part 2)

Slides
20 February, 2025

Context-free = PDA-recognizable (part 3)

Slides