brics back inner page for a list of recentpublications in the brics report series. copies may be...

20
BRICS RS-96-11 Dubhashi et al.: Near-Optimal, Distributed Edge Colouring via the Nibble Method BRICS Basic Research in Computer Science Near-Optimal, Distributed Edge Colouring via the Nibble Method Devdatt Dubhashi David A. Grable Alessandro Panconesi BRICS Report Series RS-96-11 ISSN 0909-0878 May 1996

Upload: vuongxuyen

Post on 21-Jun-2018

215 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: BRICS back inner page for a list of recentpublications in the BRICS Report Series. Copies may be obtained by contacting: BRICS Department of Computer Science University of Aarhus Ny

BR

ICS

RS

-96-11D

ubhashietal.:N

ear-Optim

al,Distributed

Edge

Colouring

viathe

Nibble

Method

BRICSBasic Research in Computer Science

Near-Optimal, DistributedEdge Colouring via the Nibble Method

Devdatt DubhashiDavid A. GrableAlessandro Panconesi

BRICS Report Series RS-96-11

ISSN 0909-0878 May 1996

Page 2: BRICS back inner page for a list of recentpublications in the BRICS Report Series. Copies may be obtained by contacting: BRICS Department of Computer Science University of Aarhus Ny

Copyright c© 1996, BRICS, Department of Computer ScienceUniversity of Aarhus. All rights reserved.

Reproduction of all or part of this workis permitted for educational or research useon condition that this copyright notice isincluded in any copy.

See back inner page for a list of recentpublications in the BRICSReport Series. Copies may be obtained by contacting:

BRICSDepartment of Computer ScienceUniversity of AarhusNy Munkegade, building 540DK - 8000 Aarhus CDenmark

Telephone:+45 8942 3360Telefax: +45 8942 3255Internet: [email protected]

BRICS publications are in general accessible through WWW andanonymous FTP:

http://www.brics.dk/ftp ftp.brics.dk (cd pub/BRICS)

Page 3: BRICS back inner page for a list of recentpublications in the BRICS Report Series. Copies may be obtained by contacting: BRICS Department of Computer Science University of Aarhus Ny

Near-optimal, distributed edge colouring via the nibble method ∗

Devdatt Dubhashi†

BRICS, Aarhus UniversityDenmark

David A. Grable‡

Informatik, HU BerlinGermany

Alessandro Panconesi§

Informatik, FU BerlinGermany

April 1996

Abstract

We give a distributed randomized algorithm to edge colour a network. Let G be a graphwith n nodes and maximum degree ∆. Here we prove:

• If ∆ = Ω(log1+δ n) for some δ > 0 and λ > 0 is fixed, the algorithm almost alwayscolours G with (1 + λ)∆ colours in time O(logn).

• If s > 0 is fixed, there exists a positive constant k such that if ∆ = Ω(logk n), thealgorithm almost always colours G with ∆ + ∆/ logs n = (1 + o(1))∆ colours in timeO(logn+ logs n log logn).

By “almost always” we mean that the algorithm may fail, but the failure probability can bemade arbitrarily close to 0.

The algorithm is based on the nibble method, a probabilistic strategy introduced byVojtech Rodl. The analysis makes use of a powerful large deviation inequality for functionsof independent random variables.

1 Introduction

The edge colouring problem is a basic problem in graph theory and combinatorial optimization.Its importance in distributed computing, and computer science generally, stems from the factthat several scheduling and resource allocation problems can be modeled as edge colouringproblems [12, 14, 17, 20]. In a distributed setting, the edge colouring problem can be used tomodel certain types of jobshop scheduling, packet routing, and resource allocation problems.For example, the problem of scheduling I/O operations in some parallel architectures can bemodeled as follows [12, 7]. We are given a bipartite graph G = (P ,R, E) where, intuitively, Pis a set of processes and R is a set of resources (say, disks). Each processor needs data froma subset of resources R(p) ⊆ R. The edge set is defined to be E = (p, r) : r ∈ R(p), p ∈ P.Due to hardware limitations only one edge at the time can be serviced. Under this constraintit is not hard to see that optimal edge colourings of the bipartite graph correspond to optimalschedules—that is, schedules minimizing the overall completion time.

Clearly, if a graph G has maximum degree ∆ then at least ∆ colours are needed to edge colourthe graph. A classical theorem of Vizing shows that ∆ + 1 colours are always sufficient, and the∗A preliminary version of this paper was presented at ESA ’95. The paper has been invited to be published

in a special issue of Theoretical Computer Science devoted to the proceedings of ESA ’95.†This work was partly done when at Max Planck Institute, Saarbrucken.‡Supported by Deutsche Forschungsgemeinschaft project number Pr 296/4-1.§Supported by an Alexander von Humboldt research fellowship. This work was partly done when at CWI

Amsterdam, with financial support provided by an ERCIM postdoctoral fellowship.

1

Page 4: BRICS back inner page for a list of recentpublications in the BRICS Report Series. Copies may be obtained by contacting: BRICS Department of Computer Science University of Aarhus Ny

proof is actually a polynomial time algorithm to compute such a colouring (see for example [5]).Interestingly, given a graphG, it is NP-complete to decide whether it is ∆ or ∆+1 edge colourable[11], even for regular graphs [9]. Efforts at parallelizing Vizing’s theorem have failed; the bestpram algorithm known is a randomized algorithm by Karloff & Shmoys that computes an edgecolouring using very nearly ∆ +

√∆ = (1 + o(1))∆ colours. The Karloff & Shmoys algorithm

can be derandomized by using standard derandomization techniques [4, 19]. Whether (∆ + 1)–edge colouring is P-complete is an open problem. In the distributed setting the previouslybest known result was a randomized algorithm by Panconesi & Srinivasan that uses roughly1.58∆ + logn colours with high probability and runs in O(logn) time with high probability,provided the input graph as “large enough” maximum degree. Precisely, it must satisfy thecondition ∆ = Ω(log1+δ n), where δ > 0 is any positive real. For the interesting special caseof bipartite graphs Lev, Pippinger & Valiant show that ∆-colourings can be computed in NC,whereas this is provably impossible in the distributed model of computation even if randomnessis allowed (see [21]).

In this paper, we vastly improve on the previous state-of-the-art by giving a distributedrandomized algorithm that computes a near-optimal edge colouring in time O(logn), providedthe maximum degree is “large enough”. More precisely, let G be a graph with n nodes andmaximum degree ∆. In this paper, we prove the following.

• If ∆ = Ω(log1+δ n) for some δ > 0 and λ > 0 is fixed, the algorithm almost always coloursG with (1 + λ)∆ colours in time O(logn).

• If s > 0 is fixed, there exists a positive constant k such that if ∆ = Ω(logk n), thealgorithm almost always colours G with ∆ + ∆/ logs n = (1 + o(1))∆ colours in timeO(logn+ logs n log logn).

