Matching is as Easy as Inversion

Ketan Mulmuley ’

Computer Science Department University of California, Berkeley

Umesh V. Vazirani 2

Aiken Computation Laboratory Harvard University

Vijay V. Vazirani 3

Computer Science Department Cornell University

Abstract only computationally non-trivial step required in its execution is the inversion of a A new algorithm for finding a maximum single . Since this step can be matching in a general graph is presented; its parallel&d, we get a simple parallel (RNC2) special feature being that the only computa- algorithm. Because of this simplicity, the tionally non-trivial step required in its execu- sequential version of our algorithm has some tion is the inversion of a single integer merits over the conventional matching algo- matrix. Since this step can be parallelized, rithms as well. we get a simple parallel (RNC2) algorithm. This algorithm was obtained while At the heart of our algorithm lies a proba- solving the matching problem from the bilistic lemma, the isolating lemma. We viewpoint of parallel computation. The main show applications of this lemma to parallel difficulty here is that the graph may contain computation and randomized reductions. exponentially many maximum matchings; how do we coordinate the processors so they seek the same matching in parallel? The key to achieving this coordination is a probabilis- 1. Introduction tic lemma, the isolating lemma, which lies at the heart of our algorithm; it helps to single A new algorithm for finding a max- out one matching in the graph. imum matching in a general graph is In its general form, the isolating presented; its special feature being that the lemma holds for an arbitrary set system. This yields a relationship between the paral- Permission to copy without fee all or part of this lei complexity of an arbitrary search problem material is granted provided that the copies are not made or distributed for direct commercial advantage, the ACM copyright notice and the title of the publication ’ Miller Fellow, University of California, Berkeley. and its date appear, and notice is given that copying is s Work done during a post-doctoral position at MSRI, by permission of the Association for Computing Berkeley. Machinery. To copy otherwise, or to republish, requires a fee and/or specific permission. 3 Supported by NSF Grant BCR 8503611 and an IBM Faculty Development Award. Currently at AT&T Bell Labs, Murray Hill, NJ 07974.

Permission to copy without fee all or part of this material is granted provided that the copies are not made or distributed for direct commercial advantage, the ACM copyright notice and the title of the publication and its date appear, and notice is given that copying is by permission of the Association for Computing Machinery. To copy otherwise, or to republish, requires a fee and/or specific permission.

