Randomized Algorithms, Properties of BPP 1 Examples of Randomized Algorithms

Total Page:16

File Type:pdf, Size:1020Kb

Randomized Algorithms, Properties of BPP 1 Examples of Randomized Algorithms 6.841/18.405J Advanced Complexity Theory February 26, 2003 Lecture 6: Randomized Algorithms, Properties of BPP Instructor: Prof. Madhu Sudan Scribe: Shien Jin Ong Recap: In the previous lecture, we defined ZPP; RP; co-RP; BPP. The following relationships between complexity classes are known. 1. P ZPP RP NP ⊆ ⊆ ⊆ 2. P ZPP co-RP co-NP. ⊆ ⊆ ⊆ 3. RP co-RP BPP. [ ⊆ 4. ZPP = RP co-RP. \ The relationship between BPP and NP is still unknown. We, however, can prove that P = BPP under some reasonable assumptions. Therefore, our belief is that P = BPP NP. ⊆ 1 Examples of Randomized Algorithms We give randomized algorithms for the following problems. 1. Polynomial Identity Testing. 2. Undirected Path. 1.1 Polynomial Identity Testing We study the polynomial identity testing in the oracle model. That is given two multivariate polynomial p(x1; : : : ; xn) and q(x1; : : : ; xn) over a field F, can we determine that p = q? This problem is equivalent to determining whether h def= p q = 0. We assume that the polynomial h is − not given to us explicitly, but as an oracle Oh (black box). Given inputs α1; : : : ; αn F, oracle Oh 2 will output the value of h(α1; : : : ; αn). Next, we define the total degree of a polynomial. Let p be a polynomial such that i1 in p(x1; : : : ; xn) = ci1 in x1 xn : X ··· ··· Then, total degree of p = max i1 + + in : ci in =0f ··· g 1··· 6 Problem (Polynomial Identity Testing): Given oracle Oh which computes the polynomial h of total degree d in n variables over a finite field F. Does there exist α1; : : : ; αn F such that h(α1; : : : ; αn) = 2 6 0, i.e., is h(x1; : : : ; xn) = 0? Trivially, polynomial6 identity testing (PIT) can be done in NPA (nondeterministic polynomial time in n, d, and F ). However, PIT is not in PA (exercise). We show that PIT is in RPA. Our j j randomized algorithm takes a sufficiently large subset, S, of F and then choose α1; : : : ; αn uniformly at random from S and test whether h(α1; : : : ; αn) = 0. Lemma 1 If p(x1; : : : ; xn) = 0 is a polynomial of total degree d over a field F and S F, then 6 ⊆ d Pr [p(α1; : : : ; αn) = 0] : n (α1,...,αn) S ≤ S j j 1 The proof of Lemma 1 is left as an exercise. If we choose a set S F such that S = 2d, ⊆ j j our algorithm makes an error on instances h(x1; : : : ; xn) = 0 with probability at most 1=2. When 6 h(x1; : : : ; xn) = 0, our algorithm never errs. Let us do an example to illustrate the appplicability of Lemma 1. Problem 1: What is the probability (over x1; : : : ; xn) that x1 x3 xn = 0? Answer: Since the operation is just addition modulo 2, the⊕ probability⊕ is at most 1=2 (in fact, exactly 1=2). ⊕ Problem 2: Suppose we are given a n n matrix M whose entries are linear equations of × x1; : : : ; xk. Can we decide whether det(M) 0? ≡ Answer: Since det(M) can be evaluate efficiently when we plug in values for x1; : : : ; xk, this problem is in RP. 1.2 Undirected Path Analogous with the randomized time complexity classes, we have the following randomized log-space complexity classes { ZPL; RP; co-RL; BPL. There are two major differences between a randomized log-space machine and a randomized polynomial-time machine. 1. For randomized log-space computations, we require that the machine has only one-way access to the random tape. This means that the log-space machine cannot see the previous random bits unless it has stored the random bits on its work tape tape. 2. The randomized log-space machine must halt in polynomial-time. If this requirement were to be waived, directed path can be solved in randomized log-space. Define the undirected path problem as follows. UndirectedPath = G; s; t : G is an undirected graph and there exists a path from s to t. fh i g Is UndirectedPath L? While this problem is still open, we know that UndirectedPath NL L2. Aleliunas,2 Karp, Lipton, Lovasz, and Rackoff showed that UndirectedPath RL2. The⊆ randomized logspace algorithm is just the algorithm which does a random walk on the2 graph G. Randomized Logspace Algorithm for UndirectedPath On input (G; s; t), do the following. 1. current s. 2. for i = 1 to O(V (G)3) (a) Pick a random neighbor v of the current vertex and set current v. (b) If current = t, halt and accept. 3. If we have not reached t after O(V (G)3) steps, reject. The correctness of the above algorithm is based on the following lemma. Lemma 2 Let G be a connected, undirected graph on n = V (G) vertices. Then, we have that 1 Pr[walk of length O(n3) does not visit all vertices] ≤ 2 Considering that UndirectedPath RL, can UndirectedPath be solved in less than (log n)2 space? Thus far, we know that UndirectedPath2 L4=3 and RL L3=2. 2 ⊆ 2 2 BPP has polynomial-sized circuits Recall that P=poly is the class of languages decidable by polynomial-sized circuits. Previously, we defined the class BPP as follows. A language L BPP if there exist a probabilistic polynomial-time algorithm M such that 2 x L = Pr[M(x; r) = 1] 2=3: 2 ) r ≥ x = L = Pr[M(x; r) = 1] 1=3: 2 ) r ≤ The error bound in such BPP-algorithm is 1=3. To prove that BPP P=poly, we need to amplify the confidence (make the error bound exponentially small). ⊂ We achieve this by repeating our BPP-algorithm poly( x ) times and taking majority vote. Using 2jxj the Chernoff bound analysis, our error is reduced to 2− j j. Hence, an alternative formulation of BPP follows. A language L BPP if there exist a probabilistic polynomial-time algorithm M such that 2 2 x x L = Pr[M(x; r) = 1] 1 2− j j: 2 ) r ≥ − 2 x x = L = Pr[M(x; r) = 1] 2− j j: 2 ) r ≤ Theorem 3 (Adelman) BPP P=poly. ⊂ 2 x Proof: Fix a language L BPP and let M be a BPP-algorithm for L with error bound 2− j j. 2 Let χL be the characteristic function for L, i.e., χL(x) = 1 if x L, and χL(x) = 0 if x = L. For 2 2 each x of length n, define r to be bad for x if M(x; r) = χL(x). We know that for any x 0; 1 n, 6 2 f g 2n Pr[r is bad for x] 2− : r ≤ By the union bound, we have n n 2n n Pr[r is bad for any x 0; 1 ] 2 2− = 2− : r 2 f g ≤ n Hence, there exists an r∗ that is good for all x 0; 1 . This means that M(x; r∗) = χL(x) for all n 2 f g x 0; 1 . In addition, r∗ = poly(n). The string r∗ will be the nonuniform advice for deciding the2 language f g L. This showsj thatj L P=poly. 2 3.
Recommended publications
  • The Randomized Quicksort Algorithm
    Outline The Randomized Quicksort Algorithm K. Subramani1 1Lane Department of Computer Science and Electrical Engineering West Virginia University 7 February, 2012 Subramani Sample Analyses Outline Outline 1 The Randomized Quicksort Algorithm Subramani Sample Analyses The Randomized Quicksort Algorithm The Sorting Problem Problem Statement Given an array A of n distinct integers, in the indices A[1] through A[n], Subramani Sample Analyses The Randomized Quicksort Algorithm The Sorting Problem Problem Statement Given an array A of n distinct integers, in the indices A[1] through A[n], permute the elements of A, so that Subramani Sample Analyses The Randomized Quicksort Algorithm The Sorting Problem Problem Statement Given an array A of n distinct integers, in the indices A[1] through A[n], permute the elements of A, so that A[1] < A[2]... A[n]. Subramani Sample Analyses The Randomized Quicksort Algorithm The Sorting Problem Problem Statement Given an array A of n distinct integers, in the indices A[1] through A[n], permute the elements of A, so that A[1] < A[2]... A[n]. Note The assumption of distinctness simplifies the analysis. Subramani Sample Analyses The Randomized Quicksort Algorithm The Sorting Problem Problem Statement Given an array A of n distinct integers, in the indices A[1] through A[n], permute the elements of A, so that A[1] < A[2]... A[n]. Note The assumption of distinctness simplifies the analysis. It has no bearing on the running time. Subramani Sample Analyses The Randomized Quicksort Algorithm The Partition subroutine Function PARTITION(A,p,q) 1: {We partition the sub-array A[p,p + 1,...,q] about A[p].} 2: for (i = (p + 1) to q) do 3: if (A[i] < A[p]) then 4: Insert A[i] into bucket L.
    [Show full text]
  • Valuative Characterization of Central Extensions of Algebraic Tori on Krull
    Valuative characterization of central extensions of algebraic tori on Krull domains ∗ Haruhisa Nakajima † Department of Mathematics, J. F. Oberlin University Tokiwa-machi, Machida, Tokyo 194-0294, JAPAN Abstract Let G be an affine algebraic group with an algebraic torus G0 over an alge- braically closed field K of an arbitrary characteristic p. We show a criterion for G to be a finite central extension of G0 in terms of invariant theory of all regular 0 actions of any closed subgroup H containing ZG(G ) on affine Krull K-schemes such that invariant rational functions are locally fractions of invariant regular func- tions. Consider an affine Krull H-scheme X = Spec(R) and a prime ideal P of R with ht(P) = ht(P ∩ RH ) = 1. Let I(P) denote the inertia group of P un- der the action of H. The group G is central over G0 if and only if the fraction e(P, P ∩ RH )/e(P, P ∩ RI(P)) of ramification indices is equal to 1 (p = 0) or to the p-part of the order of the group of weights of G0 on RI(P)) vanishing on RI(P))/P ∩ RI(P) (p> 0) for an arbitrary X and P. MSC: primary 13A50, 14R20, 20G05; secondary 14L30, 14M25 Keywords: Krull domain; ramification index; algebraic group; algebraic torus; char- acter group; invariant theory 1 Introduction 1.A. We consider affine algebraic groups and affine schemes over a fixed algebraically closed field K of an arbitrary characteristic p. For an affine group G, denote by G0 its identity component.
    [Show full text]
  • Randomized Algorithms, Quicksort and Randomized Selection Carola Wenk Slides Courtesy of Charles Leiserson with Additions by Carola Wenk
    CMPS 2200 – Fall 2014 Randomized Algorithms, Quicksort and Randomized Selection Carola Wenk Slides courtesy of Charles Leiserson with additions by Carola Wenk CMPS 2200 Intro. to Algorithms 1 Deterministic Algorithms Runtime for deterministic algorithms with input size n: • Best-case runtime Attained by one input of size n • Worst-case runtime Attained by one input of size n • Average runtime Averaged over all possible inputs of size n CMPS 2200 Intro. to Algorithms 2 Deterministic Algorithms: Insertion Sort for j=2 to n { key = A[j] // insert A[j] into sorted sequence A[1..j-1] i=j-1 while(i>0 && A[i]>key){ A[i+1]=A[i] i-- } A[i+1]=key } • Best case runtime? • Worst case runtime? CMPS 2200 Intro. to Algorithms 3 Deterministic Algorithms: Insertion Sort Best-case runtime: O(n), input [1,2,3,…,n] Attained by one input of size n • Worst-case runtime: O(n2), input [n, n-1, …,2,1] Attained by one input of size n • Average runtime : O(n2) Averaged over all possible inputs of size n •What kind of inputs are there? • How many inputs are there? CMPS 2200 Intro. to Algorithms 4 Average Runtime • What kind of inputs are there? • Do [1,2,…,n] and [5,6,…,n+5] cause different behavior of Insertion Sort? • No. Therefore it suffices to only consider all permutations of [1,2,…,n] . • How many inputs are there? • There are n! different permutations of [1,2,…,n] CMPS 2200 Intro. to Algorithms 5 Average Runtime Insertion Sort: n=4 • Inputs: 4!=24 [1,2,3,4]0346 [4,1,2,3] [4,1,3,2] [4,3,2,1] [2,1,3,4]1235 [1,4,2,3] [1,4,3,2] [3,4,2,1] [1,3,2,4]1124 [1,2,4,3] [1,3,4,2] [3,2,4,1] [3,1,2,4]2455 [4,2,1,3] [4,3,1,2] [4,2,3,1] [3,2,1,4]3244 [2,1,4,3] [3,4,1,2] [2,4,3,1] [2,3,1,4]2333 [2,4,1,3] [3,1,4,2] [2,3,4,1] • Runtime is proportional to: 3 + #times in while loop • Best: 3+0, Worst: 3+6=9, Average: 3+72/24 = 6 CMPS 2200 Intro.
    [Show full text]
  • The Complexity Zoo
    The Complexity Zoo Scott Aaronson www.ScottAaronson.com LATEX Translation by Chris Bourke [email protected] 417 classes and counting 1 Contents 1 About This Document 3 2 Introductory Essay 4 2.1 Recommended Further Reading ......................... 4 2.2 Other Theory Compendia ............................ 5 2.3 Errors? ....................................... 5 3 Pronunciation Guide 6 4 Complexity Classes 10 5 Special Zoo Exhibit: Classes of Quantum States and Probability Distribu- tions 110 6 Acknowledgements 116 7 Bibliography 117 2 1 About This Document What is this? Well its a PDF version of the website www.ComplexityZoo.com typeset in LATEX using the complexity package. Well, what’s that? The original Complexity Zoo is a website created by Scott Aaronson which contains a (more or less) comprehensive list of Complexity Classes studied in the area of theoretical computer science known as Computa- tional Complexity. I took on the (mostly painless, thank god for regular expressions) task of translating the Zoo’s HTML code to LATEX for two reasons. First, as a regular Zoo patron, I thought, “what better way to honor such an endeavor than to spruce up the cages a bit and typeset them all in beautiful LATEX.” Second, I thought it would be a perfect project to develop complexity, a LATEX pack- age I’ve created that defines commands to typeset (almost) all of the complexity classes you’ll find here (along with some handy options that allow you to conveniently change the fonts with a single option parameters). To get the package, visit my own home page at http://www.cse.unl.edu/~cbourke/.
    [Show full text]
  • Algorithms and NP
    Algorithms Complexity P vs NP Algorithms and NP G. Carl Evans University of Illinois Summer 2019 Algorithms and NP Algorithms Complexity P vs NP Review Algorithms Model algorithm complexity in terms of how much the cost increases as the input/parameter size increases In characterizing algorithm computational complexity, we care about Large inputs Dominant terms p 1 log n n n n log n n2 n3 2n 3n n! Algorithms and NP Algorithms Complexity P vs NP Closest Pair 01 closestpair(p1;:::; pn) : array of 2D points) 02 best1 = p1 03 best2 = p2 04 bestdist = dist(p1,p2) 05 for i = 1 to n 06 for j = 1 to n 07 newdist = dist(pi ,pj ) 08 if (i 6= j and newdist < bestdist) 09 best1 = pi 10 best2 = pj 11 bestdist = newdist 12 return (best1, best2) Algorithms and NP Algorithms Complexity P vs NP Mergesort 01 merge(L1,L2: sorted lists of real numbers) 02 if (L1 is empty and L2 is empty) 03 return emptylist 04 else if (L2 is empty or head(L1) <= head(L2)) 05 return cons(head(L1),merge(rest(L1),L2)) 06 else 07 return cons(head(L2),merge(L1,rest(L2))) 01 mergesort(L = a1; a2;:::; an: list of real numbers) 02 if (n = 1) then return L 03 else 04 m = bn=2c 05 L1 = (a1; a2;:::; am) 06 L2 = (am+1; am+2;:::; an) 07 return merge(mergesort(L1),mergesort(L2)) Algorithms and NP Algorithms Complexity P vs NP Find End 01 findend(A: array of numbers) 02 mylen = length(A) 03 if (mylen < 2) error 04 else if (A[0] = 0) error 05 else if (A[mylen-1] 6= 0) return mylen-1 06 else return findendrec(A,0,mylen-1) 11 findendrec(A, bottom, top: positive integers) 12 if (top
    [Show full text]
  • Lecture 11 — October 16, 2012 1 Overview 2
    6.841: Advanced Complexity Theory Fall 2012 Lecture 11 | October 16, 2012 Prof. Dana Moshkovitz Scribe: Hyuk Jun Kweon 1 Overview In the previous lecture, there was a question about whether or not true randomness exists in the universe. This question is still seriously debated by many physicists and philosophers. However, even if true randomness does not exist, it is possible to use pseudorandomness for practical purposes. In any case, randomization is a powerful tool in algorithms design, sometimes leading to more elegant or faster ways of solving problems than known deterministic methods. This naturally leads one to wonder whether randomization can solve problems outside of P, de- terministic polynomial time. One way of viewing randomized algorithms is that for each possible setting of the random bits used, a different strategy is pursued by the algorithm. A property of randomized algorithms that succeed with bounded error is that the vast majority of strategies suc- ceed. With error reduction, all but exponentially many strategies will succeed. A major theme of theoretical computer science over the last 20 years has been to turn algorithms with this property into algorithms that deterministically find a winning strategy. From the outset, this seems like a daunting task { without randomness, how can one efficiently search for such strategies? As we'll see in later lectures, this is indeed possible, modulo some hardness assumptions. There are two main objectives in this lecture. The first objective is to introduce some probabilis- tic complexity classes, by bounding time or space. These classes are probabilistic analogues of deterministic complexity classes P and L.
    [Show full text]
  • R Z- /Li ,/Zo Rl Date Copyright 2012
    Hearing Moral Reform: Abolitionists and Slave Music, 1838-1870 by Karl Byrn A thesis submitted to Sonoma State University in partial fulfillment of the requirements for the degree of MASTER OF ARTS III History Dr. Steve Estes r Z- /Li ,/zO rL Date Copyright 2012 By Karl Bym ii AUTHORIZATION FOR REPRODUCTION OF MASTER'S THESIS/PROJECT I grant permission for the reproduction ofparts ofthis thesis without further authorization from me, on the condition that the person or agency requesting reproduction absorb the cost and provide proper acknowledgement of authorship. Permission to reproduce this thesis in its entirety must be obtained from me. iii Hearing Moral Reform: Abolitionists and Slave Music, 1838-1870 Thesis by Karl Byrn ABSTRACT Purpose ofthe Study: The purpose of this study is to analyze commentary on slave music written by certain abolitionists during the American antebellum and Civil War periods. The analysis is not intended to follow existing scholarship regarding the origins and meanings of African-American music, but rather to treat this music commentary as a new source for understanding the abolitionist movement. By treating abolitionists' reports of slave music as records of their own culture, this study will identify larger intellectual and cultural currents that determined their listening conditions and reactions. Procedure: The primary sources involved in this study included journals, diaries, letters, articles, and books written before, during, and after the American Civil War. I found, in these sources, that the responses by abolitionists to the music of slaves and freedmen revealed complex ideologies and motivations driven by religious and reform traditions, antebellum musical cultures, and contemporary racial and social thinking.
    [Show full text]
  • Simple Doubly-Efficient Interactive Proof Systems for Locally
    Electronic Colloquium on Computational Complexity, Revision 3 of Report No. 18 (2017) Simple doubly-efficient interactive proof systems for locally-characterizable sets Oded Goldreich∗ Guy N. Rothblumy September 8, 2017 Abstract A proof system is called doubly-efficient if the prescribed prover strategy can be implemented in polynomial-time and the verifier’s strategy can be implemented in almost-linear-time. We present direct constructions of doubly-efficient interactive proof systems for problems in P that are believed to have relatively high complexity. Specifically, such constructions are presented for t-CLIQUE and t-SUM. In addition, we present a generic construction of such proof systems for a natural class that contains both problems and is in NC (and also in SC). The proof systems presented by us are significantly simpler than the proof systems presented by Goldwasser, Kalai and Rothblum (JACM, 2015), let alone those presented by Reingold, Roth- blum, and Rothblum (STOC, 2016), and can be implemented using a smaller number of rounds. Contents 1 Introduction 1 1.1 The current work . 1 1.2 Relation to prior work . 3 1.3 Organization and conventions . 4 2 Preliminaries: The sum-check protocol 5 3 The case of t-CLIQUE 5 4 The general result 7 4.1 A natural class: locally-characterizable sets . 7 4.2 Proof of Theorem 1 . 8 4.3 Generalization: round versus computation trade-off . 9 4.4 Extension to a wider class . 10 5 The case of t-SUM 13 References 15 Appendix: An MA proof system for locally-chracterizable sets 18 ∗Department of Computer Science, Weizmann Institute of Science, Rehovot, Israel.
    [Show full text]
  • Glossary of Complexity Classes
    App endix A Glossary of Complexity Classes Summary This glossary includes selfcontained denitions of most complexity classes mentioned in the b o ok Needless to say the glossary oers a very minimal discussion of these classes and the reader is re ferred to the main text for further discussion The items are organized by topics rather than by alphab etic order Sp ecically the glossary is partitioned into two parts dealing separately with complexity classes that are dened in terms of algorithms and their resources ie time and space complexity of Turing machines and complexity classes de ned in terms of nonuniform circuits and referring to their size and depth The algorithmic classes include timecomplexity based classes such as P NP coNP BPP RP coRP PH E EXP and NEXP and the space complexity classes L NL RL and P S P AC E The non k uniform classes include the circuit classes P p oly as well as NC and k AC Denitions and basic results regarding many other complexity classes are available at the constantly evolving Complexity Zoo A Preliminaries Complexity classes are sets of computational problems where each class contains problems that can b e solved with sp ecic computational resources To dene a complexity class one sp ecies a mo del of computation a complexity measure like time or space which is always measured as a function of the input length and a b ound on the complexity of problems in the class We follow the tradition of fo cusing on decision problems but refer to these problems using the terminology of promise problems
    [Show full text]
  • User's Guide for Complexity: a LATEX Package, Version 0.80
    User’s Guide for complexity: a LATEX package, Version 0.80 Chris Bourke April 12, 2007 Contents 1 Introduction 2 1.1 What is complexity? ......................... 2 1.2 Why a complexity package? ..................... 2 2 Installation 2 3 Package Options 3 3.1 Mode Options .............................. 3 3.2 Font Options .............................. 4 3.2.1 The small Option ....................... 4 4 Using the Package 6 4.1 Overridden Commands ......................... 6 4.2 Special Commands ........................... 6 4.3 Function Commands .......................... 6 4.4 Language Commands .......................... 7 4.5 Complete List of Class Commands .................. 8 5 Customization 15 5.1 Class Commands ............................ 15 1 5.2 Language Commands .......................... 16 5.3 Function Commands .......................... 17 6 Extended Example 17 7 Feedback 18 7.1 Acknowledgements ........................... 19 1 Introduction 1.1 What is complexity? complexity is a LATEX package that typesets computational complexity classes such as P (deterministic polynomial time) and NP (nondeterministic polynomial time) as well as sets (languages) such as SAT (satisfiability). In all, over 350 commands are defined for helping you to typeset Computational Complexity con- structs. 1.2 Why a complexity package? A better question is why not? Complexity theory is a more recent, though mature area of Theoretical Computer Science. Each researcher seems to have his or her own preferences as to how to typeset Complexity Classes and has built up their own personal LATEX commands file. This can be frustrating, to say the least, when it comes to collaborations or when one has to go through an entire series of files changing commands for compatibility or to get exactly the look they want (or what may be required).
    [Show full text]
  • IBM Research Report Derandomizing Arthur-Merlin Games And
    H-0292 (H1010-004) October 5, 2010 Computer Science IBM Research Report Derandomizing Arthur-Merlin Games and Approximate Counting Implies Exponential-Size Lower Bounds Dan Gutfreund, Akinori Kawachi IBM Research Division Haifa Research Laboratory Mt. Carmel 31905 Haifa, Israel Research Division Almaden - Austin - Beijing - Cambridge - Haifa - India - T. J. Watson - Tokyo - Zurich LIMITED DISTRIBUTION NOTICE: This report has been submitted for publication outside of IBM and will probably be copyrighted if accepted for publication. It has been issued as a Research Report for early dissemination of its contents. In view of the transfer of copyright to the outside publisher, its distribution outside of IBM prior to publication should be limited to peer communications and specific requests. After outside publication, requests should be filled only by reprints or legally obtained copies of the article (e.g. , payment of royalties). Copies may be requested from IBM T. J. Watson Research Center , P. O. Box 218, Yorktown Heights, NY 10598 USA (email: [email protected]). Some reports are available on the internet at http://domino.watson.ibm.com/library/CyberDig.nsf/home . Derandomization Implies Exponential-Size Lower Bounds 1 DERANDOMIZING ARTHUR-MERLIN GAMES AND APPROXIMATE COUNTING IMPLIES EXPONENTIAL-SIZE LOWER BOUNDS Dan Gutfreund and Akinori Kawachi Abstract. We show that if Arthur-Merlin protocols can be deran- domized, then there is a Boolean function computable in deterministic exponential-time with access to an NP oracle, that cannot be computed by Boolean circuits of exponential size. More formally, if prAM ⊆ PNP then there is a Boolean function in ENP that requires circuits of size 2Ω(n).
    [Show full text]
  • A Short History of Computational Complexity
    The Computational Complexity Column by Lance FORTNOW NEC Laboratories America 4 Independence Way, Princeton, NJ 08540, USA [email protected] http://www.neci.nj.nec.com/homepages/fortnow/beatcs Every third year the Conference on Computational Complexity is held in Europe and this summer the University of Aarhus (Denmark) will host the meeting July 7-10. More details at the conference web page http://www.computationalcomplexity.org This month we present a historical view of computational complexity written by Steve Homer and myself. This is a preliminary version of a chapter to be included in an upcoming North-Holland Handbook of the History of Mathematical Logic edited by Dirk van Dalen, John Dawson and Aki Kanamori. A Short History of Computational Complexity Lance Fortnow1 Steve Homer2 NEC Research Institute Computer Science Department 4 Independence Way Boston University Princeton, NJ 08540 111 Cummington Street Boston, MA 02215 1 Introduction It all started with a machine. In 1936, Turing developed his theoretical com- putational model. He based his model on how he perceived mathematicians think. As digital computers were developed in the 40's and 50's, the Turing machine proved itself as the right theoretical model for computation. Quickly though we discovered that the basic Turing machine model fails to account for the amount of time or memory needed by a computer, a critical issue today but even more so in those early days of computing. The key idea to measure time and space as a function of the length of the input came in the early 1960's by Hartmanis and Stearns.
    [Show full text]