The statements on the number of colours used and the running time hold with high probability,meaning that the failure probability is o(1), a quantity that goes to 0 as n grows. We note thatwhile the first result requires no global knowledge to be stored at the vertices, the second onerequires the vertices to know either the value of ∆ or of n, neither of which might be readilyavailable in a truly distributed system. The algorithm can be implemented in the pram modelof computation at a cost of an extra O(log ∆) factor in the running time, which is needed tosimulate the message-passing mechanism of a distributed network.

Our algorithm is based on the Rodl Nibble, a beautiful probabilistic strategy introducedby Vojtech Rodl to solve a certain covering problem in hypergraphs [3, 23, 8]. The methodhas subsequently been used very successfully to solve other combinatorial problems such asasymptotically optimal coverings and colourings for hypergraphs [3, 13, 22, 24]. In this paper, weintroduce the nibble as a tool for the design and analysis of randomized algorithms.1 Althoughthe main component of our algorithm is the Rodl nibble and the intuition behind it rathercompelling, the algorithm requires a non-trivial probabilistic analysis. The main problem ofthe analysis is that the random variables of interest turn out to be dependent, due to theinteraction along the edges of the graph. To carry out the analysis we make use of a newmartingale inequality which the second author recently developed, improving on results of Kim[16] and Alon, Kim and Spencer [2]. The inequality provides a methodology for proving sharpconcentration results for not necessarily dependent random variables which yields clean andconceptually simple proofs. We expect this method to be widely applicabile in randomized

1This research was originally prompted by a conversation that the third author had with Noga Alon and JoelSpencer, in which they suggested that the nibble approach should work. Noga Alon has informed us that heis already in possession of a solution with similar performance [1]. However, at the time of writing, a writtenmanuscript was not available for comparison.

2

Page 5: BRICS back inner page for a list of recentpublications in the BRICS Report Series. Copies may be obtained by contacting: BRICS Department of Computer Science University of Aarhus Ny

algorithms and we regard this paper as a non-trivial demonstration of its power. The highprobability analysis is further simplified by the use of the nibbling feature which, intuitively,keeps the dependency between the random variables low.

2 Preliminaries

A message–passing distributed network is an undirected graph G = (V, E) where vertices (ornodes) correspond to processors and edges to bi-directional communication links. Each processorhas its unique id. The network is synchronous, i.e. computation takes place in a sequence ofrounds; in each round, each processor reads messages sent to it by its neighbors in the graph,does any amount of local computation, and sends messages back to all of its neighbors. Thetime complexity of a distributed algorithm, or protocol, is given by the number of rounds neededto compute a given function. If one wants to translate an algorithm for this model into one forthe pram then computation done locally by each processor must be charged for.

An edge colouring of a graph G is an assignment of colours to edges such that incidentedges always have different colours. The edge colouring problem is to find an edge colouringwith the aim of minimizing the number of colours used. Given that determining an optimal(minimal) colouring is an NP-hard problem this requirement is usually relaxed to considerapproximate, hopefully near-optimal, colourings. The edge colouring problem in a distributedsetting is formulated as follows: a distributed network G wants to compute an edge colouringof its own topology. As remarked in the introduction, such a colouring might be useful in thecontext of scheduling and resource allocation.

We will make use of the following trivial algorithm. Each edge e = uv is initially given apalette of deg(u) + deg(v) colours. The computation takes place in rounds; in each round, eachuncoloured edge independently picks a tentative colour uniformly at random from its currentpalette. If no neighbouring edge picks the same colour, it becomes final. Otherwise, the edgetries again in the next round. At the end of each round the palettes are updated in the obviousway: colours successfully used by neighboring edges are deleted from the current palette. Noticethat each edge need only communicate with its neighbors. Henceforth, we will refer to this asthe trivial algorithm. Elementary calculations show that the probability that an edge coloursitself at each round is never less than a constant of value e−2(1 +o(1)). It follows by well-knownresults on probabilistic recurrence relations that with high probability every edge is colouredwithin O(logn) rounds [6, 15].

Notation When we write a ∼ b, we mean a = b(1+o(1)). The set 1, 2, . . . , n will be denotedby [n].

3 A Large Deviation Inequality

A key ingredient of our proof is a large deviation inequality for functions of independent randomvariables, which was recently developed by the second author. Please see [10] for a proof, a moregeneral result, and further discussion.

Assume we have a probability space generated by independent random variablesXi (choices),where choice Xi is from the finite set Ai, and a function Y = f(X1, . . . , Xn) on that prob-ability space. We are interested in proving a sharp concentration result on Y , i.e. to boundPr[|Y − Ex[Y ]| > a], for any a, as well as we can. The well-known Chernoff-Hoeffding boundsgive essentially best possible estimates when Y =

∑iXi. The Method of Bounded Differences

(MOBD), a nicely packaged generalization of a martingale inequality known as Azuma’s inequal-ity, allows one to consider any function f(X1, . . . , Xn) under the additional “bounded difference”

3

Page 6: BRICS back inner page for a list of recentpublications in the BRICS Report Series. Copies may be obtained by contacting: BRICS Department of Computer Science University of Aarhus Ny

requirement that changing the choice of one of the variables does not affect the final value of Yby too much [18]. More precisely, the result states that if, for all vectors A and B differing onlyin the i-th coordinate,

|f(A)− f(B)| ≤ cithen

Pr

|Y − Ex[Y ]| >√ϕ∑i

c2i /2

≤ 2e−ϕ. (1)

This result was significantly strengthened by Kim for the case of 0–1 random variables andfurther generalized by Alon, Kim and Spencer [16, 2]. The result we discuss is a further gener-alization of this last paper. The idea is that much can be gained by determining the effect ofchanging each Xi in a dynamic way, instead of statically as in the MOBD.

Consider the following “query game,” the aim of which is to determine the value of Y . Wecan ask queries of the form “what was the i-th choice?”—i.e. “what was the choice of Xi?”—inany order we want. The answer to the query is the random choice of Xi. The questioning canbe adaptive, i.e. we can chose the next Xi to be queried as a function of the knowledge gainedso far. The effect of changing Xi’s value on the final value of Y is estimated at the time Xi isqueried. The advantage of this framework is that, once some choices are exposed, many randomvariables, which at the outset could potentially affect Y significantly, do not anymore. As aresult, we can substitute for

∑i c

2i in equation 1 an estimate on the variance of Y that is in

many cases much better than∑i c

2i . The high probability analyis contained in this paper gives

non-trivial examples where the MOBD would be awkward to use or simply too weak.We now state the result precisely. A querying strategy for Y is a decision tree whose internal

nodes designate queries to be made. Each node of the tree represents a query of the type“what was the random choice of Xi?”. A node has as many children as there are randomchoices for Xi. It might be helpful to think of the edges as labeled with the particular a ∈ Aicorresponding to that random choice. In this fashion, every path from the root to a node whichgoes through vertices corresponding to Xi1, . . . , Xik defines an assignment a1, . . . , ak for theserandom variables. We can think of each node as storing the value Ex[Y |Xi1 = a1 . . .Xik = ak].In particular, the leaves store the possible values of Y , since by then all relevant random choiceshave been determined.

Define the variance of a query (internal node) q concerning choice i to be

vq =∑a∈Ai

pi,aµ2q,a,

