Outline Introduction Circuits PRGs Uniform Derandomization Refs. Derandomization. A Basic Introduction. Antonis Antonopoulos.



From this document you will learn the answers to the following questions:

What is a pseudorandom generator?

What type of function does there exist for every probabilistic polynomial - time algorithm A?

What kind of function is a 2 n - time function?

Similar documents
Lecture 1: Course overview, circuits, and formulas

Lecture 5 - CPA security, Pseudorandom functions

2.1 Complexity Classes

Lecture 4: AC 0 lower bounds and pseudorandomness

Lecture 2: Universality

Lecture 15 An Arithmetic Circuit Lowerbound and Flows in Graphs

Relativized Separations of Worst-Case and Average-Case Complexities for NP

Notes on Complexity Theory Last updated: August, Lecture 1

On the Unique Games Conjecture

8.1 Min Degree Spanning Tree

Lecture 7: NP-Complete Problems

Diagonalization. Ahto Buldas. Lecture 3 of Complexity Theory October 8, Slides based on S.Aurora, B.Barak. Complexity Theory: A Modern Approach.

Introduction to computer science

Near Optimal Solutions

Ch.9 Cryptography. The Graduate Center, CUNY.! CSc Theoretical Computer Science Konstantinos Vamvourellis

Algebraic Computation Models. Algebraic Computation Models

P versus NP, and More

6.2 Permutations continued

Notes from Week 1: Algorithms for sequential prediction

Private Approximation of Clustering and Vertex Cover

Welcome to... Problem Analysis and Complexity Theory , 3 VU

Lecture 13 - Basic Number Theory.

Fairness in Routing and Load Balancing

CSE 135: Introduction to Theory of Computation Decidability and Recognizability

Complexity Theory. IE 661: Scheduling Theory Fall 2003 Satyaki Ghosh Dastidar

Single machine parallel batch scheduling with unbounded capacity

Definition Given a graph G on n vertices, we define the following quantities:

Bounding Rationality by Discounting Time

Influences in low-degree polynomials

Computational Complexity: A Modern Approach

Reminder: Complexity (1) Parallel Complexity Theory. Reminder: Complexity (2) Complexity-new

Reminder: Complexity (1) Parallel Complexity Theory. Reminder: Complexity (2) Complexity-new GAP (2) Graph Accessibility Problem (GAP) (1)

Guessing Game: NP-Complete?

Exponential time algorithms for graph coloring

Lecture 22: November 10

Lecture 10: CPA Encryption, MACs, Hash Functions. 2 Recap of last lecture - PRGs for one time pads

OHJ-2306 Introduction to Theoretical Computer Science, Fall

CMSC 858T: Randomized Algorithms Spring 2003 Handout 8: The Local Lemma

14.1 Rent-or-buy problem

Why? A central concept in Computer Science. Algorithms are ubiquitous.

Course Manual Automata & Complexity 2015

How To Solve A K Path In Time (K)

HOMEWORK 5 SOLUTIONS. n!f n (1) lim. ln x n! + xn x. 1 = G n 1 (x). (2) k + 1 n. (n 1)!

Cycles and clique-minors in expanders

6.852: Distributed Algorithms Fall, Class 2

Chapter. NP-Completeness. Contents

Polynomial Degree and Lower Bounds in Quantum Complexity: Collision and Element Distinctness with Small Range

Markov random fields and Gibbs measures

Determination of the normalization level of database schemas through equivalence classes of attributes

GRAPH THEORY LECTURE 4: TREES

NP-complete? NP-hard? Some Foundations of Complexity. Prof. Sven Hartmann Clausthal University of Technology Department of Informatics

Complexity Classes. Chapter 27 of the forthcoming CRC Handbook on Algorithms and Theory of Computation. Eric Allender 1. Rutgers University

The positive minimum degree game on sparse graphs

Computational Complexity: A Modern Approach. Draft of a book: Dated January 2007 Comments welcome!

A Practical Scheme for Wireless Network Operation

(IALC, Chapters 8 and 9) Introduction to Turing s life, Turing machines, universal machines, unsolvable problems.

Factoring & Primality

Midterm Practice Problems

NP-Completeness. CptS 223 Advanced Data Structures. Larry Holder School of Electrical Engineering and Computer Science Washington State University

Permutation Betting Markets: Singleton Betting with Extra Information

MACs Message authentication and integrity. Table of contents

Lecture 9 - Message Authentication Codes

