Algorithmic Aspects of Communication (Winter 2011)
Instructor: François Le Gall
Place: Thursday, 14:45 - 16:15, Room 102 of Science Building Number 7
Tentative schedule: 10/6, 10/13, 10/27, 11/10, 11/17, 11/24, 12/1, 12/22, 1/12, (no class on 1/19) 1/26
Course outline
This course will address several algorithmic and complexity-theoretic aspects of communication systems. It will cover the basics of communication complexity theory and error-correcting codes, protocols for secure multiparty computation and related cryptographic tasks, and also recent topics such as network coding theory. This course will be taught in English.
Topics
1. Communication complexity: deterministic and randomized protocols, lower bounds techniques, applications
2. Secure computation: secret sharing schemes, secure function evaluation
3. Error-correcting codes: foundations and examples of efficient codes
4. Network coding: formulation and examples, the max-flow bounds
Lectures
Lecture 1 [October 6]
Guidance and introduction: quick overview of communication complexity (the equality function), secure computation (the millionaire's problem and secret sharing), error correction, and network coding (the butterfly network, slides here).
Lecture 2 [October 13]
Communication complexity I: formal model of communication protocols and rectangles.
Lecture 3 [October 27]
Communication complexity II: lower bound techniques (the fooling set method, the rank method), applications to space-time tradeoffs for Turing machines.
Lecture 4 [November 10]
Communication complexity III: randomized communication complexity, applications to space lower bounds for data stream algorithms ( "The space complexity of approximating the frequency moments" by Alon, Matias and Szegedy).
Lecture 5 [November 17]
Secure Computation I: secret sharing schemes, Shamir's construction ( "How to share a secret" by Shamir).
Lecture 6 [November 24]
Secure Computation II: verifiable secret sharing schemes, two-party secure computation, oblivious transfer.
Lecture 7 [December 1]
Network coding: flow networks, the min-cut=max-flow theorem, examples of network coding protocols, the main theorem of multicast network coding.
Lecture 8 [December 22]
Guest lecture by Prof. David Avis: artificial intelligence, the Turing test.
Lecture 9 [January 12]
Error-correction codes I: foundations, the Hadamard code.
Lecture 10 [January 26]
Error-correction codes II: locally-decodable codes, information-theoretic private information retrieval.
Lecture 11 [February 2]
Error-correction codes III: computational private information retrieval.
Textbook and suggested reading
There is no required textbook for this course, but
students who want to study in more depth
communication complexity may refer to
Communication Complexity
by Kushilevitz and Nisan (Cambridge University Press, 1997).
A very complete reference for secure computation is Chapter 7 of the two-volume book
Foundations of Cryptography by Goldreich (Cambridge University Press, 2001 and 2004).
A good reference for network coding is the book Network Coding Fundamentals
by Fragouli and Soljanin (Now publishers, 2007), available online here.
Evaluation
Evaluation on submitted final reports.
Here are the assignments.