0 1987ACM O-89791-221-7/87/0006-0345 75c 345 and the corresponding weighted decision Tutte in 1947 ~Tu], based on the work of problem. As an application, we give an Pfaff on skew-symmetric matrices. It states RNC’ algorithm for the Exact Matching that a graph has a iff a cer- problem in general graphs. It is interesting tain matrix of indeterminates, called the to note that this problem is not known to be Tutte matrix,, is non-singular. Motivated by in P. The isolating lemma also yields a sim- an a1gorithmi.c use of this theorem, :Edmonds ple proof for the result in IValVaz] showing [Ed21 studied the complexity of computing the NP-hardness, under randomized reduc- .. He gave a modified Gaussian tions, of instances of SAT having a unique elimination procedure for computing the solution. of an integer matrix in a polyno- Matching was first shown to be in mial number of bit operations, and stated the Random NC @NC3 ) by Karp, Upfal and open problem of efficiently deciding whcthcr Wigderson [KUW 11. Their algorithm also a matrix of indeterminates is non-singular. utilizes matrix operations, and in fact these The first algorithm based on Tuttc’s are some of the most widely used tools for theorem was given by Lovasz l&01]. Using obtaining fast parallel algorithms. Several the fundamlental insight that polynomial problems are known to be NC’ reducible to identities can be efficiently tested by ran- computing the determinant of an integer domization [SC], Lovasz reduced, the deci- matrix. Cook [Co] defines DET to be the sion problem, ‘Does the given graph have a class of all such problems. DET G NC2, and perfect matching? ’ to testing if a given it is not known whether this inclusion is integer matrix is non-singular. Since the proper. All problems known to be in NC2 latter problem is in NC2 [Cs], this yields a are either in AC1 or in DET [Co]. Our algo- (Monte Carlo) RNC2 algorithm for the rithm puts the matching problem in RDET. former problem (see also [BGH]). Rabin and Vazirani IRV] extended this approach, using a theorem of Frobenius, to give a simple ran- domizing algorithm which finds a perfect matching by sequentially inverting IV I /2 2. History matrices. The search problem, i.e. actually find- The maximum matching problem is a ing a perfect matching in parallel, is much natural problem, and its study has led to harder. The first parallel (RNC3) algorithm conceptual breakthroughs in the field of for this long-standing open problem was algorithms. In fact, the characterization of given by Karp, Upfal and Wigderson ‘tractable problems’ as ‘polynomial time solv- [KUWl]. Tbey use the Tutte matrix to able problems’ was first proposed by implement (in RNC2) a ‘rank’ function. Edmonds [Edl] in the context of the general Their algorithm probabilistically prunes out graph matching problem. Solving this prob- edges from the graph; the rank function lem from the viewpoint of parallel computa- guarantees that the remaining graph has a tion has also been quite fruitful. perfect matching, and a probabilistic lemma Whereas sequential algorithms for the ensures that a constant fraction of the edges maximum matching problem are based on are pruned at each stage. Hence, after finding ‘blossoms’ and ‘augmenting paths’ in O(Iog IVI) stages only a perfect matching graphs (see lEdl]), the known parallel algo- remains. This algorithm is also Monte Carlo rithms require a new approach; they use pro- in that it may fail to give a perfect matching. babilistic and algebraic methods. In fact, the Using the Gallai-Edmonds Structure matching problem emerged from algebra Theorem (see [LOO]) Karloff [Ka] gives a around the turn of this century in the works complementary Monte Carlo (RNC2) algo- of Petersen, Frobenius and Konig (for a rithm for bounding the size of a maximum detailed history see [LPI), A key ingredient matching from above, thus yielding a Las in the new approach is a theorem proved by Vegas extension.

346 Our algorithm is conceptually different Since S contains n elements, in that it directly finds a perfect matching in the graph. It is somewhat faster (RI@) and Pr [There exists a singular requires 0 (n3*‘m) processors. element] 5 ( ‘1 xn= l/2. 2n Thus, with probability at least l/2, no ele- ment is singular. The lemma follows from 3. The Isolating Lemma the observation that there is a unique minimum weight set iff no element is singu- lar. Definition: A set system (S, F) consists of a Notice that by the same argument, the finite set S of elements, maximum weight set will be unique with pro- s = {Xl, x2, . ..) x,), and a family F of sub- bability at least l/2 as well. An extension of sets of S, i.e. F = {S,, S2, * - - Sk}, SQ, the isolating lemma is required in Theorem for 1 5 j I k. 2(a). In this extension we are given integers Let us assign a weight wi to each ele- al,a2r ’ ’ ’ at, and the weight of set Si is ment Xi E S and let us define the weight of defined to be aj + C Wi, 15 j5 k. The the set Sj to be C Wi. x&sj proof given above works for this case as well. Lemma 1: Let (S, F) be a set system whose elements are assigned integer weights chosen uniformly and independently from 11, 2n], Then, Pr [There is a unique minimum weight set 4. The Matching Algorithm 1 in Fl2 2’ We will first consider the simpler case of a : Proof: Fix the weights of all elements except Xi. Define the threshold for element Xi, to be Input: A bipartite graph G(iJ,V,E), having the real number a; such that if wi I oi then a perfect matching. Xi is contained in some minimum weight sub- set, Si, and if wi > oi then Xi is in no Problem : Find a perfect matching in G. minimum weight subset. We will view the edges in E and the Clearly, if Wi < oi, then the element Xi set of perfect matchings in G as a set system. must be in every minimum weight subset. Let us assign random integer weights to the Thus ambiguity about element Xi occurs iff edges of the graph, chosen uniformly and Wi = (xi, since in this case there is a independently from [I, 2m1, where minimum weight subset that contains Xi and m = [El. Now by lemma 1, the minimum another which does not. In this case we shall weight perfect matching in G will be unique say that the element Xi is singular. with probability at least l/2. Our parallel We now make the crucial observation algorithm will pick out this perfect matching. that the threshold, a;, was defined without reference to the weight, Wi, of Xi. It follows Notation: We will represent the (i, j)rh ele- that ai is independent of Wi. Since Wi is a ment of matrix A by (lower case) aii, the uniformly distributed integer in [1, 2n], submatrix obtained by removing the ifh row and the jfh column by Aij, the determinant of Pr [Element xi is singular, i.e. A by IA I, and the adjoint of A by adj(A). 1 Wi= CXi]I 2n *

347 Let U= {ul, - - - u,}, ‘V= {vl, - - - v,}, i.e. aM, in the above sum will have value 2”. and let D be the nx n of G, The remaining permutations have value zero, i.e. dij= 1 if (ui,vi)EE, an.d 0 otherwise. or a higher power of 2. Hence IBij 12”“/2’+ Obtain an integer’ matrix B from D by will be odd. On the other hand, if (Us, Vi) 4 replacing the l’s in D by 2”+, where wii is M, all permutations in the sum have value the weight assigned to the edge (Ui,Vj). zero, or a power of 2 higher than 2”. Hence IB~j12”“/2” will be even. The lemma fol- Lemma 2: Suppose the minimum weight lows. perfect matching in G(U, V,E) is unique. Let this matching be M and its weight be w. The algorithm to find M is now Then IB I# 0; moreover, the highest power straightforward: of 2 which divides IB I is 2”.

Proof: First notice that each perfect match- Procedure: Perfect Matching (G, B); ing in G corresponds to a permutation in S,. For each permutation cr on (1, 2, . . . . n), define Step 1: Compute IB I, and obtain W.

Step 2: Compute udj(B); its (j, Qrh entry will be the IBij I. Thus VU~U~(CT) f 0 iff (Ui., V.(i)) E E, for 1 5 i I n, i.e. if 0 represents a perfect Step 3: For each edge (Ui, Vi) do in parallel: matching in G. By definition., IB.. 12”” IB I = Csign(a)x vulue~(o) Compute ‘&, ; a :If this quantity is odd, include where sign(o) is + 1 if CJis an even permuta- (ui, vj) in the matching. tion, and -1 otherwise. end; Let oM be the permutation correspond- ing to M. Then vaZue(crM)=:!“. The value of The algorithm for general graphs is each of the remaining permutations is either essentially the same. The main difference is zero, or a higher power of 2. The lemma fol- that we need to operate with the Tutte lows. matrix of the graph.

Thus by evaluating IB I, we can deter- Definition: Given a graph G (V, E), the mine the weight of the minimum weight adjacency matrix of G is an nx n symmetric matching. The next lemma will enable us to matrix D SU& that dij = 1 if (Vi, vj)EE, and obtain the matching itself. 0 otherwise. The Tutte matrix of G is an nx n skew- A, obtained as Lemma 3: Let M be the unique minimum follows from D: if dij = dji = 1, replace weight matching in G, and let w be its them by indeterminates Xii and -Xi;, so that weight. The edge (Ui, Vi) belongs to M iff the entries above the diagonal are positive, IBij 12”” and leave the 0 entries of D unchanged. is odd. 2” Theorem (Tutte [Tu]): Let G(V, E) be a graph and let A be its Tutte matrix. Then Proof: First notice that IA I# 0 iff there is a perfect matching in G. IB~~12”V = x sign(cr)v ‘J Obtain an integer matrix B from the 0:0(i)= j Tutte matrix by substituting for the indeter- Let cry be the permutation correspond- minates Xii the integers 2w’j, where Wij is the ing to M. If (Uj, vi) E M, one permutation, weight assigned to the edge (Vi, Vj). The

348 algorithm given above, operated with B, graph G (V, E), given edge-weights w(e) for gives a perfect matching in G. The proof of each edge OS??in unary. First notice that if Lemmas 2 and 3 is more involved for gen- the weight of each edge is scaled up by a fac- eral graphs, and it appears in the final paper tor of mn,’ the minimum weight perfect (to appear in Combinatorics). matchings will be lighter than the rest by at Notice that the only non-trivial compu- least mn. We can now use the isolating tational effort required in the matching algo- lemma to isolate one of I these minimum rithm is the evaluation of the determinant weight matchings: to edge e& assign the and adjoint of B. We will use Pan’s IPa] weight mnw(e) + re, where T, is chosen uni- randomized matrix-inversion algorithm, formly and independently from [l, 2m]. The which computes IBI and a&(B) in order to proof of Lemma 1 works in this setting as compute B- i. It requires 0 (log2n) time and well. As such this algorithm will require O(n3.‘m) processors for inverting an nx n O(n3.‘mW) processors, where W is the matrix whose entries are m-bit integers, In weight of the heaviest edge. Hence if the comparison, there is a processor-efficient edge-weights are in unary, this problem is in RNC3 implementation of the algorithm of RNC2. The parallel complexity of this prob- [KUW 11 which requires 0 (n3.5) processors lem when the edge-weights are given in WI. binary is as yet unresolved.

Theorem 1: There is an RNC2 algorithm for b). The problem of finding a maximum finding a perfect matching in general graphs. matching in a graph can now be reduced to The algorithm requires 0 (n3.‘m) parallel minimum weight perfect matching as follows: processors. extend G into a complete graph by throwing in new edges. Assign weight 0 to each edge of G, and 1 to each of the new edges, and Although the sequential version of our find a minimum weight perfect matching (for algorithm is less efficient than conventional an alternative method see [RV]). matching algorithms (the most efficient of these takes O(mJ T) steps [MV]), it has the advantage of being easy to program, espe- c). The vertex-weighted matching problem is cially if a subroutine for matrix inversion is the following: available, In BV] a simple matching algo- rithm is presented, addressing the issue of input : Graph G (V, E), and a positive weight ease of programming. It would be informa- for each vertex VEV. tive to compare these two algorithms. Problem: Find a matching in G whose vertex-weight is maximum. The vertex- weight of a matching is defined to be the sum of the weights of the vertices covered by 5. Parallel Algorithms for Related the matching. Problems First notice that the desired matching will be a maximum matching. This is so A parallel algorithm for the perfect because any non-maximum matching can be matching problem easily yields parallel algo- augmented into a maximum matching rithms for the following related problems. without unmatching any vertex in the pro- RNC3 algorithms for these problems are cess. Define V’GV to be a matching set if V’ given in [KUWl]. Here we give RNC2 algo- is the set of vertices covered by a maximum rithms. matching in G. The solution now consists of finding the heaviest matching set, and a per- a). We first address the problem of finding a fect matching in the subgraph induced by minimum weight perfect matching in a

349 these vertices. Sort the v’ertices of G by parallelized? Notice that the self-reduction decreasing weight. Two matching sets can process yields the lexicographically first solu- be compared lexicographically in this sorted tion. For several problems, such as maximal order. independent set and depth first search, find- ing such a solution is P-complete (see [Co]), Lemma 4: The lexicographically largest even though efficient parallel algorithms matching set is the heaviest matching set. exist for the unrestricted search problem (the parallel complexity of finding the lexico- Proof: Let L and H be maximum matchings graphically first perfect matching or the lexi- which give the lexicographically largest and cographically first maximal matching is as the heaviest matching sets respectively. Sup- yet unresolveld). This issue was first studied pose these matching sets are: different. Let u by Karp, Upfal and Wigderson [KUW2]. be the first vertex in the sorted order where Motivated from matroid theory, they give an the two sets differ. The vertex u will be RNC2 procedure for the search problem, matched in L but not in 1Fi. Consider the using an oracle for the ‘rank’ function. Via symmetric difference of L and H. This will the isolating lemma, we reduce a general have an alternating even length path from 1( search problem to the weighted decision to a vertex v, say. The symmetric difference problem, where the weights are polynomially of this path and H will yield a matching bounded. heavier than H, since v is lighter than u. The contradiction proves the lemlma. Theorem 3: Let (S, F) be an arbitrary set We now use the A?NC2 algorithm system, and let 0 be an oracle for the presented in [VV] for obtaining the lexico- weighted decision problem, ‘Given polynomi- graphically largest matching set. This algo- ally bounded positive integral weights for the rithm is based on a generalization of Tutte’s elements of ,S and a positive integer k, is Theorem. there a set j7 whose weight is k or less?’ There is an RNC’ procedure which uses 0 to solve the search problem ‘Find a set in F’. Theorem 2: The following problems are in RNC2: The procedure is similar to the perfect a). Finding a maximum matching in a graph. matching algorithm of Section 3. The weight b). Finding a minimum weight perfect of the minimum weight set is determined by matching when the edge weights are given in binary search on k, using O(logn) calls to unary. the weighted decision procedure. Its ele- c). Finding a maximum vertex-weighted ments are identified in parallel by the follow- matching (even if the vertex weights are ing observati.on: an element Xi is in the given in binary). minimum weight set iff upon increasing its weight by 1, the weight of the minimum weight set increases. Hence we can deter- mine the elements of the minimum weight set in parallel. 6. Other Applications of the Isolating Using this procedure we obtain an Lemma RNC2 algorithm for the following problem posed by Papadimitriou and Yannakakis [PY]. Interestingly enough, it is not known a) Parallel Complexity of Search vs. Deci- if this problem can be solved in (determinis- sion Problems tic) polynomial time. For the case of sequential computation, search problems are reducible to the Exact Matching: corresponding decision problems via self- Input: A graph G (V, E), a subset E‘cE of reducibility. Can such al reduction be red edges, and a positive integer k.