0.1 Phase Estimation Technique

Arithmetic complexity in algebraic extensions

Computational complexity theory

Computer Algorithms. NP-Complete Problems. CISC 4080 Yanjun Li

Universality in the theory of algorithms and computer science

Constant-Round Leakage-Resilient Zero-Knowledge Arguments of Knowledge for NP

Non-Black-Box Techniques In Crytpography. Thesis for the Ph.D degree Boaz Barak

The Advantages and Disadvantages of Online Linear Optimization

(67902) Topics in Theory and Complexity Nov 2, Lecture 7

Weighted Sum Coloring in Batch Scheduling of Conflicting Jobs

A Uniform Asymptotic Estimate for Discounted Aggregate Claims with Subexponential Tails

Problem Set 7 Solutions

Data Streams A Tutorial

Mathematical Induction. Lecture 10-11

Discrete Mathematics Problems

The Complexity of Online Memory Checking

NP-Completeness I. Lecture Overview Introduction: Reduction and Expressiveness

Reading 13 : Finite State Automata and Regular Expressions

Computational Soundness of Symbolic Security and Implicit Complexity

1 The Line vs Point Test

Oracles Are Subtle But Not Malicious

Security Analysis for Order Preserving Encryption Schemes

2. (a) Explain the strassen s matrix multiplication. (b) Write deletion algorithm, of Binary search tree. [8+8]

1 Definition of a Turing machine

The Challenger-Solver game: Variations on the theme of P =?NP

CHAPTER 5. Number Theory. 1. Integers and Division. Discussion

Complexity Theory. Jörg Kreiker. Summer term Chair for Theoretical Computer Science Prof. Esparza TU München

GENERATING LOW-DEGREE 2-SPANNERS

On Rank vs. Communication Complexity

Equivalence of Polynomial Identity Testing and Deterministic Multivariate Polynomial Factorization

Algebrization: A New Barrier in Complexity Theory

INDISTINGUISHABILITY OF ABSOLUTELY CONTINUOUS AND SINGULAR DISTRIBUTIONS

SYMMETRIC ENCRYPTION. Mihir Bellare UCSD 1

NP-Completeness and Cook s Theorem

Outline. NP-completeness. When is a problem easy? When is a problem hard? Today. Euler Circuits

Tutorial 8. NP-Complete Problems

THE P VERSUS NP PROBLEM

Practice with Proofs

Transcription:

Derandomization A Basic Introduction Antonis Antonopoulos CoReLab Seminar National Technical University of Athens 21/3/2011

1 Introduction History & Frame Basic Results 2 Circuits Definitions Basic Properties Hard Functions Circuit Lower Bounds 3 PRGs Pseudorandom Generator Definitions Main Derandomization Results 4 Uniform Derandomization Derandomization of BPP Derandomization of other CCs 5 Refs

History & Frame Introduction Randomness offered much efficiency and power as a computational resource. Derandomization is the transformation of a randomized algorithm to a deterministic one: Simulate a probabilistic TM by a deterministic one, with (only) polynomial loss of efficiency! Indications: 1 Pseudorandomness (Randomness doesn t really exist.) 2 Practical examples of Derandomization Possibilities concernig Randomized Languages: 1 Randomization always help! (BPP = EXP) 2 The extend to which Randomization helps is problem-specific. 3 True Randomness is never needed: Simulation is possible! (BPP = P)

History & Frame Facts Yao,and Blum-Micali introduced the concept of hardness-randomness tradeoffs: If we had a hard function, we could use it to compute a string that looks random to any feasible adversary (distinguisher). In a cryprographic context, they introduced Pseudorandom Generators. Nisam & Wigderson weakened the hardness assumption (for the purposes of Derandomization), introducing new tradeoffs between hardness and randomness. Impagliazzo & Wigderson proved that P=BPP if E requires exponential-size circuits. All the above results are in non-uniform settings, i.e. Lower Bounds of uniform classes in non-uniform models. Impagliazzo & Wigderson proved also a result based on Uniform complexity assumption (BPP EXP)!

Basic Results Basic Results Outline BPP = P: Randomness never solves new problems (Robustness of our models). BPP = EXP: Randomness is powerful. Either: BPP = P No problem in E = DTIME(2 O(n) ) has strictly exponential circuit complexity. Either: BPP = EXP Any problem in BPP has a deterministic subexponential algorithm (SUBEXP = ɛ>0 DTIME(2nɛ )) that works on almost all instances. Simiral results for other randomized classes!