wherepi,a = Pr[choice i was a]

and

µq,a = Ex[Y | choice i was a and all previous queries]− Ex[Y | all previous queries].

In words, µq,a measures the amount which our expectation changes when the answer to query qis revealed to be a.

Also define the maximum effect of query q as

cq = maxa,b∈Ai

|µq,a − µq,b|.

A way to think about cq is the following. Consider the children of node q; cq is the maximumdifference between any values Ex[Y | all previous queries] stored at the children. In the sequel,

4

Page 7: BRICS back inner page for a list of recentpublications in the BRICS Report Series. Copies may be obtained by contacting: BRICS Department of Computer Science University of Aarhus Ny

we will often compute an upper bound on cq for instance, by taking the maximum amount whichY can change if choice i is changed, but all other choices remain the same. In other words, tocompute cq we consider the subtree rooted at q and consider the maximum difference betweenany two values stored at the leaves of this subtree. As we shall see, in practice good upperbounds on cq are very easy to obtain.

A line of questioning ` is a path in the decision tree from the root to a leaf and the varianceof a line of questioning is the sum of the variances of the queries along it. Finally, the varianceof a strategy S is the maximum variance over all lines of questioning

V (S) = max`

∑q∈`

vq.

The use of the term variance is meant to be suggestive: V (S) is an upper bound on the varianceof Y . The variance plays essentially the same role as the term

∑i c

2i in the MOBD, but it is a

much better upper bound to the variance of Y .

Proposition 1 If there is a strategy for determining Y with variance at most V then

Pr[|Y − Ex[Y ]| > 2

√ϕV

]≤ 2e−ϕ

for every 0 ≤ ϕ ≤ V/max c2q.

Besides its “dynamic” aspect, another fact that makes the query game particularly powerfulis that the the probability that a certain choice happens can be factored in when upper boundingthe variance. When upper bounding

vq =∑a∈Ai

pi,aµ2q,a

it is often possible to partition the space Ai in two regions, the Yes region and the No regioncorresponding to two mutually exclusive events, the Yes and No events, which cover the wholespace. In this paper, for instance, the Ai will be a set of colours and the Yes event will oftenbe of the form “was choice i colour α?”. If we denote by pY,q the probability of the Yes eventoccurring, and if we know that the µ’s differ by at most cq, then

vq =∑a∈Ai

pi,aµ2q,a ≤ pY,q(1− pY,q)c2

q ≤ pY,qc2q. (2)

This bound can be verified using elementary, but non-trivial, computations, which we omit.

4 The Algorithm

The algorithm runs in two phases. The first phase is an application of the Rodl nibble algorithm.It has the goal of colouring most of the edges using a palette of ∆ colours. Starting with theinput graph G0 the algorithm generates a sequence G0, G1, . . . , Gtε of graphs, where Gi is thegraph induced by the edges still uncoloured at stage i. Each edge e has a palette of availablecolours—initially the whole set of ∆ colours. At each stage, a small ε fraction of uncolourededges is selected and each selected edge chooses a tentative colour at random from its currentpalette. If the tentative colour is not chosen by any neighboring edge, it becomes final. Palettesof the remaining uncoloured edges are updated in the obvious fashion—by deleting coloursused by neighboring edges. The process is then repeated. A key idea of the method is that if

5

Page 8: BRICS back inner page for a list of recentpublications in the BRICS Report Series. Copies may be obtained by contacting: BRICS Department of Computer Science University of Aarhus Ny

colours are chosen independently, the probability of colour conflict is roughly ε2, a negligiblefraction of all edges attempting colouring at this stage. If the same “efficiency” is maintainedthroughout, the overall “wastage” will be very small. Another aspect of the method, whichrequires a non-trivial high probability analysis, is that the graphs Gi and the colour palettesevolve, respectively, “almost” as truly random subgraphs of the original graph and truly randomsubsets of the original palettes.

We run the first phase until the remaining graph has with high probability maximum degreeat most ε∆(1+o(1)). The algorithm then switches to the trivial algorithm described in Section 2,which gives each edge at most 2ε∆(1 + o(1)) fresh colours and colours the remaining graph inO(logn) rounds with high probability. The total number of colours used by the algorithm istherefore at most (1 + 2ε)∆(1 + o(1)), which can be made as small as (1 + λ)∆, for any (notnecessarily fixed) λ > 0 by choosing a sufficiently small ε > 0.

As we shall see in section 5, the number of iterations needed to bring the degree down from∆ to ε∆(1 + o(1)) is

tε :=1pε

log1ε

where pε = ε(1− ε/4)e−2ε(1−ε/4). The total running time of the algorithm is then

O(tε + logn)

(and O((tε + logn) log ∆) on a pram).Note that in order to get a (1 + λ)∆ colouring, where λ > 0 is a fixed constant, the first

phase takes constant time and to get a ∆ + ∆/ logs n = (1 + o(1))∆ colouring, the first phaserequires O(logs n log logn) time.

The statements concerning the performance of the algorithm hold with high probability. Theexact probability of success will be determined in the analysis. We note here that an assumptionon the maximum degree of the graph is necessary. In general, we will require ∆ = Ω(log1+δ n),where δ > 0 is any constant. But if we use more than a constant number of stages in the firstphase, the requirement on ∆ becomes more stringent.

Lastly note that if we want, as in our second claim, ε to be a function of n (or ∆), it isnecessary that the processors know n (or ∆) in order to be able to calculate tε.

The algorithm is as follows.

Phase 1 Nibble Algorithm

The initial graph G0 := G, the input graph. Each edge e = uv is initially given the paletteA0(e) = [maxdeg(u), deg(v)]. (This can be arranged in one round with each vertexcommunicating its own degree to each of its neighbours.)For i = 0, 1, . . . , tε − 1 stages repeat the following:

• (Select nibble) Each vertex u randomly selects an ε/2 fraction of the edges incidenton itself. An edge is considered selected if either or both of its endpoints selects it.

• (Choose tentative colour) Each selected edge e chooses independently at random atentative colour t(e) from its palette Ak(e) of currently available colours.

• (Check colour conflicts) Colour t(e) becomes the final colour of e unless some edgeincident on e has chosen the same tentative colour,

• (Update graph and palettes) The graph and the palettes are updated by setting

Gi+1 = Gi − e | e got a final colour

and, for each edge e, setting

Ai+1(e) = Ai(e)− t(f) | f incident on e, t(f) is the final colour of f.

6

Page 9: BRICS back inner page for a list of recentpublications in the BRICS Report Series. Copies may be obtained by contacting: BRICS Department of Computer Science University of Aarhus Ny

Phase 2 Trivial Algorithm

Each uncoloured edge e = uv introduces fresh new colours in order to have degtε(u) +degtε(v) colours in its current palette and runs the trivial algorithm of Section 2.

5 Analysis: The Regular Case

We first carry out the analysis for the special case of ∆-regular graphs. We will show later howthe general case can be reduced to it. The crux of the analysis is to show that the sequence ofgraphs G0, G1, . . . , Gtε are “more or less” random subgraphs of the original input graph and thatthe palettes Ai(e) are “essentially” random subsets of the original palettes. In more technicalterms, we need to show that the graph definied by the uncoloured edges and the palettes evolvequasi-randomly. In the analysis we control three quantities:

• |Ai(u)|, the implicit vertex palette at stage i. This is the set of colours availableat vertex u at stage i, i.e. the set of colours not used by any edges incident onu. Notice that, clearly, |Ai(u)| = di(u), the degree of vertex u at stage i.

• |Ai(e)|, the edge palette at stage i; and

• di,γ(u), the number of u-neighbors which, at stage i, have γ in their palettes.

The initial values are|A0(u)| = |A0(e)| = d0,γ(u) = ∆

for all vertices u, edges e, and colours γ. We will show that

|Ai(u)| ∼ di := (1− pε)di−1, (3)|Ai(e)| ∼ ai := (1− pε)2ai−1, and (4)di,γ(u) ∼ di,γ := d2

i /a0 (5)

for all vertices u, edges e, colours γ, and stage i, where

pε = ε

(1− ε

4

)e−2ε(1−ε/4);

Intuitively, pε is the probability that an edge colours itself at any given stage. The initialconditions are

d0 = a0 = ∆.

Notice that, conforming to intuition,

di,γ =d2i

a0= (1− pε)2ia0 = ai (6)

which can be interpreted as saying: di,γ(u) ∼ |Ai(e)|.Notice also that by equation (3) the maximum degree of Gtε is

∆(Gtε) ∼ dtε = (1− pε)tε∆ ≤ ε∆

as claimed in Section 4. Hence, once equation (3) is established for i = tε, we are done. To dothis, we prove equations (3) through (5) by induction on i. The basis case, i = 0, holds truewith equality. In the proof of the inductive step, we assume that (4) through (5) hold true as

7

Page 10: BRICS back inner page for a list of recentpublications in the BRICS Report Series. Copies may be obtained by contacting: BRICS Department of Computer Science University of Aarhus Ny

shown (the IH) and prove the same statements with i replaced by i + 1. Each such proof hastwo steps. First, we show that the equations are true in expectation, namely that

Ex[|Ai+1(u)|] ∼ di+1,

Ex[|Ai+1(e)|] ∼ ai+1, andEx[di+1,γ(u)] ∼ di+1,γ.

Then we show that these random variables are sharply concentrated around their expectations.

Remark Equations (3) and (4) show that the λ = o(1) term relative to the number of coloursused can never be smaller than 1/

√∆ because by the time di ∼ λ∆ =

√∆, the edge palette has

vanished.

In the expectation computations we will need some basic facts about some atomic events. Inwhat follows, let Ei,γ(u) and Ei,γ(e) be, respectively, the set of edges incident on vertex u andon edge e which, at the end of stage i, still retain γ in their palettes.

We say that and edge γ–colours if it (1) is selected to be coloured, (2) chooses tentativecolour γ, and (3) finds no conflicting neighbour. Clearly, and edge palette must contain γ inorder for the edge to γ–colour.

Fact 1 If γ ∈ Ai(e) then Pr[e γ–colours] ∼ pε/ai.

Proof Let e = uv. By induction, |Ei,γ(e)| = di,γ(u) + di,γ(v) ∼ 2di,γ. Using equation (6) andthe IH’s (4) and (5),

Pr[e γ–colours] =ε(1− ε/4)|Ai(e)|

∏f∈Ei,γ(e)

(1− ε(1− ε/4)

|Ai(f)|

)

∼ ε(1− ε/4)ai

(1− ε(1− ε/4)

ai

)2di,γ

∼ ε(1− ε/4)ai

e−2ε(1−ε/4)

=pεai.

2

Fact 2 If f and g are two disjoint edges (i.e. f ∩ g = ∅) and γ ∈ Ai(f) ∩ Ai(g) then

Pr[f and g γ-colour] ∼ (pε/ai)2.

Proof Let Iγ be the set of edges incident on both f and g which have γ in their palettes.Observe that 0 ≤ |Iγ| ≤ 4. By the IH’s (4) and (5),

Pr[f and g γ-colour] =ε(1− ε/4)|Ai(f)|

ε(1− ε/4)|Ai(g)|

∏h∈Ei,γ(f)−Iγ

(1− ε(1− ε/4)

|Ai(h)|

)

×∏

h∈Ei,γ(g)−Iγ

(1− ε(1− ε/4)

|Ai(h)|

) ∏h∈Iγ

(1− ε(1− ε/4)

|Ai(h)|

)

∼(ε(1− ε/4)

ai

)2[(

1− ε(1− ε/4)ai

)2di,γ]2

∼(pεai

)2.

2

8

Page 11: BRICS back inner page for a list of recentpublications in the BRICS Report Series. Copies may be obtained by contacting: BRICS Department of Computer Science University of Aarhus Ny

5.1 Proof of |Ai+1(u)| ∼ di+1

First we use the two facts and the induction hypothesis to show that the expectation of |Ai+1(u)|is indeed di+1(1 + o(1)). Then we use the techniques of section 3 to show that this randomvariable is highly concentrated about its expectation so that with high probability, equation (3)is satisfied.

Lemma 1 Ex[|Ai+1(u)|] ∼ di+1.

Proof First notice that

Pr[e colours] =∑

γ∈Ai(e)Pr[e γ-colours] ∼ pε

by the IH, Fact 1 and the fact that the events “e γ-colours” are disjoint. Then, by the IH,

Ex[|Ai+1(u)|] =∑e3u

(1− Pr[e colours]) ∼ (1− pε)di = di+1.

2

Lemma 2 For each fixed vertex u, |Ai+1(u)| is within 4√

3εdi logn of its expectation with prob-ability at least 1− 2n−2.

Remark Note that an error probability less than 2n−2 suffices since we will appeal to thislemma once for each vertex u during each stage i n. Together these two lemmas implies thatwith high probability

|Ai+1(u)| = Ex[|Ai+1(u)|]± 4√

3εdi logn =

(1 + o(1)± 4

√3ε logn

(1− pε)di+1

)di+1.

Therefore, to ensure that |Ai+1(u)| ∼ di+1, we require only that (ε logn)/di+1 = o(1).

Proof Instead of proving sharp concentration bounds for |Ai+1(u)| we will prove, equivalently,sharp concentration bounds for Y = |Ai(u)|−|Ai+1(u)|, the number of edges incident on u whichsuccessfully colour themselves.

We will describe a strategy SY to determine Y whose total variance is

V (SY ) < 6εdi,

which will give us the claim by proposition 1 with ϕ = 2 logn.The strategy is defined as follows. First, we query all edges around u, for a total of di(u)

queries. By the IH, di(u) ∼ di. Then we query edges incident on neighbors of u; we will arguethat the total number of queries in this second group is at most diai(1 + o(1)) (a saving fromthe naive estimate of d2

i (1 + o(1)), resulting in much better asymptotics).Let e be a u-edge. Changing e’s tentative colour can affect the final value of Y by at most

ce = 2. For each edge e we consider the underlying Yes, No probability space, where theYes event is “e was selected for tentative colouring at this stage” so that pY,e = ε(1− ε/4).

Using bound (2) we obtain an upper bound for the variance of this query of

ve ≤ pY,ec2e = 4ε(1− ε/4),

9

Page 12: BRICS back inner page for a list of recentpublications in the BRICS Report Series. Copies may be obtained by contacting: BRICS Department of Computer Science University of Aarhus Ny

leading to an upper bound for the total variance of this initial segment of the query line of

di(u)ve ≤ 4ε(1− ε/4)di(1 + o(1)).

We then proceed by querying edges incident on neighbors of u, to see how many of these“half-succesful” edges—edges which have no conflicts around u—have no conflicts at the otherendpoint either. Let v be a neighbour of u and let e = uv. At this point, we already know t(e),e’s tentative colour choice. Therefore, we need only query the (di,t(e)(u)− 1) edges incident onv which have t(e) in their palette: the remaining edges can not affect Y in any way. The totalnumber of queries affecting the final value of Y is, using the IH,∑

v∈Ni(u)

(di,t(e) − 1) ∼ didi,γ = diai.

To estimate the variance, it is convenient to split the edges incident on u-neighbours into twogroups. Edges of type A have only one of their endpoints as a u-neighbour, whereas edges of typeB have both endpoints as u-neighbours. Focus on one type A edge f incident on a u-neighbourv; t(e) is, as usual, the tentative colour choice of e = uv. By the previous remark we assume thatt(e) ∈ Ai(f). Changing f ’s tentative colour can have maximum effect of at most cf = 1—either fconflicts with e or it doesn’t. We consider an underlying Yes, No probability space for f wherethe Yes event is “f ’s tentative choice was t(e)” so that pY,f = ε(1−ε/4)/|Ai(f)| ∼ ε(1−ε/4)/ai,again by the IH. Using bound (2), the variance of f ’s query can be upper bounded thus:

vf ≤ pY,f c2f ∼ ε(1− ε/4)/ai.

Consider now an edge g = vw of type B, let e1 = uv, e2 = uw. We can assume that t(e1) 6= t(e2)since otherwise g’s tentative colour would certainly not affect the final value of Y (because of theconflict between e1 and e2). It follows that g’s maximum effect is upper bounded by 1 becauseg can conflict with either e1 or e2, but not both. The Yes event we consider is: “g’s tentativechoice was t(e1) or t(e2)”. Then, pY,g = 2ε(1− ε/4)/|Ai(f)| ∼ 2ε(1− ε/4)/ai, by the IH. Usingbound (2), g’s variance can be bounded thus:

vg ≤ pY,gc2g ∼ 2ε(1− ε/4)/ai.

Using the latter as a worst case estimate and multiplying for the total number of queries, weobtain an upper bound for the second segment of the query line of

2diε(1− ε/4)(1 + o(1)).

The total variance of the strategy is therefore

V (SY ) ≤ 6ε(1− ε/4)di(1 + o(1)) < 6εdi

for large enough n. 2

5.2 Proof of |Ai+1(e)| ∼ ai+1

Henceforth, an e-pair of an edge e = uv is a pair (f, g) of edges such that f is a u-edge and gis a v-edge. When there is no room for confusion, we will simply say “pair” instead of “e-pair”.First, the expectation computation:

Lemma 3 Ex[|Ai+1(e)|] ∼ ai+1.

10

Page 13: BRICS back inner page for a list of recentpublications in the BRICS Report Series. Copies may be obtained by contacting: BRICS Department of Computer Science University of Aarhus Ny

Proof Let e = uv. An e-pair γ–colours if both of its edges γ-colour. First, using Fact 2, wecompute Pr[γ decays at e], the probability that some e-edge γ-colours. By inclusion-exclusion,this probability is given by the probability that some u-edge γ–colours, plus the probabilitythat some v-edge γ–colours, minus the probability that some e-pair γ–colours. To compute thislast event we define the set Pi,γ(e) of all e-pairs (f, g) such that γ ∈ Ai(f) and γ ∈ Ai(g).Equivalently, this is the set of pairs such that f ∈ Ei,γ(u) and g ∈ Ei,γ(v). By the IH, for eachγ ∈ Ai(e), |Pi,γ(e)| = (di,γ(u)− 1)(di,γ(v) − 1) ∼ d2

i,γ = a2i . But not all pairs in Pi,γ(e) can γ-

colour; pairs which form a triangle with e, i.e. those pairs (f, g) such that f ∩g 6= ∅. The crucialobservation is that the set Ti,γ(e) of triangle pairs has cardinality at most mindi,γ(u), di,γ(v)which, by the IH, is at most di,γ(1 + o(1)) ∼ ai. Hence, if we define Di,γ(e) = Pi,γ(e)− Ti,γ(e),

|Di,γ(e)| ∼ |Pi,γ(e)| ∼ a2i

by the IH. Since the events “(f, g) γ-colours” are disjoint

Pr[some pair γ-colours] =∑

(f,g)∈Di,γ(e)

Pr[(f, g) γ-colours].

By Facts 1 and 2 and equation (6),

Pr[γ decays at e] =∑

f∈Ei,γ(u)

Pr[f γ-colours] +∑

g∈Ei,γ(u)

Pr[g γ-colours]

−∑

(f,g)∈Diγ(e)

Pr[f, g γ-colour]

∼ 2di,γpεai− a2

i

p2ε

a2i

= 2pε − p2ε .

It then follows that

E[|Ai+1(e)|] =∑

γ∈Ai(e)(1− Pr[γ decays at e]) ∼ (1− pε)2ai = ai+1.

2

The next lemma establishes a strong concentration result for |Ai(e)| by making use of afeature of the nibble process. This results in a much simplified analysis. Roughly speaking, inthe proof we are concerned about a random variable whose expectation is O(ai). A naive useof the solitaire game gives a variance of O(di). Since di/ai = 1/(1− pε)i, a O(di) upper boundon the variance is still very good (best possible up to constants) if the number of iterationsis constant, but becomes Ω(nεai) for Ω(logn) iterations, resulting in much worse asymptotics.What we want is an O(ai) bound for the variance. This could be obtained by analyzing thebehaviour of the intersection between neighbouring edge palettes. By using the same methodsas in this paper it is possible to show that

|Ai(f) ∩ Ai(g)| ∼ ci := (1− pε)3ci−1

for any two neighbouring edges f and g. Although conceptually identical to the other lemmas,the resulting proof would be rather long and tedious. Fortunately, the nibble offers a short cut.We want to satisfy the condition εdi ≤ ai or, equivalently,

ε ≤ aidi

= (1− pε)i ≤ e−ipε .

11

Page 14: BRICS back inner page for a list of recentpublications in the BRICS Report Series. Copies may be obtained by contacting: BRICS Department of Computer Science University of Aarhus Ny

This is satisfied as long as

i ≤ 1pε

log1ε.

Conveniently, this is exactly the number tε of iterations of Phase I of the algorithm defined insection 4.

Lemma 4 For each fixed edge e, |Ai+1(e)| is within 26√ai logn of its expectation with probability

at least 1− 2n−3.

Remark Note that an error probability less than 2n−3 suffices since we will appeal to thislemma once for each edge e during each stage i n. This time, the two lemmas imply thatwith high probability

|Ai+1(e)| = Ex[|Ai+1(e)|]± 26√ai logn =

(1 + o(1)± 26

1− pε

√lognai+1

)ai+1.

So, to ensure that |Ai+1(e)| ∼ ai+1, we require that (logn)/ai+1 = o(1).

Proof Let e = uv. An e-pair is monochromatic if both of its edges choose the same tentativecolour. By inclusion-exclusion, the random variable of interest is

Y = # colours eaten by u-edges + # colours eaten by v-edges

−# colours eaten by monochromatic e-pairs

:= A +B −C.

We will show that these three variables are sharply concentrated around their means. (Bysymmetry, the arguments for A and B are the same.) We will find query strategies for A and Bwith total variance at most 5ai each and a strategy for C with total variance 9ai. This leads,by proposition 1 with ϕ = 3 logn, to maximum deviations of 2

√15ai logn for A and B and

6√

3ai logn for C. Summing deviations leads to a maximum deviation of 26√ai logn for Y and

hence for |Ai+1(e)|.First, we give a strategy for A of maximum variance

V (SA) ≤ 5ai.

We start by querying the edges around u; there are at most di(1 + o(1)) of these, by the IH.Changing the tentative colour of one of these edges can affect the final value of A by at most 2.Define the Yes event associated with each u-edge f as “f was selected for tentative colouringat this stage”. Then, pY = ε(1− ε/4). Using bound (2) gives the upper bound

vf ≤ pY,fc2f = 4ε(1− ε/4),

which, when multiplied by the number of queries, gives a bound for this initial segment of thestrategy of

4diε(1− ε/4)(1 + o(1)) ≤ 4ai(1− ε/4)(1 + o(1)).

As in the proof of Lemma 2, at this point we know which edges are “half-succesful”—namely,those edges which have no colour conflict around u. To determine which of these will be com-pletely succesful, we proceed as before: for each half-succesful edge e = uv with tentative colourt(e), we query the (di,t(e)−1)–many edges incident on the u-neighbour v which have t(e) in theirpalette (only these can affect the final value of A). The total number of such queries is at most

didi,t(e)(1 + o(1)) ∼ diai.

12

Page 15: BRICS back inner page for a list of recentpublications in the BRICS Report Series. Copies may be obtained by contacting: BRICS Department of Computer Science University of Aarhus Ny

Each of these edges f can affect A only by conflicting with e; therefore, f ’s maximum effect isat most 1 and pY,f ∼ ε(1− ε/4)/ai, corresponding to the Yes event “f ’s tentative colour choicewas t(e)”. This leads to a bound for the total variance of this segment of

diε(1− ε/4)(1 + o(1)) ≤ ai(1− ε/4)(1 + o(1))

Altogether, a bound for A is

V (SA) ≤ 5ai(1− ε/4)(1 + o(1)) ≤ 5ai

for large enough n.We now give a strategy for C, the one for B being the same as that for A. C counts the

number of successful monochromatic pairs which use colours from Ai(e) (a monochromatic pairis succesful if both edges succeed at this stage). First, we make 2di(1 + o(1)) queries for theu-edges and the v-edges. Each of these has maximum effect of 2. Using the Yes event “e waschosen for tentative colouring at this stage” we bound the variance of each query by 4ε(1− ε/4),which, when multiplied by the number of queries, gives an upper bound for the initial part ofthe query line of

8ε(1− ε/4)di(1 + o(1)) ≤ 8ai(1− ε/4)(1 + o(1)).

At this point, there are at most |Ai(e)| ∼ ai “half-succesful” monochromatic pairs of interest—i.e. those monochromatic pairs without colour conflicts so far. To determine if a monochromaticpair is succesful, we need to query the edges incident on the other endpoints. This total numberof additional queries is then a2

i (1 + o(1)), because if edge f has chosen tentative colour t(f),only the incident edges having t(f) in their palettes can affect the value of C, and there are atmost (1 + o(1))di,t(f) ∼ ai of these. To bound the variance ch of each of these queried edgesh we proceed as in Lemma 2. The edges are divided in three groups. Type A edges are thoseincident on two different half-succesful monochromatic pairs, i.e. h is incident on two edges fand g belonging to two different monochromatic pairs. Notice that these two pairs must havedifferent tentative colours. Type B edges are those incident on two edges of the same pair andtype C edges are those incident on just one edge of a pair.

For all types, the maximum effect of changing h’s colour is 1. For type A edges we definethe Yes event to be “h’s tentative choice is α or β” where α and β are the tentative colours ofthe pairs incident on h. The maximum effect is bounded by pY,hc2

h ∼ 4ε(1− ε/4)/ai. For type Band C edges the Yes event is “h’s choice is α”, α being the tentative choice of the pair incidenton h. The variance is bounded by pY,hc2

h ∼ ε(1 − ε/4)/ai. Chosing the former as a worst caseestimate on the variance and multiplying for the number of queries, we obtain the upper bound

4aiε(1− ε/4)(1 + o(1)).

Altogether, our strategy to determine C has total variance of

V (SC) ≤ ai(1− ε/4)(8 + 2ε)(1 + o(1)) ≤ 9ai

for large enough n and ε ≤ 1/4. 2

5.3 Proof of di+1,γ(u) ∼ di+1,γ

The expectation computation for di+1,γ(u) could be performed similarly to Lemmas 1 and 3,but we would have to compute the probability of additional atomic events. We use instead asymmetry argument based on the (now valid) (i+ 1) version of equation (3).

13

Page 16: BRICS back inner page for a list of recentpublications in the BRICS Report Series. Copies may be obtained by contacting: BRICS Department of Computer Science University of Aarhus Ny

Lemma 5 Ex[di+1,γ(u)] ∼ di+1,γ.

Proof Since the graph is initially ∆–regular and the algorithm treats colours symmetrically

Pr[γ ∈ Ai+1(w)] =# colours left

# initial colours=|Ai+1(w)|

a0.

Therefore,

Ex[di+1,γ(u)] =∑

w∈Ni+1(u)

Pr[γ ∈ Ai+1(w)] ∼∑

w∈Ni+1(u)

di+1

a0∼d2i+1

a0

by the (i+ 1) version of equation (3). 2

To finish things off, we need a strong concentration result for di+1,γ(u).

Lemma 6 For each fixed vertex u and colour γ |di+1,γ(u)| is within 6√

3εdi,γ logn of its expec-tation with probability at least 1− 2n−3.

Remark Note that an error probability less than 2n−3 suffices since we will appeal to thislemma once for each vertex u and colour γ during each stage i n. The two lemmas implythat with high probability

di+1,γ(u) = Ex[di+1,γ(u)]± 6√

3εdi,γ logn =

(1 + o(1)± 6

1− pε

√3ε logndi+1,γ

)di+1,γ.

So, to ensure that di+1,γ(u) ∼ di+1,γ, we require that (ε logn)/di+1,γ = o(1).

Proof At any given stage, a vertex u can lose a γ-neighbour v for only two reasons: (a) somev-edge colours itself γ, or (b) the edge e = uv colours itself. (Notice that these events are neitherdisjoint nor independent.) We now describe a strategy to determine the value of di+1,γ(u) oftotal variance at most 9εdi,γ. Propositon 1 with ϕ = 3 logn then finishes the proof.

First we query all edges around u which have γ in their palettes. There are di,γ(u) ∼ di,γ ofthese, by the IH. The maximum effect of changing the tentative colour of one of these u-edgese is upper bounded by ce = 2. Using the Yes event “e was selected for tentative colouring atthis stage” gives a bound for this initial segment of the query line of

di,γpY,ec2e(1 + o(1)) = 4ε(1− ε/4)di,γ(1 + o(1)).

Call the u-edges without conflict around u half-successful.In the second segment of the query line we want to determine (i) whether, for each half-

succesful edge e = uv, there are conflicts at the other endpoint v and, (ii) whether any of theedges f incident on a u-neighbour v chooses tentative colour γ. Given that at this point thetentative choice t(e) of each u-edge e is known, we need only query di,t(e)(v) ∼ di,γ edges todetermine (i) and di,γ(v) ∼ di,γ edges to determine (ii). The maximum effect of each of thesequeries is 1. The total number of queries of this second segment is therefore 2d2

i,γ(1 + o(1))because there are di,γ(1 + o(1)) u-neigbours. By defining the Yes event as “f ’s tentative colouris γ or t(e)” we have a bound vf = 2ε(1− pε)/ai(1 + o(1)) on the variance of each queried edgef . The resulting upper bound on the variance of this part of the query line is therefore

4di,γε(1− ε/4)(1 + o(1)).

14

Page 17: BRICS back inner page for a list of recentpublications in the BRICS Report Series. Copies may be obtained by contacting: BRICS Department of Computer Science University of Aarhus Ny

The third and final segment of the query line is to determine which edges incident on u-neighbours succesfully colour themselves with γ. The simple but crucial observation is that atmost one v-edge f can colour itself γ. At this point of the query line we know which of theseedges is half-succesful, i.e. which f ’s have no γ-conflict around the u-neighbour and we justneed to query the other endpoint (not always, since f could connect two u-neighbours). Thisrequires at most di,γ additional queries per half-succesful edge. These queries have maximumeffect bounded by 1 and variance at most ε(1− ε/4)/ai(1 +o(1)). The resulting variance for thisthird segment is therefore at most di,γε(1− ε/4)(1 + o(1)). 2

Remark Notice that in the proofs of Lemmas 4 and 6, the values of |Ai+1(e)| and di+1,γ(u)depend, respectively, on d2

i and d3i edges. At the outset, the tentative choices of each of these

edges could potentially affect di+1,γ(u) by 1 or more. For this reason, the Method of BoundedDifferences would give upper bounds on the variances no better than d2

i and d3i , which is orders

of magnitude bigger than what we computed (and what we needed). Alternatively, there is an“expected” form of the MOBD [18, Cor. 6.10] which we might have used, but the computationsand considerations would be more involved.

5.4 Error Analysis

We now briefly comment on the error propagation and its consequences for the analysis.We proved that the error introduced at each stage is o(1), hence if we iterate the nibble part

of the algorithm only a constant number of times the final error will be still o(1). This provesthe first of our claims concerning the performance of the algorithm.

If the number of iterations is a function of n, however, the compounded error can becomesignificant. Here we outline an error analysis that should enable the reader to verify our claimswithout too much trouble. There are two different kinds of error introduced in the analysis.One is the error due to random fluctuations. This error is computed in Lemmas 2, 4 and 6. Ofthese, the largest is the error introduced by Lemma 4. We use this as an upper bound for theerror introduced by the i-th application of these lemmas and denote it by ri.

The second type of error is due to the algebraic manipulations in the proofs of Facts 1 and 2and the other lemmas which compute the expected values. The error is due to approximationslike 1/(1 − o(1)) = (1 + o(1)), ea(1+o(1)) = ea(1 + o(1)), etc. If we denote the total erroraccumulated at stage i by (1 ± ei), we can check that the above manipulations increase theerror from (1±ei) to (1±Cei) = (1±Θ(ei)). In fact, careful inspection shows that the constantC is of the form 1 + Kε, where K is a (rather small) constant and ε is the nibble size. Thisenables us to use the nibble to keep the error under control.

To summarize, in the i-th phase, the error goes from (1 ± ei) to (1 ± Cei ± ri), whereC = 1 +Kε, ri = c

√log /ai, and c is some other constant. In terms of the ei’s, e0 = 0 and we

have the recurrence

ei+1 = C

(ei +

√(logn)/ai

)= C

(ei + (1− pε)−i

√(logn)/∆

).

The constant c disappeared from the recursion because it can be absorbed by C.Setting A =

√(logn)/∆ and B = 1/(1− pε) and solving this recurrence gives

et = A[Ct +Ct−1B + . . .+CBt−1].

Notice that since B = 1/(1− pε), B is also of the form 1 +K ′ε for some constant K ′. SettingL = maxK,K ′, we see that

et ≤ t(1 + Lε)t√

(logn)/∆.

15

Page 18: BRICS back inner page for a list of recentpublications in the BRICS Report Series. Copies may be obtained by contacting: BRICS Department of Computer Science University of Aarhus Ny

Since we need to maintain etε 1, this leads to the condition

ε(

logn∆

)1/4L.

In particular, to support our second claim, ε can be set to 1/ logs n provided that ∆ log4Ls+1 n.

6 Analysis: The Irregular Case

If the value of the maximum degree ∆ could be inexpensively distributed to all of the edges, theregular case analysis would also be valid in the general case. However in a distributed architecturethis might be too costly, so it is important that the algorithm rely on local information alone.This motivates the initial palette size of maxdeg(u), deg(v) for edge e = uv.

In fact what happens in the case when neighbouring edges receive different sized initialpalettes is that the probability of conflict is decreased and so the edges succeed in colouringthemselves even more rapidly than in the regular case. We will argue that the graph will becompletely coloured at least as fast as a regular graph where all edges have the same initialpalette size as the edge in our irregular graph with the smallest initial palette size. We’ll do thisby fixing an edge e and a round i and showing that the probability that e succeeds in colouringitself in this round is at least as high as if the graph were locally as in the regular case.

We modify e’s neighbourhood in several ways, all of which decrease the probability of e’ssuccess. First of all, for every edge f incident with e, we ignore every colour from f ’s palettewhich was not in e’s initial palette. This increases the probability of conflict between e and fby forcing f to choose a tentative colour which e at least has a chance of choosing and thereforedecreases the probability of e’s success. Next we add phantom edges to the vertex of e withlower degree. Say e = uv and degi(u) ≤ degi(v), so we add phantom edges to u. To createthe phantom edges’ palettes and fill out the real edges’ short palettes, we randomly add coloursfrom e’s initial palette until degi,γ(u) = degi,γ(v) = di,γ for all colours γ. This only decreasese’s probability of success, since it creates more opportunities for conflict.

But now the situation is locally just as if the graph were maxdeg(u), deg(v)-regular and sothe probability of e’s success is as in the regular case analysis. And thus, in the original irregulargraph, the probability of e’s success is at least as high.

Acknowledgments

We would like to thank Noga Alon, Jirı Matousek and Joel Spencer for their suggestion that theRodl nibble should work, and to Noga Alon for several other comments and suggestions. Wealso thank Sem Borst, Marco Combe, and Kurt Melhorn for useful discussions. The first authoris grateful to the CWI and the Altec project for making possible an extended visit to CWI. Thethird author acknowledges the generous hospitality of MPI and BRICS.

References

[1] N. Alon, Private Communications.

[2] N. Alon, J.H. Kim, and J. Spencer, Nearly perfect matchings in regular simple hypergraphs, preprint,1995.

[3] N. Alon, J. Spencer, and P. Erdos, The Probabilistic Method, Wiley–Interscience Series, John Wiley& Sons, Inc., New York, 1992.

16

Page 19: BRICS back inner page for a list of recentpublications in the BRICS Report Series. Copies may be obtained by contacting: BRICS Department of Computer Science University of Aarhus Ny

[4] B. Berger and J. Rompel, Simulating (logc n)-wise Independence in NC, Journal of the ACM, vol.38 (4), 1991, 1026–1046

[5] B. Bollobas, Graph Theory, Springer Verlag, New York, 1979.

[6] S. Chaudhuri and D. Dubhashi, Probabilistic Recurrence Relations (Revisited), in R. Baeza–Yates,E. Goles and P. Poblete (eds): LATIN’95: Theoretical Informatics, Second Latin American Sympo-sium, Valparaiso, Chile, LNCS 911, 207–219, 1995.

[7] D. Durand, R. Jain and D. Tseytlin, Distributed Scheduling Algorithms to improve the Performanceof Parallel Data Transfers, DIMACS Tech Report 94–38, 1994.

[8] P. Frankl and V. Rodl, Near perfect coverings in graphs and hypergraphs, European Journal ofCombinatorics, vol. 6, 1985, 317–326.

[9] Z. Galil and D. Leven, NP-completeness of finding the chromatic index of regular graphs, Journalof Algorithms, vol. 4, 1983, 35–44.

[10] D.A. Grable, A large deviation inequality for functions of independent, multi-way choices, preprint,1996.

[11] I. Holyer, The NP-completeness of edge coloring, SIAM Journal of Computing, 1981, vol. 10, 718–720.

[12] R. Jain, K. Somalwar, J. Werth, and J. C. Browne, Scheduling Parallel I/O Operations in MultipleBus Systems, Journal of Parallel and Distributed Computing, vol. 16 (4), 1992, 352–362.

[13] J. Kahn, Colouring nearly-disjoint hypergraphs with n + o(n) colors, J. Comb. Theory, Series A,1992, vol. 59, 31-39.

[14] H. J. Karloff and D. B. Shmoys, Efficient Parallel Algorithms for Edge Coloring Problems, Journalof Algorithms, 1987, vol. 8, 39–52.

[15] R.M. Karp, Probabilistic Recurrence Relations, 23rd STOC, 1991, 190–197.

[16] J.H. Kim, The Ramsey number R(3,t) has order of magnitude t2/ log t, Ranodm Structures andAlgorithms 7 (1995), 173–207.

[17] N. A. Lynch, Upper bounds for static resource allocation in a distributed system, Journal of Com-puter and System Sciences, 1981, vol. 23, 254–278.

[18] C. McDiarmid, On the method of bounded differences, In Surveys in Combinatorics, J.Siemons ed.,London Math. Society Lecture Note Series 141 (1989), 148–188.

[19] R. Motwani, J. Naor, and M. Naor, The Probabilistic Method Yields Deterministic Parallel Algo-rithms, Proceedings of 30th FOCS, 1989, 8–13.

[20] A. Panconesi and A. Srinivasan, Randomized Distributed Edge Coloring via an Extension of theChernoff-Hoeffding bounds, to appear in SIAM Journal of Computing. Preliminary version in Pro-ceedings of PODC, 1992, 251–262.

[21] A. Panconesi and A. Srinivasan, Improved Distributed Algorithms for Coloring and Network De-composition Problems, Proceedings of 24th STOC, 1992, 581–592.

[22] N. Pippinger and J. Spencer, Asymptotic behaviour of the chromatic index for hypergraphs, J.Combinatorial Theory, Series A, 1989, vol. 51, 24–42.

[23] V. Rodl, On a packing and covering problem, European Journal of Combinatorics, vol. 5, 1985,69–78.

[24] J. Spencer, Asymptotically Good Coverings, Pacific Journal of Mathematics, 1985, vol. 118 (2),575–586.

17

Page 20: BRICS back inner page for a list of recentpublications in the BRICS Report Series. Copies may be obtained by contacting: BRICS Department of Computer Science University of Aarhus Ny

Recent Publications in the BRICS Report Series

RS-96-11 Devdatt Dubhashi, David A. Grable, and Alessandro Pan-conesi.Near-Optimal, Distributed Edge Colouring via theNibble Method. May 1996. 17 pp. Invited to be publishedin in a special issue ofTheoretical Computer Sciencede-voted to the proceedings of ESA '95.

RS-96-10 Torben Brauner and Valeria de Paiva. Cut-Eliminationfor Full Intuitionistic Linear Logic . April 1996. 27 pp. Alsoavailable as Technical Report 395,Computer Laboratory,University of Cambridge.

RS-96-9 Thore Husfeldt, Theis Rauhe, and Søren Skyum.LowerBounds for Dynamic Transitive Closure, Planar Point Lo-cation, and Parentheses Matching. April 1996. 11 pp. Toappear inAlgorithm Theory: 5th Scandinavian Workshop,SWAT '96 Proceedings, LNCS, 1996.

RS-96-8 Martin Hansen, Hans Huttel, and Josva Kleist. Bisim-ulations for Asynchronous Mobile Processes. April 1996.18 pp. Appears inTbilisi Symposium on Language, Logic,and Computation, 1995.

RS-96-7 Ivan Damgard and Ronald Cramer. Linear Zero-Knowledegde - A Note on Efficient Zero-Knowledge Proofsand Arguments. April 1996. 17 pp.

RS-96-6 Mayer Goldberg.An Adequate Left-Associated Binary Nu-meral System in theλ-Calculus (Revised Version). March1996. 19 pp. Accepted forInformation Processing Letters.This report is a revision of the BRICS Report RS-95-38.

RS-96-5 Mayer Goldberg. Godelisation in theλ-Calculus (Ex-tended Version). March 1996. 10 pp.

RS-96-4 Jørgen H. Andersen, Ed Harcourt, and K. V. S. Prasad.AMachine Verified Distributed Sorting Algorithm. February1996. 21 pp. Abstract appeared in7th Nordic Workshopon Programming Theory, NWPT '7 Proceedings, 1995.

RS-96-3 Jaap van Oosten.The Modified Realizability Topos. Febru-ary 1996. 17 pp.