12

Downward separation fails catastrophically for limited nondeterminism classes

  • Upload
    uky

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Downward separation fails catastrophically forlimited nondeterminism classesR. Beigel� J. GoldsmithyOctober 25, 1994AbstractThe � hierarchy consists of sets �k = NP[logk n] � NP. Unlike collapses in thepolynomial hierarchy and the Boolean hierarchy, collapses in the � hierarchy do notseem to translate up, nor does closure under complement seem to cause the hierarchyto collapse. For any consistent set of collapses and separations of levels of the hierarchythat respects P = �1 � �2 � � � � � NP, we can construct an oracle relative to which thosecollapses and separations hold, yet any (or all) of the �k's are closed under complement.To give two relatively tame examples: For any k � 1, we construct an oracle relative towhich P = �k 6= �k+1 6= �k+2 6= � � �and another oracle relative to whichP = �k 6= �k+1 = PSPACE:We also construct an oracle relative to which �2k = �2k+1 6= �2k+2 for all k.1 IntroductionAlthough standard nondeterministic algorithms solve many NP-complete problems withO(n) nondeterministic moves, there are other problems that seem to require very di�erentamounts of nondeterminism. For instance, clique can be solved with only O(pn) non-deterministic moves, and Pratt's algorithm solves primality, which is not believed to beNP-complete, with O(n2) nondeterministic moves. Motivated by the di�erent amounts of�Yale University, Dept. of Computer Science, P.O. Box 208285, New Haven, CT 06520-8285. email:[email protected]. Research supported in part by the United States National Science Foundationunder grant CCR-8958528 and by the Netherlands Organization for Scienti�c Research (NWO) under VisitorsGrant B 62-403.yUniversity of Kentucky, Dept. of Computer Science, Lexington, KY 40506. email: [email protected] supported in part by the National Science Foundation under grant # CCR-93153541

nondeterminism apparently needed to solve problems in NP, Kintala and Fischer [8, 9, 10]de�ned limited nondeterminism classes within NP, including the classes we now call the� hierarchy. The structural properties of the � classes were studied further by �Alvarez,Diaz and Toran [1, 6]. These classes arose yet again in the work of Papadimitriou andYannakakis [14] on particular problems inside NP (e.g., quasigroup isomorphism can besolved with O(log2 n) nondeterministic moves).Kintala and Fischer [10] de�ned Pf(n) to be the class of languages accepted by a non-deterministic polynomial-time bounded Turing machine that makes at most f(n) c-arynondeterministic moves (equivalently, O(f(n)) binary nondeterministic moves) on inputsof length n. Being mostly interested in polylogarithmic amounts of nondeterminism, theyde�ned PLk = Plogk n.Diaz and Toran [6] wrote �f(n) to denote Kintala and Fischer's Pf(n) and �k to denotePLk. Papadimitriou and Yannakakis [14] wrote NP[f(n)] to denote Pf(n). We will adoptthe NP[f(n)] notation of Papadimitriou and Yannakakis, as well as the �k notation ofDiaz and Toran. To reiterate:De�nition 1� A language L belongs to NP[f(n)] if there exists a polynomial-time bounded non-deterministic Turing machine that accepts L and makes O(f(n)) nondeterministicchoices on inputs of length n. (Note: NP[f(n)] � DTIME(2O(f(n)):)� �k = NP[logk n].� The � hierarchy consists of �1; �2; : : : .� � = Sk �k:Kintala and Fischer [10] constructed oracles that make the � hierarchy collapse toany desired level. That is, there is an oracle relative to which�1 6= �2 6= � � �and, for every k � 1, there is an oracle relative to which�1 6= �2 6= � � � 6= �k = NP:Oracles can also make the polynomial hierarchy and the Boolean hierarchy collapseto any desired level [11, 4]. The polynomial and Boolean hierarchies have a very niceproperty: collapses translate upward. I.e., if the kth and (k + 1)st levels are equal, thenall levels are contained in the kth [5, 4]. This is also re ected in the nondeterminismhierarchy, now known as the b hierarchy, studied by Buss and Goldsmith [3]. The classesin the b hierarchy are de�ned by two parameters: the exponent of the polynomial timebound (ignoring log factors), and the constant factor for k log n bits of nondeterminism.This hierarchy exhibits upward collapse for both time and k. All attempts to prove ananalogous translational property for the � hierarchy have failed. In fact the obvioustechnique extends a collapse by only a constant factor in the number of nondeterministicbits, giving one of the aforementioned upward collapses of the b hierarchy.2