Basic Results Basic Results Outline If we prove Lower Bounds (for some language in EXP), derandomization of BPP will follow. On the other hand, the existence of a quick PRG would imply a superpolynomial Circuit Lower Bound for EXP. Derandomization requires Circuit Lower Bounds: EXP P /poly EXP = MA NEXP P /poly NEXP = EXP = MA It is impossible to separate NEXP and MA without proving that NEXP P /poly.

Definitions Outline 1 Introduction History & Frame Basic Results 2 Circuits Definitions Basic Properties Hard Functions Circuit Lower Bounds 3 PRGs Pseudorandom Generator Definitions Main Derandomization Results 4 Uniform Derandomization Derandomization of BPP Derandomization of other CCs 5 Refs

Definitions Boolean Circuits A Boolean Circuit is a natural model of nonuniform computation. Definition (Boolean circuits...) For every n N an n-input, single output Boolean Circuit C is a directed acyclic graph with n sources and one sink. All nonsource vertices are called gates and are labeled with one of (and), (or) or (not). The vertices labeled with and have fan-in (i.e. number or incoming edges) 2. The vertices labeled with have fan-in 1. The size of C, denoted by C, is the number of vertices in it.

Definitions Boolean Circuits Definition (...Boolean circuits cont.) For every n N an n-input, single output Boolean Circuit C is a directed acyclic graph with n sources and one sink. For every vertex v of C, we assign a value as follows: for some input x {0, 1} n, if v is the i-th input vertex then val(v) = x i, and otherwise val(v) is defined recursively by applying v s logical operation on the values of the vertices connected to v. The output C(x) is the value of the output vertex. The depth of C is the length of the longest directed path from an input node to the output node. The fixed size of the input limits our model, so we allow families of circuits to be used!

Definitions Circuit Families Definition Let T : N N be a function. A T (n)-size circuit family is a sequence {C n } n N of Boolean circuits, where C n has n inputs and a single output, and its size C n T (n) for every n. Definition P /poly is the class of languages that are decidable by polynomial size circuits families. That is, P /poly = c SIZE(n c ) P P /poly If NP P /poly, then PH = Σ p 2 (Karp-Lipton Theorem) If EXP P /poly, then EXP = Σ p 2 (Meyer s Theorem)

Basic Properties Theorem (Nonuniform Hierarchy Theorem) For every functions T, T : N N with 2n n > T (n) > 10T (n) > n, Definition SIZE(T (n)) SIZE(T (n)) For a finite Boolean Function f : {0, 1} n {0, 1}, we define the (circuit) complexity of f as the size of the smallest Boolean Circuit computing f (that is, C(x) = f (x), x {0, 1} n ). We can generalize the above definition for string functions: Definition (Circuit Complexity) For a finite Boolean Function f : {0, 1} {0, 1}, and {f n } be such that f (x) = f x (x) for every x. The (circuit) complexity of f is a function of n that represents the smallest Boolean Circuit computing f n (that is, C x (x) = f (x), x {0, 1} ).

Basic Properties Circuit Families & Functions A super-polynomial circuit complexity for any (boolean) function in NP, would imply that P NP. If f has a uniform (i.e. a polynomial-time algorithm that on input n produces a circuit computing f n ) sequence of polynomial-size circuits, then f P. Also, any f P has a uniform sequence of polynomial-size circuits. If we prove that NP P /poly, then we will have shown that P NP We use this computational model, instead of TMs, because circuits are considered more direct or pervasive. We also know (since 1949) that some functions require very large circuits to compute...

Hard Functions Existence of Hard Functions Theorem (C.E. Shannon) For every n > 1, f : {0, 1} n {0, 1} that cannot be computed by a circuit C of size 2n 10n. Proof: We use simple counting arguments: The number of functions f : {0, 1} n {0, 1} is 2 2n Every circuit at size at most S can be described as a string of 9S log S, the nimber of circuits is at most 29S log S We set S = 2n 10n 29S log S 2 2n 9n/10n < 2 2n So, there exists a function that is not computed by circuits of that size! By( more careful calculations, ) we can obtain a bound of: 2 n 1 + log n n O(1/n) (2005).

Circuit Lower Bounds Introduction Many researchers believed that circuit lower bounds are indeed the solution to the P vs. NP. But the best lower bound for an NP language we have is 5n o(n) (2005). Better lower bounds for some special cases: Bounded depth circuits: exp ( Ω(n 1/(d 1) ) ) (for PARITY function). Monotone circuits: 2 Ω(n1/8) (for CLIQUE), but exponential gap with general circuits. Bounded depth circuits with counting gates.