350 Output: Find a perfect matching involving w(v) to each vertex VEV, chosen from [l, exactly k red edges. 2n1, where n = IVI. By the isolating lemma, with probability at least l/2, the In this case the set system will consist of all maximum weight clique will be unique in perfect matchings which have exactly k red this graph. The transformed graph G’ is now edges. Assume that polynomially bounded obtained as follows: corresponding to vertex weights w, are given to the edges ee.E of G, WV, G’ will have 2nk + w(v) vertices, with and there is a unique minimum weight per- a clique on them. Corresponding to each fect matching with k red edges. The follow- edge (u, v) in G, each copy of u is joined to ing NC2 procedure, suggested by Lovasz, each copy of v in G’. Next choose a random will find the weight of this perfect matching: integer r in [l, 2nk], and let k’ = 2nk2 + r. in the Tutte matrix of G, substitute 2w’ for a The transformed problem is (G’, k’). variable x, if eczE- E’ and 2w’y if eEE’, The following hold by Lemma 1: where y is an indeterminate. Let B be the resulting (skew-symmetric) matrix. Now, (1) (G, k) $ CLIQUE = > (G’, k’) d UNIQUE CLIQUE. IBI = @f(B))2 (2) (G, k) E CLIQUE = > Pr [(G’, k’) where pf(B) is the of B. Compute E UNXQUE CLIQUE] 2 114n. IB I using the parallel determinant algorithm of [BCP], and then compute its square-root by interpolation. The power of 2 in the coef- ficient of yk will be the weight of the minimum weight perfect matching involving 7, Discussion and Future Directions exactly k red edges. One difficulty in solving combinatorial Theorem 4: The exact matching problem is problems in parallel is the following: on the in RNC2. one hand it is crucial to coordinate the pro- cessors so they seek the same solution in parallel; on the other hand, the problem of b) Randomized Reductions finding a solution with any special proper- We now turn to another application of ties, such as the lexicographically first one, is the isolating lemma. Valiant and Vazirani typically P-complete. The isolating lemma [ValVaz] studied the complexity of finding gets around this; it induces a probability dis- solutions to instances of SAT having unique tribution on the set of matchings in the solutions. They show that this problem is graph, and it picks one matching from this M-hard under randomized reductions. Their distribution. The distribution assigns a non- proof is based on the hash-function property zero probability to each matching in the of GF [2] inner products. The isolating graph. Can the methods presented here be lemma yields a simpler proof. extended to achieve a uniform probability For simplicity, we consider the distribution, thereby obtaining random CLIQUE problem, which is parsimoniously matching in the given graph? This will help inter-reducible with SAT. The core of the solve a long-standing open problem, that of proof is illustrated by showing a randomized estimating the permanent of a O/l matrix. reduction from CLIQUE to UNIQUE exactly is #P- CLIQUE. The CLIQUE problem is ‘Given a complete [Va]; however, the problem of graph G(V, E) and an integer k, is there a estimating the permanent is equivalent to the clique of size k in the graph?’ On the other problem of generating a random perfect hand, UNIQUE CLIQUE asks if there is matching in a bipartite graph [Br], [JVV]. exactly one clique of size k. The main step in the matching algo- The reduction is as follows. First rithm, matrix inversion, can be accomplished assign a random and independent weight in several ways: by Guassian elimination, a

