
CS 290: Classics in Theoretical Computer Science
Subhash Suri
MW 11:00 -- 1:00, Room: Phelps 1401

Course Description
Which papers have had the most significant impact on the Theory of Computing,
and in particular on shaping the modern Algorithmic Thinking? Not an easy
question to answer as everyone has their own favorites. This course will
focus on some of my own favorites. I have chosen these papers for their
intrinsic beauty, as well as their long lasting influence on the field.
Many of these papers have led to Turing Awards and Nevanlinna Prizes
for their authors (e.g. Karp, Tarjan, Rivest-Shamir-Adleman, Valiant),
as well foreshadowed entire new subfields within computer science (online
algorithms, competitive analysis, computational learning theory, computational
geometry, public key cryptography).
A tentative List of possible papers
for students to present.
The Selection and Sorting with Limited Storage paper.
A Sampler of Classics
- A Planar Separator Theorem and its Applications, by Lipton and
Tarjan (Nevanlinna Prize '82 and Turing award '86).
A fundamental result on planar graphs, with many applications.
- A Theory of the Learnable, by Leslie Valiant (Nevanlinna Prize
in '86). This paper started the field of Computational Learning
Theory, formalizing concept learning by examples.
- Amortized Efficient of List Update and Paging Rules,
by Sleator and Tarjan.
This paper formalized the modern algorithm analysis concepts of
amortized analysis and competitive ratios.
- Competitive Paging Algorithms, by Karp (Turing award '85) et al.
Extends Sleator-Tarjan models and derives bounds for fundamental
problems including caching and k servers.
- A Method for Obtaining Digital Signatures and Public-Key
Cryptosystems, by Rivest, Shamir, and Adleman (Turing award '02).
The famous RSA algorithm.
- Making Data Structures Persistent, by Driscoll, Sarnak,
Tarjan, and Sleator.
This classic paper gives a general technique for making any standard
(ephemeral) data structure into a persistent data structure.
- Bounds for Certain Multiprocessor Anomalies, by Ron Graham.
This 1966 (!) paper foreshadows Online Algorithms and Competitive analysis
by 25 years.
- Selection and Sorting with Limited Storage, by Munro and Paterson.
This 1980 paper was analyzing streaming algorithms in 1980 before there
was streaming, and giving surprising lower bounds.
- Geometric Complexity, by Shamos, and
Multidimensional Divide and Conquer, by Jon Bentley, founded
the field of Computational Geometry, giving powerful conceptual tools
and data structures for multi-dimensional data.
This is a preliminary list, and a few more gems will be added for the complete course.
A tentative Schedule for the lectures.
The course style will be a mix of lectures by the professor, open discussion, and
presentations by students. Because these topics span a broad spectrum of research
in computer science foundations, students must be well-versed in algorithm analysis
and comfortable with conceptual arguments and mathematical proofs, especially
reasoning based on combinatorial and graph theoretic concepts. In addition, they
should be able to extract the underlying core ideas of theory research papers and
explain them in class presentations.