CS395T: Pseudorandomness (Fall 2009)

Logistics: TTh 11-12:30
WAG 112
Unique Number: 55015
Course web page: http://www.cs.utexas.edu/~diz/395T
Professor: David Zuckerman
Email: diz@cs.utexas.edu
Office: TAY 3.134
Phone: 471-9729
www.cs.utexas.edu/~diz
Office Hours: W 2-3pm
Course Overview: Randomization is very useful in almost all areas of computer science, such as algorithms, cryptography, and distributed computing. These uses of randomness seem wonderful until one realizes that computers do not use truly random bits. Instead, most computers get their random bits by using pseudorandom generators. A pseudorandom generator is a deterministic algorithm that takes as input a short random seed and outputs a long string which is ``random'' enough for the purpose at hand.

In this course, we will develop provably good pseudorandom generators (PRGs) for a variety of tasks. We will also study several important, related pseudorandom objects: expander graphs, randomness extractors, and error-correcting codes. We will discuss several recent results, including algebraic extractors from codes, applications of additive number theory, pseudorandom generators for polynomials, and SL=L. A tentative list of topics and approximate times follows.

Basics: Introduction, basic coding theory, k-wise independence (1-2 weeks).

Fourier Analysis: small-bias sets, almost k-wise independence, linearity test, PRG for polynomials (1-2 weeks).

Expander Graphs: connection with small-bias sets, Chernoff bound for random walks, explicit constructions, SL=L (2 weeks).

Randomness Extractors: Leftover Hash Lemma, relation to expanders, constructions (2 weeks).

PRGs for Space-Bounded Computation: PRGs from extractors and expanders (1 week).

Polynomial Method and List Decoding: List decoders for RS codes and Parvaresh-Vardy codes, uses for extractors, Kakeya sets and mergers (2 weeks).

Additive Number Theory: Sum-product theorem and incidence theorem, 1-bit condenser, 2-source extractor (1 week).

PRGs and Hardness: cryptographic setting and hardcore bits, derandomization setting, extractors from black-box PRGs (2 weeks).

Useful References: The main reference for this class will be Salil Vadhan's pseudorandomness survey; Volume 2 should be available soon.
Earlier versions of this class: 2003 and 2001 with lecture notes.
Similar classes:
Salil Vadhan: Pseudorandomness
Luca Trevisan: Pseudorandomness and combinatorial constructions (contains lecture notes)
Chris Umans: Pseudorandomness and combinatorial constructions
Valentine Kabanets: Pseudorandomness (contains lecture notes)
Surveys:
Madhu Sudan's lecture notes on coding theory
Hoory, Linial, and Wigderson's survey, Expander Graphs and their Applications
Oded Goldreich's book, Modern Cryptography, Probabilistic Proofs, and Pseudorandomness
Peter Bro Miltersen's book chapter, Derandomizing Complexity Classes
My talk on
Codes in Theoretical Computer Science
Ryan O'Donnell's survey of Fourier analysis, Some Topics in Analysis of Boolean Functions
Sanjeev Arora's lecture notes on Fourier analysis
Prerequisites: Mathematical and computational maturity. For example, CS 388C or CS 388R is sufficient. A good background in probability is essential; for example, I will assume knowledge of moments and deviation bounds (Markov, Chebychev, and Chernoff) and the basic probabilistic method. You may read up on this in Mitzenmacher and Upfal's Probability and Computing, Sections 3.1-3.3, 4.1-4.2, 6.1-6.2. I will also assume knowledge of basic linear algebra, as well as basic computational complexity, including P, NP, and reductions. Experience with abstract algebra will be helpful. Finally, I won't be motivating the material with many randomized algorithms, so you'll appreciate the course more if you've seen randomized algorithms.
Grading: 70%: Homework (about three problem sets)
30%: Project
Homework
policy:
Collaboration policy: I encourage you to discuss homework problems with your classmates. However, you must write up your own solutions. Furthermore, you must acknowledge any collaboration by writing the names of your collaborators on the front page of the assignment.

Citation policy: If you use a solution or part of a solution that you found in the literature or on the web, you must cite it. Furthermore, you must write up the solution in your own words.

Late policy: Each student has five late days that they can use during the semester with no penalty (e.g., one assignment two days late and one three days late). Once late days are used up, no credit will be given for late assignments. A day here means 24 hours (so it begins and ends at 11am). Friday 11am to Monday 11am counts as one day.

Students with
Disabilites:
Any student with a documented disability (physical or cognitive) who requires academic accommodations should contact the Services for Students with Disabilities area of the Office of the Dean of Students at 471-6259 (voice) or 471-4641 (TTY for users who are deaf or hard of hearing) as soon as possible to request an official letter outlining authorized accommodations.

Last modified: September 22, 2009.