Pseudorandomness Full Text Available At
Total Page:16
File Type:pdf, Size:1020Kb
Full text available at: http://dx.doi.org/10.1561/0400000010 Pseudorandomness Full text available at: http://dx.doi.org/10.1561/0400000010 Pseudorandomness Salil P. Vadhan Harvard University Cambridge, MA 02138 USA [email protected] Boston { Delft Full text available at: http://dx.doi.org/10.1561/0400000010 Foundations and Trends R in Theoretical Computer Science Published, sold and distributed by: now Publishers Inc. PO Box 1024 Hanover, MA 02339 USA Tel. +1-781-985-4510 www.nowpublishers.com [email protected] Outside North America: now Publishers Inc. PO Box 179 2600 AD Delft The Netherlands Tel. +31-6-51115274 The preferred citation for this publication is S. P. Vadhan, Pseudorandomness, Foun- dation and Trends R in Theoretical Computer Science, vol 7, nos 1{3, pp 1{336, 2011 ISBN: 978-1-60198-594-1 c 2012 S. P. Vadhan All rights reserved. No part of this publication may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, mechanical, photocopying, recording or otherwise, without prior written permission of the publishers. Photocopying. In the USA: This journal is registered at the Copyright Clearance Cen- ter, Inc., 222 Rosewood Drive, Danvers, MA 01923. Authorization to photocopy items for internal or personal use, or the internal or personal use of specific clients, is granted by now Publishers Inc. for users registered with the Copyright Clearance Center (CCC). The `services' for users can be found on the internet at: www.copyright.com For those organizations that have been granted a photocopy license, a separate system of payment has been arranged. Authorization does not extend to other kinds of copy- ing, such as that for general distribution, for advertising or promotional purposes, for creating new collective works, or for resale. In the rest of the world: Permission to pho- tocopy must be obtained from the copyright owner. Please apply to now Publishers Inc., PO Box 1024, Hanover, MA 02339, USA; Tel. +1-781-871-0245; www.nowpublishers.com; [email protected] now Publishers Inc. has an exclusive license to publish this material worldwide. Permission to use this content must be obtained from the copyright license holder. Please apply to now Publishers, PO Box 179, 2600 AD Delft, The Netherlands, www.nowpublishers.com; e-mail: [email protected] Full text available at: http://dx.doi.org/10.1561/0400000010 Foundations and Trends R in Theoretical Computer Science Volume 7 Issues 1{3, 2011 Editorial Board Editor-in-Chief: Madhu Sudan Microsoft Research New England One Memorial Drive Cambridge, Massachusetts 02142 USA Editors Bernard Chazelle (Princeton) Oded Goldreich (Weizmann Inst.) Shafi Goldwasser (MIT and Weizmann Inst.) Jon Kleinberg (Cornell University) L´aszl´oLov´asz(Microsoft Research) Christos Papadimitriou (UC. Berkeley) Prabhakar Raghavan (Yahoo! Research) Peter Shor (MIT) Madhu Sudan (Microsoft Research) Eva´ Tardos (Cornell University) Avi Wigderson (IAS) Full text available at: http://dx.doi.org/10.1561/0400000010 Editorial Scope Foundations and Trends R in Theoretical Computer Science will publish survey and tutorial articles in the following topics: • Algorithmic game theory • Computational Number Theory • Computational algebra • Cryptography and information • Computational aspects of security combinatorics and graph theory • Data structures • Computational aspects of • Database theory communication • Design and analysis of algorithms • Computational biology • Distributed computing • Computational complexity • Information retrieval • Computational geometry • Operations Research • Computational learning • Parallel algorithms • Computational Models and • Quantum Computation Complexity • Randomness in Computation Information for Librarians Foundations and Trends R in Theoretical Computer Science, 2011, Volume 7, 4 issues. ISSN paper version 1551-305X. ISSN online version 1551-3068. Also available as a combined paper and online subscription. Full text available at: http://dx.doi.org/10.1561/0400000010 Foundations and Trends R in Theoretical Computer Science Vol. 7, Nos. 1{3 (2011) 1{336 c 2012 S. P. Vadhan DOI: 10.1561/0400000010 Pseudorandomness Salil P. Vadhan School of Engineering and Applied Sciences, Harvard University, Cambridge, MA, 02138, USA, [email protected] Abstract This is a survey of pseudorandomness, the theory of efficiently generat- ing objects that \look random" despite being constructed using little or no randomness. This theory has significance for a number of areas in computer science and mathematics, including computational com- plexity, algorithms, cryptography, combinatorics, communications, and additive number theory. Our treatment places particular emphasis on the intimate connections that have been discovered between a variety of fundamental \pseudorandom objects" that at first seem very differ- ent in nature: expander graphs, randomness extractors, list-decodable error-correcting codes, samplers, and pseudorandom generators. The structure of the presentation is meant to be suitable for teaching in a graduate-level course, with exercises accompanying each section. Full text available at: http://dx.doi.org/10.1561/0400000010 Contents 1 Introduction 1 1.1 Overview of this Survey 1 1.2 Background Required and Teaching Tips 6 1.3 Notational Conventions 7 1.4 Chapter Notes and References 7 2 The Power of Randomness 9 2.1 Polynomial Identity Testing 9 2.2 The Computational Model and Complexity Classes 16 2.3 Sampling and Approximation Problems 22 2.4 Random Walks and S-T Connectivity 31 2.5 Exercises 39 2.6 Chapter Notes and References 45 3 Basic Derandomization Techniques 49 3.1 Enumeration 50 3.2 Nonconstructive/Nonuniform Derandomization 51 3.3 Nondeterminism 55 3.4 The Method of Conditional Expectations 57 3.5 Pairwise Independence 61 3.6 Exercises 72 3.7 Chapter Notes and References 76 ix Full text available at: http://dx.doi.org/10.1561/0400000010 4 Expander Graphs 79 4.1 Measures of Expansion 79 4.2 Random Walks on Expanders 91 4.3 Explicit Constructions 101 4.4 Undirected S-T Connectivity in Deterministic Logspace 115 4.5 Exercises 120 4.6 Chapter Notes and References 126 5 List-Decodable Codes 131 5.1 Definitions and Existence 131 5.2 List-Decoding Algorithms 141 5.3 List-decoding Views of Samplers and Expanders 151 5.4 Expanders from Parvaresh{Vardy Codes 155 5.5 Exercises 159 5.6 Chapter Notes and References 163 6 Randomness Extractors 167 6.1 Motivation and Definition 168 6.2 Connections to Other Pseudorandom Objects 179 6.3 Constructing Extractors 189 6.4 Exercises 203 6.5 Chapter Notes and References 210 7 Pseudorandom Generators 213 7.1 Motivation and Definition 213 7.2 Cryptographic PRGs 220 7.3 Hybrid Arguments 225 7.4 Pseudorandom Generators from Average-Case Hardness 231 7.5 Worst-Case/Average-Case Reductions and Locally Decodable Codes 240 7.6 Local List Decoding and PRGs from Worst-Case Hardness 253 7.7 Connections to Other Pseudorandom Objects 262 Full text available at: http://dx.doi.org/10.1561/0400000010 7.8 Exercises 271 7.9 Chapter Notes and References 279 8 Conclusions 285 8.1 A Unified Theory of Pseudorandomness 285 8.2 Other Topics in Pseudorandomness 291 Acknowledgments 311 References 313 Full text available at: http://dx.doi.org/10.1561/0400000010 1 Introduction 1.1 Overview of this Survey Over the past few decades, randomization has become one of the most pervasive paradigms in computer science. Its widespread uses include: Algorithm Design: For a number of important algorithmic prob- lems, the most efficient algorithms known are randomized. For example: • Primality Testing: This was shown to have a randomized polynomial-time algorithm in 1977. It wasn't until 2002 that a deterministic polynomial-time algorithm was discovered. (We will see this algorithm, but not its proof.) • Approximate Counting: Many approximate counting prob- lems (e.g., counting perfect matchings in a bipartite graph) have randomized polynomial-time algorithms, but the fastest known deterministic algorithms take exponential time. • Undirected S-T Connectivity: This was shown to have a randomized logspace algorithm in 1979. It wasn't until 2005 that a deterministic logspace algorithm was discovered | using tools from the theory of pseudorandomness, as we will see. 1 Full text available at: http://dx.doi.org/10.1561/0400000010 2 Introduction • Perfect Matching: This was shown to have a randomized polylogarithmic-time parallel algorithm in the late 1970s. Deterministically, we only know polynomial-time algorithms. Even in the cases where deterministic algorithms of comparable com- plexity were eventually found, the randomized algorithms remain con- siderably simpler and more efficient than the deterministic ones. Cryptography: Randomization is central to cryptography. Indeed, cryptography is concerned with protecting secrets, and how can some- thing be secret if it is deterministically fixed? For example, we assume that cryptographic keys are chosen at random (e.g., uniformly from the set of n-bit strings). In addition to the keys, it is known that often the cryptographic algorithms themselves (e.g., for encryption) must be randomized to achieve satisfactory notions of security (e.g., that no partial information about the message is leaked). Combinatorial Constructions: Randomness is often used to prove the existence of combinatorial objects with a desired property. Specifi- cally, if one can show that a randomly chosen object has the property with nonzero probability, then it follows that such an object must, in fact, exist. A famous example due to Erd}osis the existence of Ramsey graphs: A randomly chosen n-vertex graph has no clique or indepen- dent set of size 2logn with high probability. We will see several other applications of this \Probabilistic Method" in this survey, such as with two important objects mentioned below: expander graphs and error- correcting codes. Though these applications of randomness are interesting and rich topics of study in their own right, they are not the focus of this survey. Rather, we ask the following: Main Question: Can we reduce or even eliminate the use of ran- domness in these settings? We have several motivations for doing this.