Outline 1 Introduction History & Frame Basic Results 2 Circuits Definitions Basic Properties Hard Functions Circuit Lower Bounds 3 PRGs Pseudorandom Generator Definitions Main Derandomization Results 4 Uniform Derandomization Derandomization of BPP Derandomization of other CCs 5 Refs

Pseudorandom Generator Definitions Definitions Definition (Yao-Blum-Micali Definition) Let G : {0, 1} {0, 1} be a polynomial-time computable function. Also, let l : N N be a polynomial-time computable function such that n : l(n) > n. We say that G is a pseudorandom generator of stretch l(n), if G(x) = l( x ) for every x {0, 1}, and for every probabilistic polynomial-time algorithm A, there exists a negligible function ɛ : N [0, 1] such that: Pr [A(G(U n )) = 1] Pr [ A(U l(n) ) = 1 ] < ɛ(n) Stretch Function: l : N N Computational Indistinguishability: any algorithm A cannot decide whether a string is an output of the generator, or a truly random string. Resources used: Its own computational complexity.

Pseudorandom Generator Definitions Definitions Theorem If one-way functions exist, then for every c N, there exists a pseudorandom generator with stretch l(n) = n c. Definition (Nisan-Wigderson Definition) A distribution R over {0, 1} m is an (S, ɛ)-pseudorandom (for S N, ɛ > 0) if for every circuit C, of size at most S: Pr [C(R) = 1] Pr [C(U m ) = 1] < ɛ where U m denotes the uniform distribution over {0, 1} m If S : N N, a 2 n -time computable function G : {0, 1} {0, 1} is an S(l)-pseudorandom generator if G(z) = S( z ) for every z {0, 1} and for every l N the distribution G(U l ) is (S(l) 3, 1 10 )-pseudorandom.