Hemachandra and Jha [7] attempted to explain this failure by examining the tallysets in the � hierarchy. For each k, they constructed an oracle that makes �j \TALLY =�j+1 \ TALLY i� j � k. However, we �nd this explanation unsatisfactory because itconsiders only tally sets. For each k � 1, we construct an oracle that makes �j =�j+1 i� j � k. What's more, we construct oracles that make the � hierarchy displayany conceivable consistent sequence of collapses and separations, e.g, �j = �j+1 i� j isprime. (If we think of the sequences of collapses as collapsing intervals, and similarly forseparation intervals, then the sequence is consistent if no separation interval is containedin a collapsing interval; we cannot collapse �k+2 to �k while separating �k+1 from �k.Furthermore, �0 = �1 = P relative to any oracle.) We can also make distinct levels inthe hierarchy be closed under complementation or not, as long as this is consistent withthe other collapses and separations.We prove two initial results for every k:� There is an oracle that makes the �rst k levels of the � hierarchy coincide, butmakes the remaining levels all distinct (Theorem 4).� There is an oracle that makes the �rst k levels of the � hierarchy coincide, the(k+1)st level di�erent from the kth, and the remaining levels all equal (Theorem 6).The techniques from these two constructions can be combined to get any consistent�nite or in�nite set of collapses and separations. To collapse �k into �j (for k > j), wecode a complete set for �k into �j . The same coding techniques can also code �i into �i,for any i's we wish, as long as this doesn't violate any collapses. (If �k is collapsed to �j ,then either both or neither will be closed under complement.)One theme in complexity theory is to ask whether NP � P contains any easy sets(assuming P 6= NP). The answer to the question above depends on the de�nition of\easy." Ladner [13] showed that if P 6= NP then NP�P contains an incomplete set. Onthe other hand, there are oracles relative to which P 6= NP, but NP� P contains (a) notally sets [12] or (b) no sets in co-NP [2]. It is unknown whether the assumption P 6= NPimplies that NP�P contains a set in DTIME(npolylog); a positive answer would improvemany constructions in the literature. As a step towardmonotone increasing understandingthat question, we construct an oracle relative to which P 6= NP but NP� P contains noset in the � hierarchy.2 Limited Nondeterminism HierarchiesThe construction below gives almost all the techniques used in subsequent theorems.Theorem 2 Let g0 and g1 be polynomial-time computable monotone increasing functionssuch that log n 2 o(g1(n)) and g0(n) 2 O(nO(1)). If g0(nO(1)) � o(g1(n)), then there existsan oracle A such that PA = (NP[g0(n)])A 6= (NP[g1(n)])A (and in fact there is a tally setin (NP[g1(n)])A � (NP[g0(n)])A). 3

