CSE206A: Lattices Algorithms and Applications (Spring 2007)

Istructor: Daniele Micciancio

Section ID: 588802
TuTh 12:30-1:50pm in EBU3b (CSE) 2154

Course description

Point lattices are powerful mathematical objects that have been used to efficiently solve many important problems in computer science, most notably in the areas of cryptography and combinatorial optimization. This course gives a general introduction to the theory of point lattices, and covers a selection of applications of lattices to both cryptography, cryptanalysis and other areas of computer science, mathematics, and communication theory.
Beside a wide range of applications (from cryptanalyzing low-exponent  RSA functions, to efficiently solving integer programming problems with constant number of variables, and more), this course will touch several central issues in the theory of computing, like

Prerequisites: The main prerequisites for the course are knowledge of basic math (e.g., linear algebra, finite fields, modular arithmetic, probability, etc.) and introductory level algorithms and complexity theory (analysis of algorithms, polynomial time solvability, NP-hardness, etc.) In particular, no prior knowledge of cryptography or advanced complexity theory is assumed.

Lecture Notes


Coursework for students enrolled in the course  will include 4 homework assignments, an optional term project (as an alternative to the last two homework assignments), and scribing notes for one lecture.

External Links

If you know of any link that you would like to be included, send me email.

Valid XHTML 1.0! Daniele Micciancio
Last Modified: April 5th, 2007