Pseudorandom Generator Definitions Definitions The choices of the constants 3 and 1 10 are arbitrary. The functions S : N N will be considered time-constructible and non-decreasing. The main differences are: We allow non-uniform distinguishers, instead of TMs. The generator runs in exponential time instead of polynomial. Theorem Suppose that there exists an S(l)-pseudorandom generator for a time-constructible nondecreasing S : N N. Then, for every polynomial-time computable function l : N N, and for some constant c: BPTIME(S(l(n)) DTIME(2 cl(n) )

Main Derandomization Results Main Results Theorem If there exists a 2 ɛl -pseudorandom generator for some constant ɛ > 0, then BPP = P. If there exists a 2 lɛ -pseudorandom generator for some constant ɛ > 0, then BPP QuasiP. If for every c > 1 there exists an l c -pseudorandom generator, then BPP SUBEXP. We can relate the existence of PRGs with the (non-uniform) hardness of certain Boolean functions. That is, the size of the smallest Boolean Circuit which computes them.

Main Derandomization Results Main Results Definition (Average-case and Worst-case hardness) For f : {0, 1} n {0, 1}, and ρ [0, 1] we define the ρ-average-case hardness of f, denoted H ρ avg (f ), to be the largest S that for every circuit C of size at most S: Pr x {0,1} n [C(x) = f (x)] < ρ We define the worst-case hardness of f, denoted H wrs (f ) to equal Havg 1 (f ), and the average-case hardness of f, denoted H avg (f ) to equal: max{s Havg 1/2+1/S (f ) S}. That is, H avg (f ) is the largest number S such that: Pr x {0,1} n [C(x) = f (x)] < 1 2 + 1 S for every Boolean Circuit C on n inputs with size at most S.

Main Derandomization Results Main Results Theorem (PRGs from average-case hardness) Let S : N N be time-constructible and non-decreasing. If there exists f DTIME(2 O(n) ) such that n : H avg (f )(n) S(n), then there exists an S(δl) δ -peudorandom generator for some constant δ > 0. We can connect Average-case hardness with worst-case hardness using the following Lemma: Theorem Let f E be such that H wrs (f )(n) S(n) for some time-constructible nondecreasing S : N N. Then, there exists a function g E and a constant c > 0 such that: H avg (g)(n) S(n/c) 1/c for every sufficiently large n.

Main Derandomization Results Main Results Theorem (Derandomizing under worst-case assumptions) Let S : N N be time-constructible and nondecreasing. If there exists f DTIME(2 O(n) ) such that n : H wrs (f )(n) S(n), then there exists a S(δl) δ -peudorandom generator for some constant δ > 0. In particular, the following hold: 1 If there exists f E = DTIME(2 O(n) ) and ɛ > 0 such that H wrs (f )(n) 2 ɛn, then BPP = P. 2 If there exists f E = DTIME(2 O(n) ) and ɛ > 0 such that H wrs (f )(n) 2 nɛ, then BPP QuasiP. 3 If there exists f E = DTIME(2 O(n) ) such that H wrs (f )(n) n ω(1), then BPP SUBEXP.

Outline 1 Introduction History & Frame Basic Results 2 Circuits Definitions Basic Properties Hard Functions Circuit Lower Bounds 3 PRGs Pseudorandom Generator Definitions Main Derandomization Results 4 Uniform Derandomization Derandomization of BPP Derandomization of other CCs 5 Refs

Derandomization of BPP Uniform Derandomization of BPP Theorem (IW98) If EXP BPP, then, for every ɛ > 0, every BPP algorithm can be simulated deterministically in time 2 nɛ so that, for infinitely many n s, this simulation is correct on at least 1 1 n fraction of all inputs of size n. But: That s the first (universal) Derandomization result, which implies the non-trivial derandomization of BPP, under a fair (but open) assumption! 1 The simulation works only for infinitely many input lengths (i.o. complexity) 2 May fail on a negligible fraction of inputs even of these lengths!

Derandomization of BPP Proof Outline 1 Hard Function: We will use a Σ p 2-hard Boolean Function f with some desired properties (PERMANENT in our case). 2 The Generator: We ll construct a PRG G using the above function, similar to the NW-construction. 3 Derandomization: We will fix a (probabilistic) algorithm L BPP, and for all inputs we will run it deterministically over all outputs of G, and take the majority vote! If this algorithm fails to be in subexponential time, then we ll have an efficient distinguisher! 4 Removing the Oracle: If the above holds we have: An efficient algorithm for f n given an oracle. We can use our construction as a BPP algorithm for f, by removing its oracles! And, thus, we have a contradiction, which proves our theorem!

Derandomization of other CCs Uniform Derandomization of RP Theorem (Kab01) At least one of the following holds: 1 RP ZPP 2 For any ɛ > 0, every RP algorithm can be simulated in deterministic time 2 nɛ so that, for any polynomial-time computable function f : {1} n {0, 1} n, there are infinitely many n s where the simualtion is correct on the input f (1 n ).

Derandomization of other CCs Uniform Derandomization of AM Theorem (Lu00) At least one of the following holds: 1 AM = NP 2 For any ɛ > 0, every NP (and every conp) algorithm can be simulated in deterministic time 2 nɛ so that, for any polynomial-time computable function f : {1} n {0, 1} n, there are infinitely many n s where the simualtion is correct on the input f (1 n ). Since GNI is in both AM and conp, the above theorem implies that either GNI NP, or it can be simulated in deterministic subexponential time, so that the simulation is correct with respect to any pol-time computable function f : {1} n {0, 1} n.

Derandomization of other CCs Uniform Derandomization of AM Theorem (GST03) If E AM-TIME(2 ɛn ) for some ɛ > 0, then every language L AM has an NP algorithm A such that, for every polynomial-time computable function f : {1} n {0, 1} n there are infinitely many n s where the algorithm A decides correctly L on the input f (1 n ). Gap Theorem interpretation: Either AM is almost as powerful as E, or AM is no more powerful than NP from the point of view of any efficient observer!

Further Reading Sanjeev Arora and Boaz Barak, Computational Complexity: A Modern Approach. Cambridge University Press, 1 edition, April 2009. Russell Impagliazzo,Hardness as Randomness: a survey of universal derandomization, 2003 Valentine Kabanets,Derandomization: a Brief Overview. Bulletin of the EATCS, 76:88-103, 2002. Russell Impagliazzo and Avi Wigderson, Randomness vs Time: De-Randomization under a Uniform Assumption, 1998 Valentine Kabanets, Easiness assumptions and hardness tests: Trading time for zero error, 2001 Chi-Jen Lu. Derandomizing Arthur-Merlin Games under Uniform Assumptions, 2000 Dan Gutfreund, Ronen Shaltiel, and Amnon Ta-Shma. Uniform hardness versus randomness tradeoffs for Arthur-Merlin games, 2003

Thank You!