Proof:Let CA = f(e; x; 0s) : oracle NTM e accepts x within s steps with oracle A, makingat most g0(jxj) nondeterministic choicesg. Then CA is �pm-complete for (NP[g0(n)])Afor every A. Let p(n) be the polynomial time bound for some NP[g0(n)] oracle Turingmachine recognizing C().Let DA = fx 2 1� : 9y[jyj = g1(jxj)^ 0xy 2 A]g. Note that DA 2 NP[g1(n)]A.The construction consists of coding CA into A in a polynomial-time recoverable man-ner, making (NP[g0(n)])A � PA, while diagonalizing, i.e, guaranteeing that no PA ma-chine recognizes the set DA, so PA 6= (NP[g1(n)])A.At the end of the construction, we will have x 2 CA () 1p(jxj)20x 2 A. We refer toall strings beginning with 1 as coding strings. We refer to all strings beginning with 0 asdiagonalizing strings.Assume that P() is enumerated by Turing machines P ()1 , P ()2 ; : : : so that P ()i runs intime bounded by ni for all i, and for su�ciently large n.The construction proceeds in stages. At the end of stage s, A is decided for all stringsof length up to ns, and DA is extended so that PAs does not recognize DA. The stageconsists of one diagonalization, which determines ns, and continued encoding of CA.At stage s, choose n > ns�1 such that n is a power of 2, the running time of P ()s oninputs of length n is at most ns, and n satis�es an inequality to be speci�ed below thatis ty to be speci�ed below that is true for almost all n. Let x = 1n. The value of DA(1n)depends only on oracle strings of length ` = 1 + n + g1(n). Continue coding CA for allcoding strings of length � `� 1, and freeze A up to length `� 1.In order to diagonalize, PAs (x) must be calculated. But that computation may querycoding strings that code computations of CA that are not yet decided, because thosecomputations in turn rely on strings for which A is not yet decided. Those strings inturn may depend on other coding strings. Any diagonalizing strings that do not alreadybelong to A and are queried by PAs (x), or by the computation corresponding to a codingstring that PAs (x) queries, or in the computation corresponding to a coding string thatone of those computations queries, or so on, are restrained from A. We claim that thereare more potential witnesses for x to be in DA than there are possible queries in such acascade of queries, so deciding PAs (x) does not restrict our decision about DA(x).Because of the encoding of CA, a coding string z codes a computation that dependson strings of length bounded by pjzj. CA(w) may directly depend on p(jwj)2g0(jwj) ofthese shorter strings.A computation of PAs (x) may query no more than ns strings, each of length boundedby ns. Each of these may code a computation on a string of length at most ns=2. Eachof these computations depends on at most p(ns=2)2g0(ns=2) strings, each of which dependson at most p(ns=4)2g0(ns=4) strings, etc.This recursion can be cut o� at strings of length `�1, because A is already determinedup to that length. The total number of queries needed to decide PAs (x) is bounded bythe product of all the terms above of the form p(ns=2i)2g0(ns=2i). There are at mostlog log ns � log log (`� 1) � log logns � log logn = log s such terms, and each of themis bounded by p(ns)2g0(ns) = 2O(g0(ns)). Therefore the total number of queries on which4

PAs (x) depends is 2O(log(s)g0(ns)), which is less than 2g1(n) for su�ciently large n. (Theinequality that n must satisfy is (p(ns)2g0(ns))log(s) < 2g1(n).)Thus there remains an unrestrained diagonalizing string of length `, which we putinto A if PAs (x) rejects x. That is, we set DA(x) = 1 � PAs (x), adding a string 0xyto A if necessary. Thus, for each s, we can guarantee that PAs does not accept DA, soDA =2 PA. Since DA 2 (NP[g1(n)])A, this shows that (NP[g1(n)])A 6= PA. Since CA 2 PAis complete for (NP[g0(n)])A, this shows that (NP[g0(n)])A � PA.We complete stage s by letting ns = max(`; ns), and �nishing the coding of anyCA(w) that was begun or queried in this stage.The preceding theorem is tight because if P = NP[g0(n)] then P = NP[g0(O(nO(1)))](even if we restrict to binary nondeterministic moves) via a relativizable proof. (Previ-ously, Sanchis [15] had observed that if P = NP[n�] for some � > 0, then P = NP.Because the classes are separated by tally sets, we also separate the exponential-timeversions of these classes (see [7] for elaboration of this).Corollary 3 There is an oracle relative to which P = � 6= NP.Proof: Let g0(n) = 2(log logn)2 and g1(n) = n in the previous theorem. Then for all k,�Ak � (NP[2(log logn)2 ])A = PA 6= NPA.Theorem 4 monotone increasing Let g(�; �) be a polynomial-time computable, monotoneincreasing (in both variables) function with logn 2 o(g(n; i)) � O(nO(1)) for all i � 0.If g(nO(1); 2i) � o(g(n; 2i+ 1)) for all i � 1, then there exists an oracle A such thatP = (NP[g(n; 0)])A and (NP[g(n; 2i)])A 6= (NP[g(n; 2i+ 1)])A for all i � 0 (and in factthere is a tally set in (NP[g(n; 2i+ 1)])A � (NP[g(n; 2i)])A for each i).(In this theorem, we ignore the relationship between NP[g(n; 2i�1)] and NP[g(n; 2i)].We will take that up in the next theorem.) The only di�erence between this constructionand the previous one is that there are in�nitely many diagonalizations going on. Atstage s = he; ii, we guarantee that the eth machine for (NP[g(n; 2i)])A does not acceptthe diagonal set DAi 2 (NP[g(n; 2i+ 1)])A. Thus, (NP[g(n; 2i+ 1)])A 6= (NP[g(n; 2i)])A.The counting argument for this construction is identical to that in the proof of Theorem 2.Corollary 5 There is an oracle relative to whichP = �k 6= �k+1 6= �k+2 6= � � � :Proof: Let g(n; i) = logk+bi=2c n in the preceding theorem.Theorem 6 Let g0 and g1 be polynomial-time computable monotone increasing functionssuch that logn 2 o(g1(n)) and g0(n) 2 O(nO(1)). If g0(n(O(1)) � o(g1(n)) then there existsan oracle A such thatPA = (NP[g0(n)])A 6= (NP[g1(n)])A = PSPACEA(and in fact there is a tally set in (NP[g1(n)])A � (NP[g0(n)])A).5

Proof sketch: In this construction, we do two encodings and one diagonalization. Inaddition to coding CAk into P, we also code EA, a generic �pm-complete set for PSPACE,into A. (EA = f(e; x; 0s) : oracle DTM e accepts x using at most s tape squares withoracle Ag, where we also count the space used on the oracle tape.) At the end of theconstruction, we havex 2 EA () (9y)[jyj = g1(n) ^ 2xy 2 A](If one prefers binary oracles, one may code 0, 1, and 2 as 00, 01, and 10.) When weare doing a diagonalization to make PAs (x) 6= DA(x), if a coding string for CAk (w) isqueried, we proceed as before; if a coding string for EA(w) is queried, where jwj � jxj,then we simply restrain that coding string from the oracle. This will not restrain all thecoding strings for EA(w), since there are 2g1(jwj) coding strings for EA(w); if jwj � jxj,then 2g1(jwj) > (p(jxjs)2g0(jxjs))log(s), where (p(jxjs)2g0(jxjs))log(s) is the upper bound onthe total number of queries generated by the computation of PAs (x), as in the proof ofTheorem 2. Therefore, restraining any such coding strings queried in the computation ofPAs (x) or in its cascade of queries can not restrain all such coding strings, and thus cannot decide EA(w). At the end of each stage, we complete all codings begun or queriedin that stage, so that it will not be changed in any subsequent stage.Corollary 7 For every k, there is an oracle relative to whichP = �k 6= �k+1 = PSPACE:With only a slight modi�cation of this technique, we get far more bizarre collapses.Theorem 8 Let g(�; �) be a polynomial-time computable, monotone increasing (in bothvariables) function with logn 2 o(g(n; i)) � O(nO(1)) for all i � 1. If g(nO(1); 2i) �o(g(n; 2i+ 1)) for all i � 1, then there exists an oracle A such that P = (NP[g(n; 0)])Aand (NP[g(n; 2i)])A 6= (NP[g(n; 2i+1)])A = (NP[g(n; 2i+2)])A for all i � 0 (and in factthere is a tally set in (NP[g(n; 2i+ 1)])A � (NP[g(n; 2i)])A for each i).We include the full proof of this result, although it uses techniques mentioned before,since this shows how all the pieces �t together.Proof: Let CAi = f(e; x; 0s) : oracle NTM e accepts x within s steps with ora-cle A, making at most g(jxj; i) nondeterministic choicesg. Then CAi is �pm-completefor (NP[g(n; i)])A for any A. Let p(n; i) be the nondeterministic time bound for someNP[g(n; i)] oracle Turing machine recognizing C()i . Without loss of generality, assumethat for all i and almost all n, p(n; i) � p(n; i+ 1).Let DAi = fx : 9yjyj = g(jxj; i)^ 0xy 2 Ag.For convenience, de�ne g(n;�1) = 0 for all n.The construction consists of coding CA2i into (NP[g(n; 2i � 1)])A, for each i � 0,so (NP[g(n; 0)])A � PA and (NP[g(n; 2i + 2)])A � (NP[g(n; 2i + 1)])A for all i; and6

diagonalizing, i.e, guaranteeing that no (NP[g(n; 2i)])A machine recognizes the set DA2i+1,for any i, so (NP[g(n; 2i+ 1)])A 6� (NP[g(n; 2i)])A for any i.At the end of the construction, we will have x 2 CA2i () 9y[jyj = g(jxj; 2i� 1) ^102i1p(jxj;2i�1)20xy 2 A].Assume that (NP[g(n; i)])A is enumerated by oracle NTMs M1;i;M2;i; : : :, where Me;iruns in time bounded by ne for su�ciently large n.The construction proceeds in stages. Stage s consists of one diagonalization, whichdetermines ns, and then the encodings of CA2i for each i < s on inputs of lengths � nss.At the end of stage s = he; ii, A is decided for all strings of length � ns (and somefurther coding strings), and A has been extended so thatMAe;2i does not recognize DA2i+1.At stage s, choose n > ns�1 such that n is a power of 2, Me;2i runs in time boundedby ne on inputs of length n, and n satis�es an inequality to be speci�ed below that istrue for almost all n. Let ns = n. Let x = 0n. The value of DA2i+1(x) depends only onstrings of length ` = 1+ n+ g(n; 2i+ 1). Do all coding involving witnesses of length lessthan `, and then freeze A through length `� 1. Let s = he; ii.As before, in order to diagonalize, we will need to calculate MAe;2i(x), which maygenerate a cascade of queries. Any diagonalizing strings that do not already belong to Aand are queried in this cascade are restrained from A. But coding strings may be queriedas well. (Because we are coding nondeterministically, coding strings can be thoughtof as potential witnesses to membership.) If MAe;2i(x) queries a potential witness thatw 2 CA2j , where 2j > 2i and CA2j(w) has not yet been decided, that potential witness isrestrained from A. If 2j � 2i and CA2j(w) has not yet been decided, then we computeCA2j(w) recursively. We will show below that the number of queries generated by sucha cascade of queries is smaller than both of the following bounds: (1) the number ofpotential witnesses for w 2 CA2j , (2) the number of potential witnesses for x 2 DA2i+1.Thus, restraining those potential witnesses does not impede any encodings or restrictour decision about D2i+1(x). (We don't have to worry about what happens to potentialwitnesses for w 2 CA2j at a later stage, because any a�ected codings, i.e., CA2j(w), will becompleted at this stage; later diagonalizations will not a�ect them.)Now we show that there are more potential witnesses for x 2 DA2i+1 than there arepossible queries in such a cascade of queries. Because of how we encode CAk , a codingstring z codes for a computation that depends on strings of length bounded by pjzj. Fork � 2i+1, CAk (w) depends on at most p(jwj; k)2g(jwj;k) � p(jwj; 2i+1)2g(jwj;2i+1) of theseshorter strings.MAe;2i(x) has at most 2g(n;2i) computations, and each of those computations may queryno more than ne strings, each of length bounded by ne. Each such string may code acomputation CA2j(w) where jwj � pne, but we only need to expand that computationif 2j � 2i. Each of these computations depends on at most p(ne=2; 2i)2g(ne=2;2i) strings,each of which depends on at most p(ne=4; 2i)2g(ne=4;2i) strings, etc. As before, the totalnumber of queries needed to decide MAe;i(x) is bounded by the product of log e � log sterms, each of which is 2o(g(n;2i+1)). Therefore the total number of queries on whichMAe;2i(x) depends is 2o(g(n;2i+1)), which is less than 2g(n;2i+1) for su�ciently large n.7

Thus there remains an unrestrained diagonalizing string of length `, which we putinto A i� MAe;2i(x) rejects x. That is, we set DA2i+1(x) = 1 �MAe;2i(x), adding a string0xy to A if necessary. Thus, for each s, we can guarantee that MAe;2i does not acceptDA2i+1, so DA2i+1 =2 (NP[g(n; 2i)])A. Since DAi 2 (NP[g(n; 2i + 1)])A, this shows that(NP[g(n; 2i+ 1)])A 6� (NP[g(n; 2i)])A for all i � 0.Since CA2i is complete for (NP[g(n; 2i)])A, our encoding guarantees that (NP[g(n; 2i)])A �(NP[g(n; 2i� 1)])A for all i � 0.Corollary 9 There is an oracle relative to which, for each k, �2k = �2k+1 6= �2k+2.Corollary 10 For any consistent pattern of collapses and separations of the �k's, thereis an oracle relative to which that pattern holds.Notice that if the set of collapses is not recursive, then the oracle will also be non-recursive.In addition to collapsing or separating �j and �k, we can code co-�k into �k | orseparate the two. This involves some additional argument.Theorem 11 Let g(�; �) be a polynomial-time computable, monotone increasing (in bothvariables) function with logn 2 o(g(n; i)) � O(nO(1)) for all i � 1. If g(nO(1); 2i) �o(g(n; 2i+ 1)) for all i � 1, then there exists an oracle A such that P = (NP[g(n; 0)])Aand (NP[g(n; 2i)])A 6= (NP[g(n; 2i+ 1)])A = (NP[g(n; 2i+ 2)])A 6= (co-NP[g(n; 2i+ 2)])Afor all i � 0 (and in fact there are tally sets in (NP[g(n; 2i+ 1)])A� (NP[g(n; 2i)])A andin (NP[g(n; 2i+ 2)])A � (co-NP[g(n; 2i+ 2)])A for each i).Proof sketch: For convenience, we will separate (NP[g(n; 2i + 1)])A from(co-NP[g(n; 2i+ 1)])A rather than (NP[g(n; 2i+ 2)])A from (co-NP[g(n; 2i+ 2)])A; giventhe other requirements, this is equivalent. In order to separate (NP[g(n; 2i+ 1)])A from(co-NP[g(n; 2i+ 1)])A, we use the set DA2i+1 in (NP[g(n; 2i+ 1)])A, and guarantee thatDA2i+1 =2 (co-NP[g(n; 2i+1)])A. Most of this construction is identical to that of Theorem 8.We code complete sets CA2i for (NP[g(n; 2i)])A into (NP[g(n; 2i� 1)])A, and diagonalizeso that no (NP[g(n; 2i)])A machine recognizes DA2i+1 2 (NP[g(n; 2i+ 1)])A. (Thus DA2i+1does double duty: during even stages, it diagonalizes against (NP[g(n; 2i+ 2)])A, andduring odd stages, against (co-NP[g(n; 2i+ 1)])A.)To guarantee that DA2i+1 is not in (co-NP[g(n; 2i+ 1)])A, we make sure that, for eache, the eth machine for (NP[g(n; 2i+ 1)])A does not recognize DA2i+1. This holds i� thereis some x such that DA2i+1(x) = MAe;2i+1(x). This diagonalization di�ers from earlier onesonly when MAe;2i+1(x) queries a witness for x 2 DA2i+1. As before, if MAe;2i+1(x) queries acoding string for some computation of CA2j(w) where (2j > 2i) or (2j = 2i and w 6= x),then we can safely restrain the coding string. (If 2j = 2i and w 6= x, this may exclude wfrom DA2i+1, but that doesn't matter. As long as DA2i+1(x) = MAe;2i+1(x), we don't carewhat happens to DA2i+1 for other strings of lengths between ns�1 and ns.) If 2j < 2i,then we retrace the computation, as before.8

If MAe;2i+1(x) queries a witness for x 2 DA2i+1, we �rst restrain all such witnesses,and continue. If this leads to a rejecting computation of MAe;2i+1(x), then MAe;2i+1(x) =DA2i+1(x), and the diagonalization is successful. If it leads to an accepting computation,we preserve the lexicographically least accepting path for that computation, and all of itscascade of queries. By the usual counting argument (i.e., all the other computations thatwere queried and decided are of complexity strictly bounded by (NP[g(ns; 2i+1)])A, andeach computation path has at most ns queries), this will not restrain all the witnessesfor x 2 DA2i+1. Thus we can �nd an unrestrained witness and add it to A, so DA2i+1(x) =MAe;2i+1(x), as desired.Therefore, this additional set of diagonalization requirements can be interleaved withthe previously-described diagonalizations and collapses.Theorem 12 Let g(�; �) be a polynomial-time computable, monotone increasing (in bothvariables) function with logn 2 o(g(n; i)) � O(nO(1)) for all i � 1. If g(nO(1); 2i) �o(g(n; 2i+ 1)) for all i � 1, then there exists an oracle A such that P = (NP[g(n; 0)])Aand (NP[g(n; 2i)])A 6= (NP[g(n; 2i+ 1)])A = (NP[g(n; 2i+ 2)])A = (co-NP[g(n; 2i+ 2)])Afor all i � 0 (and in fact there are tally sets in (NP[g(n; 2i+ 1)])A � (NP[g(n; 2i)])A foreach i).Proof sketch: In order to make (NP[g(n; 2i + 1)])A = (co-NP[g(n; 2i + 1)])A, wecode CA2i+1 into (NP[g(n; 2i+ 1)])A as follows: x =2 CA2i+1 () 9y[jyj = g(jxj; 2i+ 1) ^21p(jxj;2i+1)20x 2 A].For each i, let NAi be an (NP[g(n; i)])A machine recognizing CAi in nondeterministictime bounded by p(n; i) (regardless of the oracle). By the form of the encoding, NAi (x)cannot query any of its own encoding strings. If a witness string for CA2j+1(x) is queried inthe course of a diagonalization (NP[g(n; 2i)])A 6= (NP[g(n; 2i+1)])A, and 2j+1 < 2i+1,then we can retrace the computation. If 2j + 1 � 2i+ 1, then we can safely restrain thequeried witness string (for jxj su�ciently large).Thus, we can add this extra encoding, without interfering with the other collapsesand codings.This gives us the following stronger version of Hemachandra and Jha's oracle [7].Corollary 13 For each k, there is an oracle relative to which for all j, �j = co-�j, andP = �k 6= �k+1 6= �k+2 6= � � �(and the separations are witnessed by tally sets).Combining the results (and techniques) of Theorems 8, 11, and 12, we get the followingvery strong result.Corollary 14 For any consistent set of collapses and separations of the � hierarchy,and any set S � N, there is an oracle relative to which those collapses and separationshold, and for exactly those s 2 S, �s = co-�s, as long as S is consistent with the collapses(and the separations are witnessed by tally sets).9

In constructing such an oracle, one must be careful in closing classes under comple-ment. In particular, if we close one class under complement, and separate another fromits complement, we cannot then make the two classes equal.Corollary 10 implies that there are uncountably many di�erent patterns of collapsethat can be realized in relativized worlds. If the collapse/separation pattern is recursive,then the oracle can be recursive, but certainly some of those patterns are realized by onlynonrecursive oracles.3 Dense Beta HierarchiesPreviously we considered �r only when r is a natural number. But the class (NP[logr n])Ais meaningful whenever r is a nonnegative real number (regardless of whether r is com-putable). Even when we allow r to be real, we can make the Beta hierarchy obey anyconsistent set of collapses and separations. For example, we can make the Beta hierarchylook like a Cantor set.Theorem 15 Let X be any subset of [1;1). There is exists an oracle A such that, forall s; t � 1, �As = �At i� [s; t] � X.Note that there may be uncountably many distinct �ts. If we separate the �qs foreach rational q, then for any two reals r and s, there is a rational q 2 (r; s), so �r 6= �s.Proof: Without loss of generality, assume that X is a union of intervals, each con-taining more than one point. Every interval in X contains a rational point; therefore Xcontains countably many intervals.We will satisfy the following requirements for each maximal interval in X , dependingon its type:[s; t] : NP[logs n] = NP[logt n][s; t) : NP[logs n] = NP[logt n= log logn](s; t] : NP[logs n log logn] = NP[logt n](s; t) : NP[logs n log logn] = NP[logt n= log log n][s;1) : NP[logs n] = NP[n](s;1) : NP[logs n log logn] = NP[n]In addition, for each rational number q in (1;1)�X , we will make NP[logq n= log log n] 6=NP[logq n] 6= NP[logq n log logn]. If 1 =2 X , then we make P 6= NP[logn log logn] as well.The construction is a slight modi�cation of that in the proof of Theorem 8. Weperform the diagonalizations in some well-founded order, while maintaining the codingsas we go along. The only signi�cant di�erence here is that the diagonalizations are notperformed in increasing order. Suppose that at some stage we are making NP[a(n)] �NP[b(n)] and a coding string for some NP[c(n)] computation is queried; we restrain thatstring i� (9n)[c(n) > b(n)] i� (8n)[c(n) � b(n)]. The counting argument is the same asbefore. 10

Note: we could also close each distinct �r under complement or not, as we wish, inthe theorem above.4 Open ProblemsThe class �k is contained in NP \ DTIME(2logk n). Our work shows that there is norelativizing proof that P = �2 ) P = NP. We would like to know whether P =NP \DTIME(nlogn) implies P = NP, i.e., if P 6= NP are there any easy languages inNP � P? The best we can show is that if P = NP \DTIME(f(n)) for a well-behavedfunction f , then P = NP \DTIME(f(f(n))). Is there an oracle relative to which thisis the best possible translation of the collapse? Does P = NP \DTIME(2logk n) implyP = NP?AcknowledgmentsWe are grateful to Leen Torenvliet, Andrew Klapper, and Martin Kummer for helpfuldiscussions, and Andrew Klapper, Bill Gasarch, and Martin Kummer for careful proof-reading.

11

References[1] C. �Alvarez, J. D��az and J. Tor�an, \Complexity Classes With Complete Problems Be-tween P and NP-Complete," in Foundations of Computation Theory, Lecture Notesin Computer Science 380, Springer-Verlag, 1989, pp. 13-24.[2] T. Baker, J. Gill and R. Solovay. Relativizations of the P = NP question. SICOMP4:431-442, 1975.[3] J. F. Buss and J. Goldsmith, \Nondeterminism within P," SIAM Journal of Com-puting 22 (1993), 560{572.[4] J. Cai, T. Gundermann, J. Hartmanis, L. A. Hemachandra, V. Sewelson, K. W.Wagner, and G. Wechsung. The Boolean hierarchy I: structural properties. SICOMP,17(6):1232{1252, Dec. 1988.[5] A. K. Chandra, D. C. Kozen, and L. J. Stockmeyer. Alternation. J. ACM, 28:114{133,1981.[6] J. D��az and J. Tor�an. Classes of bounded nondeterminism. MST, 23, 1990.[7] L. Hemachandra and S. Jha. Defying upward and downward separation. In Pro-ceedings of the 10th Annual Symposium on Theoretical Aspects of Computer Science,pages 185{195. Springer-Verlag, 1993. LNCS 665.[8] C. M. R. Kintala. Computations with a restricted number of nondeterministic steps.PhD thesis, Pennsylvania State University, University Park, PA, 1977.[9] C. M. R. Kintala and P. C. Fischer. Computations with a restricted number ofnondeterministic steps. In Proceedings of the 9th Annual ACM Symposium on Theoryof Computing, pages 178{185, 1977.[10] C. M. R. Kintala and P. C. Fischer. Re�ning nondeterminism in relativizedpolynomial-time bounded computations. SICOMP, 9(1):46{53, Feb. 1980.[11] K.-I. Ko. Relativized polynomial hierarchies having exactly k levels. SICOMP,18:392{408, 1989.[12] S. Kurtz. Sparse sets in NP� P: relativizations. SICOMP, 14:113{119.[13] R. E. Ladner. On the structure of polynomial time reducibility. JACM, 22(1):155-171, Jan. 1975.[14] C. H. Papadimitriou and M. Yannakakis. On limited nondeterminism and the com-plexity of the V{C dimension. In Proceedings of the 8th Annual Conference on Struc-ture in Complexity Theory, pages 12{18, 1993.[15] L. Sanchis, Constructing language instances based on partial information. Interna-tional Jour. Found. Comp. Sci., to appear.12