351 greedy algorithm, or by Strassen’s method set in F is u:niclue with probability at Ileast (see [AHU]), which is based on divide and half. conquer. Thus by suitably implementing An important open problem remaining matrix inversion, the matlching algorithm is whether the maximum matching probIem acquires a greedy/divide-and-conquer fla- is in (determmistic) NC. Currently, incom- vour. This opens the possibility of a com- parability graphs is the largest class of binatorial algorithm for matching which has graphs for which this problem is known to be this flavour. Notice that the algorithm in NC [KVV]. It may be easier to solve the presented relies critically on the choice of a decision problem, ‘Does the given graph suitable generalization of matching: the have a perfect matching?‘, before tackling weighted problem with the additional condi- the general search problem. The following tion that there is a unique minimum weight modified decision problem is known to be in perfect matching. Whereas it is unlikely that hTC, ‘Does the given bipartite graph have a there is a greedy/divide-and-conquer algo- unique perfect matching?’ [KVV]. rithm for matching itself, the results presented in this paper indicate that it is not unreasonable to expect a combinatorial algo- rithm for the generalized problem, or a suit- able modification. Acknowledgements: We are thankful to In applying the isolating lemma to the David Aldous, Jack Edmonds, Laszlo case of perfect matchings, it seems that sub- Lovasz, Eva Tardos and Les Valiant for stituting random integers from [l, 2n3 valuable discussions. should suffice where IVI = n. This will improve the processor-efficiency of the paral- lel algorithm and the running time of the sequential Las Vegas algorithm. Notice that the proof of the isolating References lemma relies on the independence of the weights of the elements. It would be interest- ing to study how crucial the role of indepen- [AHUI A.V. Aho, J.E. Hopcroft, and J.D. dence is. The semi-random source, intro- Ullman, The Design and Analysis of duced in [SV] and [Vaz], mathematically Computer Algorithm, Addison- models dependence using the notion of an Wesl.ey, Reading, Mass,, 1974. adversary. Thus one could study the proba- WPI A. Borodin, S.A. Cook, and N. bility that the minimum weight set is unique, Pippinger, ‘Parallel Computation if the weights of the elements are assigned for Well-endowed Rings and Space by a semi-random source. One possible for- Bounded Probabilistic Machines,’ mulation is the following: Information and Control 58, l-3 (1983). pp. 113-136. Let (S,F) be a set system with s= {Xl, * - * x,}. Each element of S is [BGHI A. Borodin, J. von zur Gathen, and assigned a label by the roll of an m+ k sided J.E. Hopcroft, ‘Fast Parallel Matrix dice whose k faces are labelled with *, and and GCD Computations’, Twenty the remaining faces are numbered from 1 to Third Annual IEEE Symp. on the m. Each face is equally likeby to appear. The Foundations of Computer Science adversary now looks at all the outcomes and (1982?),pp. 65-71. assigns weights from [1, * * u m] to the *‘ed IBrl A.Z. Broder, ‘How Hard is it to elements, trying to ensure that the minimum Marry at Random? (On the weight set in F is not unique. The problem Approximation of the Permanent)‘, is to place good bounds on .m and k so that Eighteenth Annual Symp. on the despite the adversary, the minimum weight Theory of Computing, (1986), pp.

352 50-58. and Theoretical Computer Science [Co1 S.A. Cook, ‘A Taxonomy of Prob- Conference, (1985), to appear in lems with Fast Parallel Algorithms,’ Theoretical Computer Science. information and Control, 64, 2-22 ml1 L. Lovasz, ‘On Determinants, (1985). Matchings and Random Algo- ux L. Csanky, ‘Fast Parallel Matrix rithms,’ Fundamentals of Computing Inversion Algorithms,’ SIAM J. Theory, edited by L.Budach, Computing 5, (1976), pp. 618-623. Akademia-Verlag, Berlin, (1979). IEd11 J. Edmonds, ‘Paths, Trees and [Lo21 L. Lovasz, ‘Combinatorial Problems Flowers, ’ Canad. J. Math., 17, and Exercises, ’ Akademiai Kaido, (1965), pp. 449-467. Budapest, and, North-Holland, Amsterdam, (1979). [Ed21 J. Edmonds, ‘Systems of Distinct Representatives and Linear Atge- u-a L. Lovasz and M. Plummer, bra,’ J. Res. Nat. Bureau of Stan- Matching Theory, Academic Press, dards, 71B, 4, (1967), pp 241-245. Budapest, Hungary, (in press). @PI Z. Galil and V. Pan, ‘Improved WV1 S. Micali and V.V. Vazirani, ‘An Processor Bounds for Algebraic and 0 (4 IVI IE I) Algorithm for Find- Combinatorial Problems in RNC,’ ing Maximum Matching in General Twenty Sixth Annual IEEE Symp. on Graphs,’ Twenty First Annual IEEE the Foundations of Computer Sci- Symp. on the Foundations of Com- ence, (1985). pp. 490-495. puter Science, (1980), pp 17-27. [JVVI M.R. Jerrum, L.G. Valiant and Pal V. Pan, ‘Fast and Efficient Algo- V. V. Vazirani, ‘Random Genera- rithms for the Exact Inversion of tion of Combinatorial Structures Integer Matrices, Fifth Annual from a Uniform Distribution’, Foundations of Software Technology Theoretical Computer Science 43 and Theoretical Computer Science (1986) pp. 169-188. , Conference, (1985). Kal H. Karloff, ‘A Randomized Parallel C.H. Papadimitriou and M. Yan- Algorithm for the Odd Set Cover nakakis, ‘The Complexity of Res- Problem,’ to appear in Combinator- tricted Spanning Tree Problems, ica. JACM, Vol 29, No. 2, (1982), pp. 285-309. [KUWI] R.M. Karp, E. Upfal, and A. Wigderson, ‘Constructing a Max- M.O. Rabin and V.V. Vazirani, imum Matching is in Random NC,’ ‘Maximum Matching in General Combinatorics, 6( 1), ( 1986) pp. Graphs Through Randomization,’ 35-48. submitted for publication. [KUW21 R.M. Karp. E. Upfal, and A. WI M. Santha and U.V. Vazirani, Wigderson, ‘Are Search and Deci- ‘Generating Quasi-Random sion Problems Computationally Sequences from Semi-Random Equivalent?’ Seventeenth Annual Sources’, JCSS, Vol 33, No 1, Aug Symp. on Theory of Computing, 1986, pp. 75-87. (1985). WI J. T. Schwartz, ‘Fast Probabilistic [KVV] D. Kozen, U.V. Vazirani, and Algorithms for Verification of Poly- V.V. Vazirani, ‘NC Algorithms for nomial Identities,’ JACM, 27(4), Comparability Graphs, Interval 701-717 (1980). graphs, and Testing for Unique Vu1 W.T. Tutte, ‘The Factorization of Perfect Matching,’ Fifth Annual Linear Graphs, ’ J. London Foundations of Sofhvare Technology Math. Sot. 22, (1947), pp. 107-111.

353 Wal L.G. Valiant, ‘The Compl.exity of Computing the Perimanent’, Theoretical Computer Science 8 (1979) pp. 189-201. [ValVaz]L.G. Valiant and V.V. Vazirani, ‘NP is as Easy as Detecting Unique Solutions,’ Theoretical Computer Science, 47 (1986), pp. 85-93. [Vaz] U.V. Vazirani, ‘Randomness, Adversaries and Computation’, Ph.D. Dissertation, University of California, Berkeley (1986).. WV1 U.V. Vazirani and V.V. Vazirani, ‘The Two-Processor Scheduling Problem is in Random NC,’ Seven- teenth Annual Symp. on Theory of Computing, (1985), pp. 11-21.

354