In July-Nov 2026, I will be teaching CS 6190: Lattice Algorithms.

Course Description


Lattices are beautiful mathematical objects, with a long and rich history, and many surprising applications ranging from cryptography to complexity theory. We will study the mathematical theory behind lattices, including basic definitions and properties, computational problems related to them and classic as well as current best known algorithms to solve these problems. If time permits, we will also look at hard problems related to random linear codes.

Administrative Information


Lectures are Wednesdays 2:00-3:15 pm and Thursdays, 3:30-4:45 pm in CSB 36. Office hours are by appointment: just send me an email and drop in! The TA for the course will be Anuja Modi (cs21d405@cse.iitm.ac.in).

Pre-requisites.

This course requires mathematical maturity, you should be comfortable with the language of proofs. Knowledge of algorithms, theory of computing (i.e. familiarity with reductions), some algebra and probability theory is required. The course will be self contained for the most part but you should be familiar with the tools and techniques used in theoretical computer science.

Requirements (Tentative).


Resources

The course will have several commonalities with the following courses:

Topics


Below are the topics we will discuss in class. We'll cover some subset or superset of these, depending on time.