40
Perfect Matchings in Random Bipartite Graphs with Minimal Degree at Least 2 Alan Frieze Department of Mathematical Sciences, Carnegie Mellon University, Pittsburgh, Pennsylvania 15213; e-mail: [email protected] Received 21 November 2002; accepted 25 August 2004 DOI 10.1002/rsa.20044 Published online 20 October 2004 in Wiley InterScience (www.interscience.wiley.com). ABSTRACT: We show that a random bipartite graph with n + n vertices and cn random edges, and minimum degree at least two, has a perfect matching whp. © 2004 Wiley Periodicals, Inc. Random Struct. Alg., 26, 319–358, 2005 1. INTRODUCTION To quote from Lovász [14] on page 55, “the problem of the existence of 1-factors (perfect matchings), the solution of which (the König-Hall theorem for bipartite graphs and Tutte’s theorem for the general case) is an outstanding result making this probably the most devel- oped field of graph theory.” Erd˝ os and Rényi [8, 9] found a way to use these results for a surprisingly sharp study of existence of perfect matchings in random graphs. For B n,m ,a random bipartite graph with n + n vertices and m = n(ln n + c n ) random edges, they proved [8] that lim n→∞ Pr(B n,m has a perfect matching) = lim n→∞ Pr(δ(B n,m ) 1) = 0, c n → −∞, e 2e c , c n c, 1, c n →∞, *Supported in part by NSF Grant CCR-9818411. © 2004 Wiley Periodicals, Inc. 319

Perfect matchings in random bipartite graphs with minimal degree at least 2

Embed Size (px)

Citation preview

Page 1: Perfect matchings in random bipartite graphs with minimal degree at least 2

Perfect Matchings in Random BipartiteGraphs with Minimal Degree at Least 2

Alan Frieze∗Department of Mathematical Sciences, Carnegie Mellon University, Pittsburgh,

Pennsylvania 15213; e-mail: [email protected]

Received 21 November 2002; accepted 25 August 2004DOI 10.1002/rsa.20044Published online 20 October 2004 in Wiley InterScience (www.interscience.wiley.com).

ABSTRACT: We show that a random bipartite graph with n+ n vertices and cn random edges, andminimum degree at least two, has a perfect matching whp. © 2004 Wiley Periodicals, Inc. RandomStruct. Alg., 26, 319–358, 2005

1. INTRODUCTION

To quote from Lovász [14] on page 55, “the problem of the existence of 1-factors (perfectmatchings), the solution of which (the König-Hall theorem for bipartite graphs and Tutte’stheorem for the general case) is an outstanding result making this probably the most devel-oped field of graph theory.” Erdos and Rényi [8, 9] found a way to use these results for asurprisingly sharp study of existence of perfect matchings in random graphs. For Bn,m, arandom bipartite graph with n+n vertices and m = n(ln n+cn) random edges, they proved[8] that

limn→∞Pr(Bn,m has a perfect matching) = lim

n→∞Pr(δ(Bn,m) ≥ 1)

=

0, cn →−∞,

e−2e−c, cn → c,

1, cn →∞,

*Supported in part by NSF Grant CCR-9818411.© 2004 Wiley Periodicals, Inc.

319

Page 2: Perfect matchings in random bipartite graphs with minimal degree at least 2

320 FRIEZE

where δ denotes minimum degree. Of course minimum degree at least one is a trivialnecessary condition for the existence of a perfect matching. The Hall theorem turned out tobe perfectly tailored for use in combination with probabilistic techniques, pioneered by theauthors several years earlier [8]. Even though Tutte’s theorem for the nonbipartite case isconsiderably more involved, in [9] they managed to extend the analysis to the random graphGn,m, a random general graph with n vertices and m = n

2 (ln n+ cn) edges, showing that

limn→∞n even

Pr(Gn,m has a perfect matching) = limn→∞Pr(δ(Gn,m) ≥ 1)

=

0, cn →−∞,

e−e−c, cn → c,

1, cn →∞.

In both cases a perfect matching becomes likely as soon as one has sufficiently many randomedges for the minimum degree to be at least one with high probability (whp) [A sequenceof events En occurs with high probability (whp) if limn→∞ Pr(En) = 1.]. This has ledresearchers to consider the existence of perfect matchings in models of a random graph inwhich the minimum degree requirement is always satisfied. Perhaps the first result alongthese lines is due to Walkup [18]. He considered a κ-out model Bκ-out of a random bipartitegraph, again with n + n vertices V1 + V2. Here each vertex v ∈ Vi “chooses” κ randomneighbors in its complementary class V3−i. Walkup showed that

limn→∞Pr(Bκ-out has a perfect matching) =

{0, κ = 1

1, κ ≥ 2

Frieze [10] proved a nonbipartite version of this result, the argument being based on Tutte’stheorem and considerably harder. Very recently Karonski and Pittel [12] have proven whpexistence of a perfect matching in what they called the B(1+e−1)-out graph, a subgraph ofB2-out , obtained from B1-out by letting each of its degree 1 vertices select another randomneighbor in the complementary class. Observe that in all of these results [18], [10], and [12]the number of random edges depends linearly on the number of vertices, and the minimumdegree has been raised to 2, in a sharp contrast with the case m being of order n log n. Hereis why. When there are order n ln n random edges, there are few vertices of degree 1 andthey are far apart. In sparser models, with minimum degree 1, whp there will be a linear(in n) number of vertices of degree 1, and some two vertices of degree 1 will have a commonneighbor, which rules out a perfect matching. In the case of random regular graphs it turnsout that minimum degree 3 is required, Bollobás [3]: Let Gr denote a random r-regulargraph on vertex set [n], n even. Then

limn→∞Pr(Gr has a perfect matching) =

{0, r = 2,

1, r = 1 or r ≥ 3.

The case r = 1 is trivial since then Gr is itself a perfect matching of [n]. G2 is whp acollection of O(ln n) disjoint cycles and they will all have to be even for G2 to have a per-fect matching. The meat of the result is therefore in the case r ≥ 3 and this follows fromr-connectivity and Tutte’s theorem.

Another approach was considered by Bollobás and Frieze [6]. Let Gδ≥κn,m denote the set

of graphs with vertex set [n], m edges and minimum degree at least κ . Let Gδ≥κn,m be sampled

Page 3: Perfect matchings in random bipartite graphs with minimal degree at least 2

PERFECT MATCHINGS IN RANDOM BIPARTITE GRAPHS 321

uniformly from Gδ≥κn,m . By conditioning on minimum degree 1, say, we will need fewer

random edges to get a perfect matching whp: Let m = n4 (ln n+ 2 ln ln n+ cn).

limn→∞n even

Pr(Gδ≥1n,m has a perfect matching) =

0, cn →∞ sufficiently slowly,

e−18 e−c

, cn → c,

1, cn →∞.

(1)

The restriction “sufficiently slowly” may seem out of place, but bear in mind that if m = n/2then the probability of a perfect matching is 1. The precise threshold between n/2 and14 n ln n for the nonexistence of a perfect matching was not determined. (Using the approachdeveloped in the present paper for the bipartite case, we have found that “sufficiently slowly”in (1) can be replaced simply by m > n/2.) This work was extended in Bollobás, Fenner,and Frieze [4], who considered the probability that Gδ≥k

n,m has �k/2� disjoint Hamilton cyclesplus a further disjoint perfect matching if k is odd.

In this paper and [11] we continue this line of research. In [11] we considered the bipartiteversion of (1). Let Bδ≥κ

n,m denote the set of bipartite graphs with vertex set [n], [n], m edges,and minimum degree at least κ . Let Bδ≥κ

n,m be sampled uniformly from Bδ≥κn,m .

Theorem 1. Let m = n2 (ln n+ 2 ln ln n+ cn). then

limn→∞Pr(Bδ≥1

n,m has a perfect matching) =

0, cn →−∞, m > n,

e−14 e−c

, cn → c,

1, cn →∞.

(2)

The probability on the RHS of (2) is the limiting probability that a pair of vertices of degree 1have a common neighbor. Thus, the probability that a perfect matching exists is (close to)1 when either m = n/2 or cn is large, and the probability is very small for m everywhere inbetween, except cn not far to the left from 0.

If we consider Gδ≥2n,cn, then we have to allow for the existence of small components which

are isolated odd cycles, i.e., we will not have a “probability one” result. Also, for a change,we will allow n to assume odd values as well. For a graph G = (V , E), let µ∗(G) denote themaximum matching number. Slightly stretching, we say that G has a perfect matching ifµ∗(G) = [|V |/2]. Let X(G) stand for the total number of odd isolated cycles in G. Clearly

µ∗(G) ≤ ν(G) :=[ |V | − X(G)

2

].

Let µ∗n, Xn, νn stand for µ∗, X , ν computed at G = Gδ≥2n,cn. It was shown in [11] that

Theorem 2. Let c > 1 be an absolute constant. Then

limn→∞Pr(µ∗n = νn) = 1,

and Xn is, in the limit, Poisson (λ),

λ = 1

4log

1+ σ

1− σ− σ

2, σ := ρ

eρ − 1,

Page 4: Perfect matchings in random bipartite graphs with minimal degree at least 2

322 FRIEZE

and ρ satisfiesρ(eρ − 1)

eρ − 1− ρ= 2c.

In particular, as n →∞,

Pr(Gδ≥2n,cn has a perfect matching) = o(1)+

{e−λ, if n even,

e−λ + λe−λ, if n odd.(3)

Notice that c = 1 corresponds to the random 2-regular (nonbipartite) graph, which typi-cally has �(log n) odd (isolated) cycles. Sure enough, the explicit term in the RHS of (3)approaches zero as c ↓ 1.

It was shown in Aronson, Frieze, and Pittel [1] that whp a simple greedy algorithmof Karp and Sipser [13] found a matching that was within O(n1/5) of optimal. Theorem 2shows that the Karp-Sipser algorithm is whp also �(n1/5) from optimal.

For integer k ≥ 2 let graph G have property Ak if G contains �k/2� edge disjoint Hamiltoncycles, and, if k is odd, a further edge disjoint matching of size �n/2�. Bollobás, Cooper,Fenner, and Frieze [5] show that, for k ≥ 2, there exists a constant ck ≤ 2(k + 2)3 suchthat if c ≥ ck , Gδ≥k+1

n,cn has property Ak . Thus the current paper deals with the property A1

and proves a sharp result. It is reasonable to conjecture that the true value for ck , k ≥ 2 is(k+1)/2. Note that if c = (k+1)/2 and cn is integer, then Gδ≥k+1

n,cn is a random (k+1)-regulargraph and this is known to have Ak whp, Robinson and Wormald [17].

Now we come to the result of this paper: The next natural question in this line of researchis: How many random edges are needed if we constrain the minimum degree of a bipartitegraph to be at least 2, so ruling out the possibility of two vertices of degree 1 having acommon neighbor.

Theorem 3. Let c ≥ 2 be an absolute constant. Then

limn→∞Pr(Bδ≥2

n,cn has a perfect matching) = 1.

If c = 2, then we are dealing with 2-regular bipartite graphs and all such graphs have aperfect matching. Thus the content of the theorem lies in the case c > 2.

Remark 1. The theorem does not indicate what happens when c = 2+ o(1) and so it is anopen question to determine the smallest ω = o(n) such that Bδ≥2

n,2n+ω has a perfect matchingwhp.

2. PROOF OF THEOREM 3

We will use Hall’s necessary and sufficient condition for the existence of a perfect matchingin a bipartite graph.

The random graph Bδ≥2n,m has no perfect matching iff for some k ≥ 2 there exists a

k-witness. Let R, C (rows, columns) be disjoint copies of [n]. A k-witness is a pair of setsK ⊆ R, L ⊆ C, or K ⊆ R, L ⊆ C, such that |K| = k, |L| = k−1 and N(K) ⊆ L. Here N(K)

denotes the set of neighbors of vertices in K . A k-witness is minimal if there does not existK ′ ⊂ K , L′ ⊂ L such that (K ′, L′) is a k′-witness, where k′ < k. It is straightforward that if

Page 5: Perfect matchings in random bipartite graphs with minimal degree at least 2

PERFECT MATCHINGS IN RANDOM BIPARTITE GRAPHS 323

(K , L) is a minimal k-witness then every member of L has degree at least 2 in Bn(K ∪ L),the subgraph of Bn induced by K ∪ L. Therefore the subgraph has at least 2(k − 1) edges.We can restrict our attention to k ≤ n/2 since for k > n/2 we can consider C \ L, R \ K .For 2 ≤ k ≤ n/2, let Wn,k,µ denote the random number of minimal k-witnesses, such thatBn(K ∪ L) has µ edges, µ ≥ 2(k − 1). Actually, since k ≤ n/2, we also have µ ≤ m − n.

Let now m = cn where c > 2 is a fixed constant and let B = Bδ≥2n.m . A direct application

of Hall’s theorem has resisted our efforts. Along these lines we can only manage

Lemma 1. There exists an ε = ε(c) such that,

Pr(∃K ⊆ R : |K| ≤ εn and |N(K)| < |K|) = O(n−1).

However this lemma can be used in the proof of the following: Let µ∗(G) denote the sizeof a maximum matching in G.

Lemma 2. For t ≥ 1, m ∼ cn, ε1 = ε1(n) > 0, and ω = K log n for some sufficientlylarge K = K(c),

If Pr(µ∗(Bδ≥2n,m−ω) ≥ n− t) ≥ 1− ε1, then

Pr(µ∗(Bδ≥2n,m ) ≥ n− t + 1) ≥ 1− ε1 + (log n)3

n1/2.

We also prove

Lemma 3. If m ∼ cn, then

Pr(µ∗(Bδ≥2n,m ) ≤ n− O(n.49)) ≤ n−4.

With these two preceding lemmas we can easily prove Theorem 3. Let m ∼ cn and letmr = m − rω, r = 0, 1, . . . , An.49. Then

Pr(µ∗(Bδ≥2n,mr

) ≤ n− r) ≤ n−1 + (O(n.49)− r)(log n)3

n1/2. (4)

This is proved by downwards induction on r with the base case r = An.49 (for some constantA > 0) being verified by Lemma 3 and Lemma 2 providing the inductive step. Theorem 3is the case r = 0 of (4).

3. A RESULT FROM [11]

We define functions

ft(z) =∑�≥t

z�

�! = ez −∑�<t

z�

�! (5)

for t ≥ 1.Let the ν1-tuple c = (c1, . . . , cν1) and the ν2-tuple d = (d1, . . . , dν2) of nonnegative

integers be given. Introduce Nc,d(ν, µ), ν = (ν1, ν2), the total number of bipartite graphs

Page 6: Perfect matchings in random bipartite graphs with minimal degree at least 2

324 FRIEZE

with µ edges, and degree sequences ai, i ∈ [ν1], bj, j ∈ [ν2] such that ai ≥ ci, (i ∈ [ν1]), andbj ≥ dj, (j ∈ [ν2]). Of course, Nc,d(ν, µ) = 0 if µ <

∑i ci, or µ <

∑j dj. So we assume

that µ ≥ max{∑i ci,∑

j dj}.Then let

Gc(x) =∏

i∈[ν1]fci(x) and Hd(y) =

∏j∈[ν2]

fdj (y). (6)

We introduce the following notation: We write A ≤b B in place of A = O(B) when theexpression B is long. We believe that it enhances readability.

Lemma 4.

(a) Suppose that ν1, ν2 = O(µ) and µ = O(νi log νi), i = 1, 2. Suppose that µ−1 ≤b

r1, r2 = O(log µ). Then

Nc,d(ν, µ) ≤bµ!

(ν1ν2r1r2)1/2

Gc(r1)Hd(r2)

(r1r2)µ. (7)

(b)

|Bδ≥2n,m | ∼ m!

(f2(ρ)n

ρmn1/2

)2

F(c), (8)

where ρ satisfies ρf1(ρ)/f2(ρ) = c and F is an explicitly given function.

3.1. Proof of Lemma 1

We show that ∑2≤k≤εm2k≤µ<m

En,k,µ → 0, (9)

for some ε > 0. Here En,k,µ is the expected number of the minimal k-witnesses (K , L),|K| = k, |L| = k − 1, N(K) = L, with µ edges. We know that every vertex from L has atleast two neighbors from K .

Picking z ∈ (0, ρ), we use (7) with r1 = r2 = z to bound N1, the number of such bipartitegraphs on K + L. We use (7) with r1 = r2 = ρ to bound N2, the total number of feasiblebipartite graphs that remain after deletion of all vertices belonging to K .

Using (8), we then obtain

En,k,µ ≤b E∗n,k,µ =(n

k

)( nk−1

)kz(mµ

) · f2(z)2k−1

z2µ· ρ2µe(k−1)ρ

f2(ρ)2k−1. (10)

Consequently,

E∗n,k,µ+1

E∗n,k,µ

= µ+ 1

m − (µ+ 1)· ρ2

z2≤{

12 µ < µ := � z2

3ρ2 m�23 µ ≤ �1.1µ� (11)

Page 7: Perfect matchings in random bipartite graphs with minimal degree at least 2

PERFECT MATCHINGS IN RANDOM BIPARTITE GRAPHS 325

Therefore, if k ≤ 0.5µ,max{µ,2.2k}∑

µ=2k

E∗n,k,µ ≤b E∗n,k,2k . (12)

Furthermore, using (10) for the k in question and µ = 2k, mf2(ρ)/n = ρ(eρ − 1),

E∗n,k+1,2(k+1)

E∗n,k,2k

≤ 4(n− k)2

(m − 2k)2· f2(z)2

z4· ρ4eρ

f2(ρ)2

= (1+ O(z2))

(f2(z)

z2/2

)2 (ρ/2

sinh ρ/2

)2

≤ 1+ O(z)

1+ ρ2/12

< 1,

provided that z is chosen sufficiently small. So

µ/2∑k=2

E∗n,k,2k ≤b E∗n,2,4 = O(n3m−4) = O(n−1),

and, invoking (12),µ/2∑k=2

max{µ,2,2k}∑µ=2k

En,k,µ = O(n−1). (13)

Let us now bound En,k,µ for the same k’s, but µ > max{µ, 2, 2k}. To bound N1 this time,we choose r1 = r2 = µ/k. In particular, ri ≥ 2.2, thus bounded away from zero, just likethe optimal r, the root of rf1(r)/f2(r) = µ/k. (For µ = 2k, the root would be zero!) Usingf2(µ/k) ≤ eµ/k and the notation ≤p to hide a polynomial factor in n, we get

En,k,µ ≤p exp(nJ(x, y)), x = k

n, y = µ

n, (14)

where

J(x, y) = 2H(x)− cH(y

c

)+ 2y log

xρe

y+ x log

f2(ρ)2,

and (x, y) ∈ D,

D := {(x, y)|x ≤ x, y ≥ max{y, 2.2x}},

x := cz2

6ρ2, y := cz2

3ρ2.

Notice at once that, for (x, y) ∈ D,

Jx(x, y) = 2(− log x + log(1− x))+ 2y

x+ log

f2(ρ)2

≥ 4 log z−1 + O(1) > 0,

Page 8: Perfect matchings in random bipartite graphs with minimal degree at least 2

326 FRIEZE

if z is small enough. For such a z, J(x, y) increases with x for every y, as long as (x, y) ∈ D.In addition, the equation

Jy(x, y) = ln

(x2ρ2

(c− y)y

)= 0

has two roots y±(x) > 0,

y± = 1

2(c±√

c2 − 4ρ2x2),

as x ≤ 1/2 and ρ < c, and y− = O(x2) = O(z4), y+ = c − O(z4). In particular, y∗(x) :=max{y, 2.2x} ∈ (y−, y+), if z is sufficiently small. Furthermore, as a function of y, J(x, y)decreases on [y−, y+], and increases on [y+, c]. Therefore,

max{J(x, y) : (x, y) ∈ D} = maxx≤x{J(x, y∗(x)), J(x, c)}.

If y∗(x) = 2.2x, then

J(x, y) = 2x log

(1

x

)− 2.2x log

(1

x

)+ O(x)

= −0.2x log

(1

x

)+ O(x)

≤ −0.05cz2

ρ2log

(1

z

).

If y∗(x) = y, so that x ≤ y/2.2, then

J(x, y) = 2x log

(1

x

)− y log

(1

y

)+ O(y)

≤(

2

2.2− 1

)y log

(1

y

)+ O(y)

≤ −0.05cz2

ρ2log

(1

z

).

Finally

J(x, c) = −2(c− x) log

(1

x

)+ O(1).

Therefore, for z sufficiently small,

max{J(x, y) : (x, y) ∈ D} ≤ −0.05cz2

ρ2log

1

z< 0.

From (14) we get then

En,k,µ ≤ e−αn, α = −0.04cz2

ρ2,

soµ/2∑k=2

∑µ≥max{µ,2,2k}

En,k,µ ≤ e−α∗n, α∗ = 0.03cz2

ρ2log

1

z.

Combining this with (13) and the definition of µ in (11), we prove (9) with ε = cz2

6ρ2 .

Page 9: Perfect matchings in random bipartite graphs with minimal degree at least 2

PERFECT MATCHINGS IN RANDOM BIPARTITE GRAPHS 327

3.2. Bipartite Model

We now describe the graph model we will use for the remainder of our analysis. It is abipartite version of the “random sequence model” considered in Section 2 of [13]. Letµ ≥ 1 and the disjoint sets R, C be given. R and C have meaning of a row set and a columnset respectively, and µ a number of edges. For x ∈ Rµ and y ∈ Cµ, we define a multibipartitegraph Gx,y as having a vertex set R + C, and the edge set E(Gx,y) = {(x�, y�); 1 ≤ � ≤ µ}.Then the degree of i ∈ R (j ∈ C resp.) in Gx,y equals dx(i) = |{� ∈ [µ] : x� = i}|(dx(j) = |{� ∈ [µ] : y� = j}| resp.). Define

≥1 = {x ∈ Rµ : dx(i) ≥ 1, i ∈ R}, Cµ

≥1 = {y ∈ Cµ : dy(j) ≥ 1, j ∈ C}.That is Rµ

≥1, say, is a set of all x such that every i ∈ R has positive degree in x. Forν = (v1,R, v1,C , vR, vC , µ), let

BR,C(ν) ={(x, y) ∈ Rµ

≥1 × Cµ

≥1 :

there are v1,R indices of degree 1 in R

there are vR indices of degree ≥ 2 in R

there are v1,C indices of degree 1 in C

there are vC indices of degree ≥ 2 in C}Thus BR,C(ν) is the set of all multibipartite graphs Gx,y without isolated vertices, and withthe specified numbers of (light) vertices of degree 1, and of (heavy) vertices of degree 2 atleast, separately among the row vertices and the column vertices.

We letv1 = v1,R + v1,C and v = vR + vC .

Thus we consider Bδ≥2n,m to be the simple graphs among the collection BR,C(ν(m)), where

|R| = |C| = n and ν(m) = (0, 0, n, n, m).We now discuss the distribution of the degree sequence of Gx,y. Fix x, y and let R1 =

{i ∈ R : dx(i) = 1}, C1 = {j ∈ C : dy(j) = 1}.

Lemma 5. Suppose that (x, y) is chosen uniformly at random from BR,C(ν). Then �x ={dx(i) : i ∈ R \ R1}, �y = {dy(j) : j ∈ C} is distributed as

(�Z , �Z ′) = ({Zi : i ∈ R \ R1}, {Z ′j : j ∈ C \ C1}).Here Zi are independent copies of Po(λ;≥ 2) conditioned on

∑i∈R\R1

Zi = µ− v1,R, Z ′j are

independent copies of Po(λ′;≥ 2) conditioned on∑

j∈C\C1Z ′j = µ − v1,C, and �Z, �Z ′ are

mutually independent. The parameters λ > 0, λ′ are arbitrary.

Proof. Since x, y are mutually independent, it suffices to consider x only. Assume withoutloss of generality that R \ R1 = [vR]. Let s = µ− v1,R and

S =�x ∈ [s]vR :

∑1≤i≤vR

xi = s and ∀i, xi ≥ 2

.

Page 10: Perfect matchings in random bipartite graphs with minimal degree at least 2

328 FRIEZE

Fix �ξ ∈ S. Then, by the definition of x and �Z = {Zi}i∈[vR],

Pr(�x = �ξ) =(

s!ξ1!ξ2! . . . ξv!

)/(∑�x∈S

s!x1!x2! . . . xv!

).

On the other hand,

Pr

�Z = �ξ ∣∣∣∣ ∑

1≤i≤vR

Zi = s

= ∏

1≤i≤vR

zξi

(ez − 1− z)ξi!

/∑�x∈S

∏1≤j≤vR

zxi

(ez − 1− z)xi!

=(

(ez − 1− z)−vR zs

ξ1!ξ2! . . . ξvR !)/(∑

�x∈S

(ez − 1− z)−vzs

x1!x2! . . . xvR !

)

= Pr(x = �ξ).

To make the most out of this underlying independence, we set λ = zR, λ′ = zC , where

µ− v1,R

vR= zR(ezR − 1)

fR,

µ− v1,C

vC= zC(ezC − 1)

fC,

where f (x) = f2(x) = ex − 1− x and we have abbreviated fR = f (zR), fC = f2(zC). We willalso use z, the root of

µ− v1

v= z(ez − 1)

f (z).

Lemma 6. Suppose that vRzR →∞ and a is such that a2(vRzR)−1 → 0. Then

Pr

i∈R\R1

Zi = µ− v1,R − a

= 1+ O((1+ a2)(vRzR)

−1)

(2πvRVar(Z))1/2,

where Z = Po(zR;≥ 2). An analogous estimate holds for the column set C.

Proof. This follows immediately from Lemma 21 in Appendix B.

Notice that Var(Z) = �(zR). Using Lemma 6 with a = 0, we see that the probability of theconditioning event is of order (vRzR)

−1/2 ≥ �(n−1/2). So, a qs event1 expressed in terms of�Z remains a qs event when �Z is replaced by �x. The same relation holds between �Z ′ and �y.

In particular, since

Pr(Po(zR;≥ 2) ≥ log n) = O(n−�(log log n)),

we have that for (x, y) chosen uniformly from BR,C(ν(m)),

Pr(max{�x, �y} > log n) = O(n−�(log log n)), (15)

where �x = maxj∈R{dx(j)} and �y = maxj∈C{dy(j)}.

1A sequence of events En is said to occur quite surely (qs) if Pr(En) = 1− O(n−K ) for any constant K > 0.

Page 11: Perfect matchings in random bipartite graphs with minimal degree at least 2

PERFECT MATCHINGS IN RANDOM BIPARTITE GRAPHS 329

Lemma 7. Suppose (x, y) is chosen randomly from BR,C(ν(m)), where R = C = [n],m = cn.

(a) Conditional on being simple, Gx,y is distributed as Bδ≥2n,cn.

(b) Pr(Gx,y is simple) ∼ exp(− ρ2

2(1−e−ρ )2

), where ρ(eρ−1)

eρ−1−ρ= c.

Proof.

(a) If Gx,y is simple, then it has vertex set [n] + [n] and m edges. Also, there are (m!)2

distinct equally likely values of (x, y) which yield the same graph.(b) If we condition on the degree sequence dx, dy, then given max{�x, �y} ≤ log n,

Pr(Gx,y is simple) ∼ e−λ(dx)λ(dy)/2,

where if a = (a1, a2, . . . , an), then λ(a) = 1m

∑ni=1 ai(ai − 1) (see, for example,

[15]). Now

E(nλ(dx)) = E(nλ(dy)) ∼ nρ

1− e−ρ

and this is true conditional on the qs event max{�x, �y} ≤ log n.

Now the random variable nλ(dx) is the sum of independent random variables and it is easyto show concentration around its mean. Thus for example Pr

(∣∣λ(dx)− ρ

1−e−ρ

∣∣ ≥ n−1/3) ≤

n−a for any constant a > 0 and the lemma follows.

3.3. Proof of Lemma 2

Let ω = �K log n� for some large constant K > 0. Consider the bipartite graph � withvertex set Bδ≥2

n,m−ω + Bδ≥2n,m and an edge (G, H) iff

E(G) ⊆ E(H) and E(G) \ E(H) is a matching.

Consider the following experiment sample:

• Choose G randomly from Bδ≥2n,m−ω

• Add a random matching M, disjoint from E(G) of size ω to obtain H ∈ Bδ≥2n,m .

This induces a probability measure Q on Bδ≥2n,m . Let d� denote degree in �.

Lemma 8.

G ∈ Bδ≥2n,m−ω implies

(n2 − m − 2ωn)ω

ω! ≤ d�(G) ≤(

n2

ω

).

Page 12: Perfect matchings in random bipartite graphs with minimal degree at least 2

330 FRIEZE

Proof. The RHS is obvious. For the LHS let us bound from below the number of orderedsequences e1, e2, . . . , eω of ω edges which are disjoint from E(G) and form a matching.Observe that after choosing e1, e2, . . . , ei we rule out at most m− ω+ 2in choices for ei+1.(The m−ω edges of G plus the further≤ 2in edges incident with e1, e2, . . . , ei.) Thus thereare always at least n2 − m − 2ωn choices for ei+1. Dividing by ω! accounts for removingthe ordering.

Thus for n large and G, G′ ∈ Bδ≥2n,m−ω,∣∣∣∣ d�(G)

d�(G′)− 1

∣∣∣∣ ≤ 4ω2

n. (16)

We now consider the degrees d�(H) for H ∈ Bδ≥2n,m .

For H ∈ Bδ≥2n,m let E>(H) be the edges of H joining vertices of degree at least 3. If

e ∈ E(H)\E(G), then other edges of H incident to e must already be in E(G). So, if (G, H)

is an edge of �, then E(H) \ E(G) ⊆ E>(H).

Lemma 9. Let

θ = c−1ρ2, whereρ(eρ − 1)

eρ − 1− ρ= c.

If H is chosen uniformly at random from Bδ≥2n,m , then qs

(a)�(H) ≤ log n.

(b)|E>(H)− θn| = O(n1/2 log n).

Proof. Let x, y be chosen uniformly from BR,C(ν(m)). Part (a) follows from (15) andLemma 7. Now to part (b). Let W be the number of pairs (xi, yi), i ≤ m such that dx(xi),dy(yi) ≥ 3. We know that, conditioned on simplicity, W = E>(H). We see that

E(W) = mx,3my,3

m, (17)

where

mx,3 = m − 2|{ j ∈ R : dx( j) = 2}| and m y,3 = m − 2|{ j ∈ C : dy( j) = 2}|Now, in the notation of Lemma 5,

E

(n∑

i=1

Zi − 2|{i : Zi = 2}|)= nρ, (18)

The sum in (18) is of independent random variables and it is straightforward to show enoughconcentration around the mean to prove that∣∣∣∣∣

n∑i=1

Zi − 2|{i : Zi = 2}| − nρ

∣∣∣∣∣ ≤ n1/2 log n qs.

Page 13: Perfect matchings in random bipartite graphs with minimal degree at least 2

PERFECT MATCHINGS IN RANDOM BIPARTITE GRAPHS 331

It then follows from Lemmas 6 and 7 that

|mx,3 − nρ| ≤ n1/2 log n and similarly |my,3 − nρ| ≤ n1/2 log n qs. (19)

Suppose now the condition (19) holds, which we call the event E1. Then E1 holds qs. Itfollows from (17) that

E(W | E1) = θn+ O(n1/2 log n), θ := c−1ρ2. (20)

Assume E1 holds and fix x completely and fix y up to a random permutation. Call theconditional probability space �. We appeal to the Azuma-Hoeffding inequality to showthat in �, W is tightly concentrated around its mean. The A-H inequality applies sincetransposing any two elements of a permutation of y may change W by at most 2 (seeAppendix C). So, for every u > 0,

Pr�(|W − E�(W)| ≥ u) ≤ 2e−u2/(8cn).

Removing the conditioning on E1, we obtain

Pr(|W − E(W | E1)| ≥ u) ≤ Pr(E c1)+ 2e−u2/(8cn).

So, substituting u = n1/2 log n and using (20), we see that

|W − θn| ≤ An1/2 log n qs,

if the constant A is sufficiently large. Recalling that W = E>(H) on the event E0, and thatPr(E0) is of order n−1, we have proved the part (b).

Now let B be the set of H ∈ Bδ≥2n,m satisfying the conditions of the above lemma i.e.

• The number of edges joining two vertices of degree≥ 3 is in the range θn±An1/2 log nfor some constant A > 0.

• The maximum degree �(H) ≤ log n.

According to the lemma

|Bδ≥2n,m \ B| ≤ |B|n−K , ∀K > 0. (21)

Note next that

Lemma 10.

H ∈ B implies

(θn− An1/2 log n− 2ω log n)ω

ω! ≤ d�(H) ≤(

θn+ An1/2 log n

ω

).

Proof. The upper bound is obvious. As in Lemma 8, for the LHS let us bound from belowthe number of ordered sequences e1, e2, . . . , eω of ω edges which are contained in E>(H)

and form a matching. Observe that after choosing e1, e2, . . . , ei we rule out at most 2i�

Page 14: Perfect matchings in random bipartite graphs with minimal degree at least 2

332 FRIEZE

choices for ei+1. Thus there are always at least θn − An1/2 log n − 2ω� choices for ei+1.Dividing by ω! accounts for removing the the ordering.

So for H, H ′ ∈ B, ∣∣∣∣ d�(H)

d�(H ′)− 1

∣∣∣∣ ≤ 2Aω log n

θn1/2. (22)

Finally, for H ∈ Bδ≥2n,m \ B, H ′ ∈ B,

d�(H)

d�(H ′)≤

(mω

)(θn−An1/2 log n−2ω log n)ω

ω!≤(

2c

θ

, (23)

as the total number of ways to delete a matching of size ω from H ∈ Bδ≥2n,m is(mω

)at most.

Let G0 ∈ Bδ≥2n,m−ω be fixed. By (16), if H ∈ Bδ≥2

n,m then

Q(H) = Pr(sample chooses H)

= 1

|Bδ≥2n,m−ω|

×∑

(G,H)∈E(�)

1

d�(G)

= 1+ O(ω2/n)

|Bδ≥2n,m−ω|

· d�(H)

d�(G0). (24)

From this relation, (22), and (23), it follows that

H, H ′ ∈ B implies

∣∣∣∣Q(H)

Q(H ′)− 1

∣∣∣∣ ≤ 3Aω log n

θn1/2, (25)

H ∈ Bδ≥2n,m \ B, H ′ ∈ B implies

Q(H)

Q(H ′)≤(

3c

θ

. (26)

Furthermore, invoking also ∑G∈Bδ≥2

n,m−ω

d�(G) =∑

H∈Bδ≥2n,m

d�(H),

and picking H ′ ∈ B, we obtain [see (16) and (22)]:

d�(H ′)d�(G0)

≤(

1+ 3Aω log n

θn1/2

) |Bδ≥2n,m−ω||B| . (27)

Combining (21), (24), (26), and (27), we get: For every K > 0,

Q(Bδ≥2n,m \ B) ≤ Q(H ′)

(3c

θ

· n−2K |B|

= 1+ O(ω2/n)

|Bδ≥2n,m−ω|

· d�(H ′)d�(G0)

(3c

θ

n−2K |B|

= O((3c/θ)ωn−2K

)≤ n−K . (28)

Page 15: Perfect matchings in random bipartite graphs with minimal degree at least 2

PERFECT MATCHINGS IN RANDOM BIPARTITE GRAPHS 333

Since Q(Bδ≥2n,m ) = 1, from (28) and (25) we deduce that, for H ∈ B,

∣∣∣∣Q(H)− 1

|Bδ≥2n,m |∣∣∣∣ ≤ 1

|Bδ≥2n,m | ×

4Aω log n

θn1/2× 1

1− n−K≤ 1

|Bδ≥2n,m | ×

5Aω log n

θn1/2. (29)

This means that on the graph set B the probability measure Q is almost uniform. It is worthrepeating that Q is induced by picking a random G ∈ Bδ≥2

n,m−ω, and adding to G a randommatching M of cardinality ω which is disjoint from E(G).

Now let PrM denote probability w.r.t. a graph chosen uniformly from Bδ≥2n,M and let µ∗(G)

denote the size of the largest matching in G. We want to prove, using the near uniformityof Q, that Prm(µ∗(G) = n)→ 1, if m = cn and c > 2.

From the previous part we know that there exists α = α(c) such that

Prm−ω(|N(S)| ≥ |S| : ∀ S ⊂ [n], 0 < |S| ≤ αn) ≥ 1− γ

n(30)

for some γ = γ (c). (Here S is a set rows, or a set of columns.)Now, given G ∈ Bδ≥2

n,m−ω such that µ∗(G) ∈ [n − t, n) and the event in (30), fix somematching M of size n − t and let x be a row vertex and y be a column vertex not coveredby M.

Suppose G does not contain a matching of size n − t + 1, i.e. µ∗(G) = n − t. Let A bethe set of row vertices reachable from x by an alternating path w.r.t. M, and let B, the setof column vertices, be defined analogously for y. (Of course, the sets A and B depend onthe choice of a maximum matching M. To achieve uniqueness, we assume that M is thelexicographically first among all maximum matchings.) Each such path is of even length,and we include x into A, and y into B, as corresponding to the paths of zero length. Theredoes not exist an edge connecting A and B, since otherwise we could use the resulting pathbetween x and y to get, in a standard way, a larger matching. (Therefore, if any of the ω edgesadded to G in sample join A to B, µ∗(G′) > µ∗(G) for the new graph G′.) Furthermore, forevery row vertex in A, all its column neighbors must be covered by M, since otherwise therewould exist an alternating path connecting x and an uncovered column vertex, and therewould exist a larger matching M ′. This implies that N(A) consists of all column verticeson the paths from x, so that |N(A)| = |A| − 1, as x is the only vertex in A not covered byM. Similarly, |N(B)| = |B| − 1. Then necessarily |A| ≥ αn, |B| ≥ αn. So if G is such thatthe event in (30) holds, then—conditioned on G—the probability that none of the ω addededges of sample join A to B is at most

(1− (αn− ω)2

n2

≤(

1− α2

2

≤ γ

n,

if we pick K in ω = �K log n� sufficiently large. Therefore, if H ∈ Bδ≥2n,m , then

Q(µ∗(H) < n− t + 1) ≤ Prm−ω(µ∗(G) < n− t)+ γ

n+ (1− α2/2)ω ≤ ξ(m − ω, t)+ 2γ

n,

ξ(m − ω, t) := Prm−ω(µ∗(G) < n− t) = 1− Prm−ω(µ∗(G) ≥ n− t).

So

Q({µ∗(H) < n− t + 1} ∧ {H ∈ B}) ≤ ξ(m − ω, t)+ 2γ

n

Page 16: Perfect matchings in random bipartite graphs with minimal degree at least 2

334 FRIEZE

and then, using (29),

Prm({µ∗(H) < n− t + 1} ∧ {H ∈ B}) ≤(

ξ(m − ω, t)+ 2γ

n

)(1+ 5Aω log n

θn1/2

)

and

Prm(µ∗(H) < n− t + 1) ≤(

ξ(m − ω, t)+ 2γ

n

)(1+ 5Aω log n

θn1/2

)+ n−K

≤ ξ(m − ω, t)+ 6Aω log n

θn1/2

[where n−K bounds Prm(H /∈ B)].

3.4. Proof of Lemma 3

We now go back to our analysis of the graph Gx,y.In our analysis below we will only need to consider graphs for which

v1 ≤b n.32 < n.66 ≤b vR, vC ≤ n, (31)

zR, zC ≤ 3c. (32)

We next look at the expected number of vertices of a given degree in Gx,y. We use the notationVk,X , X = R, C to denote the set of vertices of degree of degree k in X and vk,X = |Vk,X |.

Lemma 11. For vertices i ∈ R \ R1, j ∈ C \ C1, and 2 ≤ k, l ≤ log n,

Pr(dx(i) = k) = zkR

k!fR

(1+ O

((log v)2

vRzR

)), (33)

Pr(dx(i) = k, dy(j) = �) = zkR

k!fR

z�C

�!fC

(1+ O

((log v)2

vRzR+ (log v)2

vCzC

)). (34)

Proof. Since x, y are independent, it is enough to prove (33). Using Lemma 6,

Pr(dx(i) = k) =Pr(

Yi = k and∑

j �=i Yj = vR − v1,R − k)

Pr(

Yi = k and∑

j Yj = vR − v1,R

)

=zkR

fRk!1+O(k2(vRzR)−1)

(2π(vR−1)Var(Y))1/2

1+O((vRzR)−1)

(2πvRVar(Y))1/2

= zkR

k!fR

(1+ O

((log v)2

vRzR

)).

Page 17: Perfect matchings in random bipartite graphs with minimal degree at least 2

PERFECT MATCHINGS IN RANDOM BIPARTITE GRAPHS 335

Thus we can write that for 2 ≤ k ≤ log n,

E(vk,X) = vXzkX

k!fX+ O

((log v)2

zX

), (35)

E(vk,Rv�,C) = vRvCzkRz�

C

k!�!fRfC+ O

(v(log v)2

zR+ v(log v)2

zC

). (36)

We prove Lemma 3 by considering the following algorithm for finding a matching in a graphG. It is a technical modification of one described first by Karp and Sipser [13]. We applythe algorithm to the bipartite multigraph G = Gx,y, where (x, y) is chosen randomly fromBR,C(ν(m)), i.e., R = C = [n], v1 = 0, v = 2n, m = cn. In the light of Lemma 7, we needonly show that the following algorithm KSGREEDY finds a matching of size n − O(n.49)

with sufficiently high probability.

KSGREEDY

beginM ← ∅;while E(G) �= ∅ dobegin

A1: If G has vertices of degree 1 in R and C, choose one, x say, randomlyfrom R if vR ≤ vC and randomly from C otherwise.If v1,R = 0 or v1,C = 0 and v1 > 0 choose x randomly from the set withvertices of degree 1.Let e = {x, y} be the unique edge of G incident with x;

A2: Otherwise, (no vertices of degree 1) choosee = {x, y} ∈ E randomlyG ← G \ {x, y};M ← M ∪ {e}

end;Output Mend

The reason for choosing a vertex of R when vR ≤ vC in Step A1 is that we must try to ensurethat |vR − vC| does not grow too large. This is because |vR − vC| is a lower bound on thenumber of isolated vertices that will be created from now on. The choice of R in this casereduces |vR − vC|, in expectation.

KSGREEDY is defined on graphs. Formally, we need to define its action on pairs ofsequences x, y. As in [1], we use �’s to denote deleted edges; i.e., if xi = a, yi = b and thealgorithm requires the removal of edge (a, b), then we make the assignments xi = yi = �.Thus at a general step of the algorithm we are left with a pair of sequences x, y from([n] ∪ {�})m which satisfy xi = � iff yi = � for i ∈ [m]. The sets R, C are defined byR = {j ∈ [n] : ∃i such that xi = j} and C = {j ∈ [n] : ∃i such that yi = j}. Theedges of this extended definition of Gx,y are simply {(xi, yi) : xi �= �}. The next step inanalogy to the argument from [1] is relate the evolution of Gx,y to a Markov chain on ν.So let ν(0) = (0, 0, n, n, cn), and let ν(t), t ≥ 0 be the sequence of states seen duringKSGREEDY. The following lemma can be justified by arguments similar to those used forLemma 3 of [1].

Page 18: Perfect matchings in random bipartite graphs with minimal degree at least 2

336 FRIEZE

Lemma 12. The random sequence ν(t), t = 0, 1, 2, . . ., is a Markov chain.

Proof. See Appendix A.

We shall for convenience introduce a stopping time S, where

S ={

min{t > 0 : |ν(t)− ν(t − 1)| ≥ log n) if such t exist,

n otherwise.

Note thatPr(∃t : |ν(t)− ν(t − 1)| ≥ log n) = O(n−K) (37)

for any constant K > 0. This follows from (15).Note that t < S implies that

|z(t + 1)− z(t)| = O

(log n

v

). (38)

S is our generic stopping time for the first occurrence of one of some unlikely events. Aswe proceed, we will find other unlikely events and we will update S accordingly, with justa remark. Also, in the next section we work under the asumption that t < S.

3.4.1. One-Step Parameter Changes. We now consider the expected change in ν dueto one step of KSGREEDY.

Notice that

z ≤ 2µ− v1

v,

the fraction being the average degree of a heavy vertex. Now a simple calculation showsthat with probabilty 1− O(n−4)

no vertex subset of Bδ≥2n,m has average degree more than 3m/n. (39)

Given d, the property P = {G: no vertex subset of G has average degree more than d}is monotone increasing. Let two states ν and ν ′ be such that the transition probabilityp(ν ′|ν) is positive. Let G be chosen uniformly among all Gx,y such that ν(x, y) = ν.One step of KSGREEDY applied to G produces a subgraph G′ = Gx′ ,y′ . We know thatPr(ν(G′) = ν ′|G) = p(ν ′|ν) > 0, and that, conditioned on ν(G′) = ν ′, the graph G′ isdistributed unformly. Thus, for p(ν ′|ν) > 0, we can couple two random graphs G and G′,distributed uniformly on the set of all graphs with ν(x, y) = ν and ν(x, y) = ν ′, respectively,and such that G′ ⊂ G. This means that Pr(G(t) ∈ P) ≥ Pr(G(t + 1) ∈ P), t ≥ 0. Using(39)), we get: For every t ≥ 0, with probability 1− O(n−4)

no vertex subset of G(t) has average degree more than 3m/n.

Hence, with probability 1−O(n−3) the last event holds for all t simultaneously. So we willproceed assuming that

z ≤ 3c. (40)

Next letγ = γ (ν) = |vR − vC| + v1 and θv = γ

v.

Page 19: Perfect matchings in random bipartite graphs with minimal degree at least 2

PERFECT MATCHINGS IN RANDOM BIPARTITE GRAPHS 337

A simple estimation, under the assumption that θv = o(1), yields

∣∣∣∣2m − v1

v− m − v1,R

vR

∣∣∣∣ =∣∣∣∣m(vR − vC)

vvR− v1

v+ v1,R

vR

∣∣∣∣ ≤ 8cθv.

Let g(x) = x(ex−1)

ex−1−x . We know that g assumes values (µ − v1,X)/vX at zX , X = R, C, and

(2µ − v1)/v at z. Then calculations yield that g′(x) = x2ex+2ex−1−e2x

(ex−1−x)2 ∈ [2]. It followsimmediately that there exists a constant c1 such that

|zR − z|, |zC − z| ≤ c1θv.

Thus with f = f2(z) we can replace (35) and (36) by

E(vk,X) = vzk

2k!f + O

(vθv log v + (log v)2

z

), (41)

E(vk,Rv�,C) = v2zk+�

4k!�!f 2+ O

(v2θv log v + v(log v)2

z

). (42)

In the following we will abbreviate the error terms to

� = O

(θv log v + (log v)2

vz

).

In the analysis we will be able to concentrate on cases where

z ≥ n−.17, v = �(nz2), and γ = O(n.28(log n)8). (43)

Thus

� = o(z2) throughout. (44)

Now we go through the steps of the algorithm and compute the expected changes in theparameters.

Case 1: Deleting a vertex x of degree 1 and its neighbor y. Assume that x ∈ X andX = {R, C} \ X .

Let ν ′ refer to the state after one step.

Lemma 13. Assume that log n = O((vz)1/2) and the conditions (31) and (32) hold. Let Ibe the event that KSGREEDY removes an isolated edge in this step. Then qs:

(a) If I occurs, then

v′1,R = v1,R − 1, v′1,C = v1,C − 1, m′ = m − 1, v′R = vR, v′C = vC .

Page 20: Perfect matchings in random bipartite graphs with minimal degree at least 2

338 FRIEZE

(b) If I does not occur, then

E(v′1,X | ν) = v1,X − 1+ z2ez

(ez − 1)2+�,

v′1,X = v1,X , (45)

E(v′1 | ν) = v1 − 1+ z2ez

(ez − 1)2+�, (46)

E(v′X | ν) = vX − z2ez

(ez − 1)2+�, (47)

E(v′X | ν) = vX − 1+�, (48)

E(v′ | ν) = v − 1− z2ez

(ez − 1)2+�,

E(v′X − v′X | ν) = vX − vX + 1− z2ez

(ez − 1)2+�, (49)

E(µ′ | ν) = µ− 1− zez

ez − 1+�,

E(v0,X | ν) = O

(v1 + (log n)2

µ

),

E(v0,X | ν) = 0.

Here v0,X is the number of isolated vertices in X(= R, C) that are created by the stepand we will let v0 = v0,R + v0,C.

Furthermore, if |vX − vX | ≥ log n, then

vX > vX implies γ ′ = γ − v0, (50)

vX ≤ vX implies γ ′ = γ + 2(v′1 − v1)+ v0, (51)

vX ≤ vX implies E(γ ′ | ν) = γ − 2

(1− z2ez

(ez − 1)2

)+�. (52)

Proof. Assume that X = R. We begin by conditioning on the degree sequence of x, y,assuming that it meets the conditions (31) and (32). As we know, under these conditions,qs the maximum degree is at most log n, (15). So we proceed assuming that this maximumdegree condition holds. Now x, y are just mutually independent random permutations ofthe multisets

∏i∈R idx(i) and

∏j∈C jdy(j), respectively. Suppose we delete x ∈ R of degree 1

and its neighbor y ∈ C.If I occurs, i.e., y ∈ C1, then v′1,X = v1,X − 1, v′X = vX X = R, C and µ′ = µ − 1. We

note thatPr(y ∈ C1 | x, y) = v1,C

µ= �,

so this case only contributes to the error term. Note also that (50) and (51) hold in this case.Let I not occur, so that dy(y) ≥ 2. Now for 2 ≤ k ≤ log n we have

Pr(dy(y) = k | x, y) = kvk,C

µ. (53)

Page 21: Perfect matchings in random bipartite graphs with minimal degree at least 2

PERFECT MATCHINGS IN RANDOM BIPARTITE GRAPHS 339

Add the event {dy(y) = k} to the conditioning on x, y, denoting the resulting conditioningby H. Suppose y has ki,j neighbors (excluding x) of degree i that are joined to y by j edges.Then

µ′ = µ− k, (54)

v′1,C = v1,C , (55)

v′1,R = v1,R − 1− k1,1 +∑i≥2

ki,i−1, (56)

v′C = vC − 1, (57)

v′R = vR −∑i≥2

ki,i−1 −∑i≥2

ki,i, (58)

v′0,R =∑j≥1

kj, j, (59)

v′0,C = 0. (60)

Then we havev0 =∑i≥1

ki,i

andv′1 − v1 = −1− k1,1 +

∑i≥2

ki,i−1.

Assuming |vR − vC| > log n, we have

γ ′ − γ ={

v′1 − v1 − 1+∑i≥2 ki,i−1 +∑i≥2 ki,i, vR ≤ vC ,

v′1 − v1 + 1−∑i≥2 ki,i−1 −∑i≥2 ki,i, vR ≤ vC ,

and (50) and (51) follow.Note next that

E(k1,1 | H) = (k − 1)(v1,R − 1)

µ− 1. (61)

Further, for max(2, j) ≤ i ≤ log n,

E(ki,j | H) = vi,R

(k − 1

j

)(i)j(µ− 1− i)k−1−j

(µ− 1)k−1=

(k−1)ivi,Rµ

(1+ O

((log n)2

µ

)), j = 1,

O(

(log n)2j

µj−1

), j ≥ 2.

(62)

Thus from (53), (56), and (62) we get

E(v′1,R | x, y) = v1,R − 1− E(k1,1 | x, y)+ E

(∑i≥2

ki,i−1 | x, y

)

= v1,R − 1+∑k≥2

kvk,C

µ

(k − 1)2v2,R

µ+�.

Page 22: Perfect matchings in random bipartite graphs with minimal degree at least 2

340 FRIEZE

Removing the conditioning on vertex degrees, we get

E(v′1,R | ν) = v1,R − 1+∑k≥2

kzkCvC

k!fCµ· (k − 1) · z2

RvR

fRµ+�

= v1,R − 1+ z2Rz2

CvRvCezC

fRfCµ2+�

= v1,R − 1+ z4v2ez

4f 2µ2+�

= v1,R − 1+ z2ez

(ez − 1)2+�.

The remaining quantities can now be filled in the same way using (53) and (54)–(58).

E(v′1,C | ν) = v1,C +�,

E(v′R | ν) = vR − (E(v′1,R | ν)− (v1,R − 1))+�

= vR − z2ez

(ez − 1)2+�,

E(v′C | ν) = vC − 1+�,

E(v′0,R | ν) =∑k≥2

kE(vk,C | ν)

µ

∑j≥1

E(kj,j | ν)

=∑k≥2

kE(vk,C | ν)

µ

((k − 1)(v1,R − 1)

µ− 1+ O

((log n)2

µ

))

= O

(v1 + (log n)2

µ

),

v′0,C = 0,

E(µ′ | ν) = µ− 1−∑k≥2

kE(vk,C | ν)

µ− v1,C+�

= µ− 1−∑k≥2

kzkCvC

k!fCµ· (k − 1)+�

= µ− 1− z2CvCezC

µfC+�

= µ− 1− z2vez

2µf+�

= µ− 1− zez

ez − 1+�.

Finally note that since |v′ − v| = o(log n) qs, then we see that if |vC − vR| ≥ log n, thenv′C − v′R has the same sign as vC − vR, and we can use Eqs. (46)–(49) to get (52).

Page 23: Perfect matchings in random bipartite graphs with minimal degree at least 2

PERFECT MATCHINGS IN RANDOM BIPARTITE GRAPHS 341

Note that

1− z2ez

(ez − 1)2= 1−

(z

ez/2 − e−z/2

)2

= 1− 1∑

j≥0z2j

22j(2j+1)!

2

≥ min

{z2

48,

1

2

}(63)

(cf. Corollary 3 of [1]).So in Case 1, for ν(t) ∈ W1, we have

E(v′1 | ν) ≤ v1 −min

{z2

48,

1

2

}+� ≤ v1 −min

{z2

50,

1

2

}, (64)

on using (44).

Remark 2. In what follows there is a proliferation of large related constants, and the readermay find it difficult to check where these constants come from. We will adopt the conventionthat the subscript of such constants is defined by the equation number where they are firstused. In this spirit C64 = 50.

Furthermore, introduce M = 2µ− v1. Lemma 13 implies that

E(M ′ −M | ν)

E(v′ − v | ν)=

1+ 2zez

ez−1 + z2ez

(ez−1)2

1+ z2ez

(ez−1)2

+�. (65)

Case 2: Deleting a random edge when v1 = 0.

Lemma 14. Assume that log n = O((vz)1/2) and v1 = 0. Then

E(v′1,R | ν) = z2ez

(ez − 1)2+�,

E(v′1,C | ν) = z2ez

(ez − 1)2+�,

E(v′1 | ν) = 2z2ez

(ez − 1)2+�,

E(v′R | ν) = vR − 1− z2ez

(ez − 1)2+�,

E(v′C | ν) = vC − 1− z2ez

(ez − 1)2+�,

E(v′ | ν) = v − 2− 2z2ez

(ez − 1)2+�,

Page 24: Perfect matchings in random bipartite graphs with minimal degree at least 2

342 FRIEZE

E(v′R − v′C | ν) = vR − vC +�, (66)

E(µ′ | ν) = µ− 1− 2zez

ez − 1+�,

E(v0,R | ν) = O

(log2 n

µ

), (67)

E(v0,C | ν) = O

(log2 n

µ

). (68)

Furthermore,

Pr(v′1,R > 0 | ν) = z

ez − 1+� = 1− z

2+ O(z2)+�, (69)

Pr(v′1,R > 0 or v′1,C > 0 | ν) = 1−(

1− z

ez − 1

)2

+� = 1− z2

4+ O(z3)+�, (70)

Pr(v′1,R > 0 and v′1,C = 0 | ν) = z

ez − 1

(1− z

ez − 1

)+� = z

2+ O(z2)+�. (71)

Proof. We again condition on the degree sequence x, y. Choosing a random edge meanschoosing a random x from x, and then an x’s random neighbor y from y. Given kε2, � ≥ 2,let us add the event {dy(y) = k, dx(x) = �} to the conditioning on x, y, denoting the resultingconditioning by H. Besides the numbers {ki,j} (see the proof of Lemma 13), let x have �i,j

neighbors (excluding y) of degree i that are joined to x by j ≤ i edges. Then

µ′ = µ− k − �+ 1, (72)

v′1,C =∑i≥2

�i,i−1, (73)

v′1,R =∑i≥2

ki,i−1, (74)

v′C = vC − 1−∑i≥2

�i,i−1 −∑i≥2

�i,i, (75)

v′R = vR − 1−∑i≥2

ki,i−1 −∑i≥2

ki,i, (76)

v0,R =∑j≥1

kj,j, (77)

v0,C =∑j≥1

�j,j. (78)

Now (62) still holds and there is an analogous expression for the �i,j.The rest of proof of the lemma follows the same pattern as that for Lemma 13 and is left

to the reader, who should notice how close the claim is to two applications of the previouscase.

Observe that (65) holds in this case too. Note also that in both cases

E(v0 | ν) = O

(v1 + (log n)2

µ

). (79)

(The hidden constant here is denoted C79.)

Page 25: Perfect matchings in random bipartite graphs with minimal degree at least 2

PERFECT MATCHINGS IN RANDOM BIPARTITE GRAPHS 343

Remarkably, the equations involving v1, v′1, v, v′, µ, µ′ are up to the error terms, identicalto those given in Lemmas 6 and 7 of [1].

3.4.2. Multistep Parameter Changes. At this point let us try to summarize the(conditional) expected changes in the parameters v1, γ , γ1 as the algorithm proceeds. Here

γ1 = |vR − vC|.We need to show that v1 does not grow large as v1 determines the rate at which isolatedvertices are created. We also need to show that γ1 does not grow large so that we can forone thing approximate zR, zC by z.

Let us first consider the case where v1 > 0. There is a preferred side from which tochoose the vertex x of degree 1. This is the side with fewest vertices of degree 2 or more. v1

is well behaved. When v1 > 0 the expected change in v1 is negative, and so it is relativelyeasy to show that it is unlikely to get too large. γ1 is not so well behaved. It has a positiveexpected change when we are forced to choose x on the less preferred side. However, thisexpected increase is compensated by the expected decrease in v1. This is why we introducethe parameter γ which is much better behaved than γ1. Indeed, if x is chosen on the preferredside, then the expected change in γ is negative and if x is chosen on the less prefered sidethen the change is nonpositive (deterministically).

Now consider what happens if v1 = 0. There is only a small chance that v′1 = 0 too andthe expected increase in γ1 while v1 remains zero turns out to be negligible. If v′1 > 0, thenwe see a rise in γ (due to the rise in v1). One more step will show an expected decrease i γ1.The rise in v1 is handled by looking forward to the next time that v1 = 0, see Lemma 18.

The main analysis of the chain (ν(t)) is restricted to the times when ν(t) ∈ W0 orν(t) ∈ W1, where for σ = 0, 1,

Wσ = {ν : z ≥ n−αi , v ≥ A80nz2, v1 ≤ B80n2ασ (log n)3, γ ≤ C80n2ασ (log n)4}. (80)

Here α0 = .14, α1 = .17, and A80, B80, C80 are large constants and W0 ⊆ W1.Note that (43) holds for ν(t) ∈ W1.For σ = 0, 1 we introduce stopping times

Tσ ={

min{t ≤ S : ν(τ ) /∈ Wσ },n if no such t exist.

Now it follows from (70) that we can find K > 0 such that with probability 1 − O(n−5)

there is no sequence t, t+1, . . . , t+K log n < n such that v1(τ ) = 0 for t ∈ [t, t+K log n].So we introduce another stopping time

S1 ={

min{t ≤ S : v1(τ ) = 0, τ ∈ [t − K log n, t]},n if no such t exist.

Now S < S1 with probability 1− O(n−5) and so we replace S by

S := min{S, S1}.We will allow T0, T1 to use this new definition of S in their definition.

Page 26: Perfect matchings in random bipartite graphs with minimal degree at least 2

344 FRIEZE

Lemma 15. Let t be such that

ν(t) ∈ W1 and v1(t) = 0

andγ1(t) = vC(t)− vR(t)� (log n)3.

Let

t′ ={

min{t < τ ≤ T1 : v1(τ ) > 0} if such τ exist,

T1 otherwise,

so that v1(τ ) = 0 for t ≤ τ < t′.Then

E(γ1(t′ + 1)− γ1(t) | ν(t)) ≤ −β(t),

where

β(t) = −min

{z(t)2

C81, C81a

}, (81)

where C81 = 2C64 and C81a depends on c.

Proof. We first observe that either S1 ≤ t + K log n or t′ < t + K log n and then vC(τ )−vR(τ )� (log n)3 for t ≤ τ ≤ t′ + 1.

We next assemble the following facts, that hold for 0 < τ − t ≤ K log n.

Claim 1.

Pr(t′ = τ | t′ > τ − 1, ν(t)) = 1−(

1− z

ez − 1

)2

+�def= π1 +�,

where we can take z = z(t).We write

Pr(t′ = τ | t′ > τ − 1, ν(t))

=∑ν∈S

Pr(t′ = τ | t′ > τ − 1, ν(τ − 1) = ν)Pr(ν(τ − 1) = ν | ν(t)), (82)

where S = {ν : |ν − ν(t)| ≤ K(log n)2}.Now if ν ∈ S, then

Pr(t′ = τ | t′ > τ − 1, ν(τ )) = 1−(

1− z

ez − 1

)2

+�, (83)

which follows directly from (70), since we are assuming that v1(τ ) = 0 and since |z(τ )−z(t)| = O

((log n)2

v

)[see (38)] and this quantity is o(z3). The claim follows from (82) and (83).

Claim 2.µ2 = E(γ1(τ + 1)− γ1(τ )) | t′ > τ , ν(t))) = �.

This again follows from (66) since we are again assuming that v1(τ − 1) = 0 and we knowthat z(τ ) and z(t) are very close.

Page 27: Perfect matchings in random bipartite graphs with minimal degree at least 2

PERFECT MATCHINGS IN RANDOM BIPARTITE GRAPHS 345

Claim 3.

Pr(v1,R(t′) > 0 | ν(t)) =

zez−1

1− (1− zez−1

)2 +�

def= π3 +�

= 1− z

2+ O(z2).

This follows directly from (69) and (70) and the fact that z(t′) and z(t) are very close.

Claim 4.

E(γ1(t′ + 1)− γ1(t

′) | v1,R(t′) > 0, ν(t)) = −1+ z2ez

(ez − 1)2+�

def= µ4 +�.

This follows from (49) with X = R, since vC(t′)− vR(t′)� (log n)3.

Claim 5.

E(γ1(t′ + 1)− γ1(t

′) | v1,R(t′) = 0, ν(t)) = 1− z2ez

(ez − 1)2+� = −µ4 +�.

This follows from (49) with X = C, since vC(t′)− vR(t′)� (log n)3.

Putting these facts together, we get

E(γ1(t′ + 1)− γ1(t) | ν(t)) = O(� log n)+ π3µ4 + (1− π3)(−µ4)+�. (84)

Explanation of (84): The first term accounts for the expected increase in γ1 between tand t′. Indeed from Claim 2 we have

E(γ1(t′)− γ )1(t) | ν(t)) ≤

t+K log n∑τ=t

E(|γ1(τ + 1)− γ1(τ )1t′>τ | ν(t))

= O(� log n). (85)

The term π3µ4 accounts for the expected increase γ1(t′ + 1)− γ1(t′) when v1,R(t′) > 0 (thisis negative) and the term (1−π3)(−µ4) accounts for the expected increase γ1(t′+1)−γ1(t′)when v1,R(t′) = 0.

Writing p = zez−1 < 1, we see that π3 = 1

2−p > 12 ,

E(γ1(t′ + 1)− γ1(t) | ν(t)) = (1− 2π3)µ4 + O(� log n) ≤ −min

{z2

2C64, C86

}(86)

for some C86 > 0 which depends on c. The lemma follows.

We put these ideas to work in the next few sections.

Page 28: Perfect matchings in random bipartite graphs with minimal degree at least 2

346 FRIEZE

3.4.3. Number of Vertices Left Isolated. Let ασ , Wσ , Tσ , i = 0, 1 be as in (80).The analysis is in two parts, t = 1, . . . , T0 and t = T0+ 1 . . . T1. The reason for this split

will not become apparant until the middle of proof of Lemma 19, and so the reader willhave to take the need for a split on trust.

Note that if ν ∈ W1 then vz2 ≥ A80nz4 � (log v)2 and so the conclusions of Lemmas 13and 14 are valid.

Fix σ = 0 or 1 Now let Xt , t = 0, 1, . . . , Tσ − 1 be the number of isolated verticescreated at time t and let Xt = 0 for t ≥ Tσ . Let also set ν(t) ≡ ν(Tσ − 1) for t ≥ Tσ . Thenthe random variables Xt satisfy

Xt ≥ 0; Xt ≤ log n; E(Xt | ·) ≤ B80C79n2ασ (log n)3

µ(t),

where | · denotes conditioning with respect to {ν(τ )}0≤τ<t , and C79 is the hidden constantin (79). Putting λ = (log n)−2 and using λXt ≤ (log n)−1, ex ≤ 1+ 1.5x, x ↓ 0, we see that

E(eλXt | ·) ≤ 1+ 1.5λE(Xt | ·) ≤ e1.5λE(Xt |·).

Therefore, introducing X = ∑t≥0 Xt , and using the bound for E(Xt | ·) together with∑t E(m−1(t)) ≤ log n, we have

E(eλX) ≤ exp(2B80C79n2ασ (log n)2).

Applying the Markov inequality, we obtain

Pr(X ≥ 3B80C79n2ασ (log n)4) ≤ e−3B80C79n2ασ (log n)4λEeλX ≤ e−B80C79n2ασ (log n)3. (87)

This proves:

Lemma 16.

At most C88n2ασ (log n)4 isolated vertices are created up to time Tσ , qs, (88)

where C88 = 3B80C79.

Our next task is to get a good estimate of ν(Tσ ) at the stopping time Tσ .

Lemma 17. With probability 1− O(n−2)

v1(t) ≤ C89n2ασ (log n)3 ∀t ∈ [1, Tσ ], (89)

where C89 = 8C64 (and hence we can take B80 = 8C64).

Proof. Let �σ = C89n2ασ (log n)3. First of all, by (15), qs the conditions v1(t − 1) =0, v1(t) > 0 and t ≥ 1 imply that v1(t) ≤ log n. In view of this, for t1 < t2, define the event

E1(t1, t2) = {v1(t2)− v1(t1) > C89n2ασ (log n)3} ∩ {∀ t ∈ [t1, t2), v1(t) > 0}.

Page 29: Perfect matchings in random bipartite graphs with minimal degree at least 2

PERFECT MATCHINGS IN RANDOM BIPARTITE GRAPHS 347

Clearly then it suffices to prove that

Pr

t1<t2≤Tσ

E1(t1, t2)

= O(n−2).

Define

Yt ={

v1(t + 1)− v1(t) if v1(t) > 0 and t < Tσ ,

−β90 otherwise,

where

β90 = 1

C64n2ασ. (90)

We notice upfront that, for t1 < t2 ≤ Tσ , and v1(t) > 0 for t ∈ [t1, t2),

v1(t2)− v1(t1) =t2−1∑t=t1

Yt .

Now, by the definition of T , |Yt| ≤ log n for all t. Furthermore, if λ = β902(log n)2 , then

E(eλYu | ν(τ ), τ < t + u) ≤ 1+ E(λYu)+∑i≥2

λi(log n)i

i!≤ 1− λβ90 + λ2(log n)2

≤ 1. (91)

For t < Tσ , (91) follows from the definition of Yt , β90, (64), and the definition of thestopping time Tσ . For t ≥ Tσ , (91) holds trivially. Thus, the occurrence of the eventE1(t1, t2) ∩ {t2 ≤ Tσ } implies

t2∑t=t1

Yt > �σ . (92)

Now from (91),

Pr

t2∑

t=t1

Yt > �σ | ν(τ ), τ ≤ t1

≤ e−λ�σ E

t2∏

t=t1

eλYt | ν(τ ), τ ≤ t1

≤ e−λ�σ . (93)

Since the number of pairs (t1, t2) is(n

2

) = O(n2), the statement follows.

To account for the unlikely failure of (89), we introduce a stopping time

S2 ={

min{t ≤ T1 : v1(t) > C89n2ασ (log n)3},n if no such t exist,

and letS := min{S, S2}.

Now to deal with γ .

Page 30: Perfect matchings in random bipartite graphs with minimal degree at least 2

348 FRIEZE

Lemma 18. With probability 1− O(n−2)

γ (t) ≤ 2C88n2ασ (log n)4 ∀t ∈ [1, Tσ ]. (94)

(Thus we can take C80 = 2C88).

Proof. For t0 < t2 let

E2(t0, t2) = {γ (t2)− γ (t0) > 2C88n2ασ (log n)4}and also for t0 < t1 < t2 let

E3(t0, t1, t2) = {γ (t1)− γ (t0) < C88n2ασ (log n)4 and

γ (t)− γ (t0) ≥ C88n2ασ (log n)4, t1 < t < t2 and γ (t2)− γ (t0) > 2C88n2ασ (log n)4}.Note that if t2 < Tσ and E2(t0, t2) occurs then E3(t0, t1, t2) occurs for some t1 > t0.

Pr

0≤t0<t1<t2≤Tσ

E3(t0, t1, t2)

= O(n−2). (95)

Fix t2 > t1 > t0. If E3(t0, t1, t2) occurs for some t0 ≤ Tσ , then the sign of vR − vC doesnot change between t1 and t2. [If vR − vC drops to zero, then we will have γ = v1 ≤C89n2ασ (log n)3.] We will assume that vR(t1)− vC(t1) < 0 and introduce the stopping time

tI ={

min{t1 ≤ t ≤ t2 : vR(t) ≥ vC(t),

t2 if no such t exist.

We define a sequence of times τ0 = t1 ≤ τ1 < · · · < τr ≤ τr+1 = tI as fol-lows: τ1 = min{t1 ≤ τ < min{t2, T3} : v1(τ ) = 0}. If such a τ does not exist,then we take τ1 = tI . Assume that we have defined τi with v1(τi) = 0. Defineτ ′i = 1+min{τi < τ ≤ tI : v1(τ ) > 0}. If τ ′i does not exist then r = i. If τ ′i does exist,then let τ ∗i = min{τi ≤ τ ≤ tI : v1(τ ) = 0}. If τ ∗i exists, then τi+1 = τ ∗i , otherwise r = i.We now bound the change in γ over these intervals.

(a) We first consider γ (τ1)−γ (τ0). This is zero if τ1 = τ0 and so assume that v1(t0) > 0.If v1,R(t1) = 0, then (45) implies that v1,R(τ ) = 0 for t0 ≤ τ ≤ tI} and then (50) implies thatγ (τ1) ≤ γ (τ0).

So assume that v1,R(t1) > 0. For 1 ≤ u ≤ n define

Yu ={

γ1(t1 + u)− γ1(t1 + u− 1), t0 + u ≤ τ1,

−β97, otherwise,(96)

where

β97 = 1

C81n2ασ. (97)

Now we have |Yu| ≤ log n and (81) implies that

E(Yu | ν(τ ), τ < t1 + u) ≤ −β97.

Page 31: Perfect matchings in random bipartite graphs with minimal degree at least 2

PERFECT MATCHINGS IN RANDOM BIPARTITE GRAPHS 349

So with λ = β

2 log n we can argue as in (91) that

E(eλYu | ν(τ ), τ < t1 + u) ≤ 1.

We then argue as in (93) that for all 0 < T ≤ n,

Pr

(T∑

u=1

Yu ≥ 10(log n)3β−197

)≤ n−5.

It follows thatPr(γ (τ1)− γ (τ0) ≥ 10(log n)3β−1

97 ) ≤ n−4. (98)

(b) We now consider the random variables γ (τi+1) − γ (τi) for i ≥ 1. Fix 1 ≤ i ≤ r.(When i = r parts of the argument may have to be omitted or modified in a trivial way). Itfollows from Lemma 15 that

E(γ1(τ′i )− γ1(τi) | ν(τ ), τ ≤ τi)) ≤ −β99 = − 1

C81n2ασ. (99)

Suppose that v1,R(τ′i ) = k and v1,C(τ ′i ) = �. Thus

γ (τ ′i )− γ (τi) = γ1(τ′i )− γ1(τi)+ k + �. (100)

Next let τ ′′i = min{τ ≥ τ ′i : v1,R = 0}. It follows from (51) that

−2k − 2� ≤ γ (τ ′′i )− γ (τ ′i ) ≤ −2k + Zi,

where

Zi =τ ′′i∑

τ=τ ′i

v0(τ ).

This is because vR < vC and v1,R(τ′′i ) = 0 and v1,C(τ ′′i ) ≤ v1,C(τ ′i ) (by (45)). (The −2k in

the lower bound accounts for the possibility of Case a in Lemma 13).Now (50) implies that

γ (τi+1) = γ (τ ′′i )− Z ′i ,

where

Z ′i =τi+1∑τ=τ ′′i

v0(τ ).

So if�i = γ (τi+1)− γ (τi)− Zi + Z ′i ,

then�i ≤ γ1(τ

′i )− γ1(τi)+ �− k and |�i| ≤ 5 log n.

SoE(�i | ν(τi)) ≤ −β99 +� ≤ −β99/2.

Page 32: Perfect matchings in random bipartite graphs with minimal degree at least 2

350 FRIEZE

Putting λ = β9925(log n)2 we can argue as in (91) that E(eλ�i | ν(τi)) ≤ 1. Putting �i = 0 for

i = r + 2, . . . , n we see that

Pr

(r+1∑i=1

�i ≥ 125(log n)3β−199

)= Pr

(n∑

i=1

�i ≥ 125(log n)3β−199

)≤ e−125λ(log n)3β−1

99 = n−5.

(101)But

γ (τr+1)− γ (τ1) =r+1∑i=1

�i +r+1∑i=1

(Zi − Z ′i ) ≤r+1∑i=1

�i +r+1∑i=1

Zi

and (88) implies that∑r+1

i=1 Zi ≤ C88n2ασ (log n)4qs. Therefore,

Pr(γ (τr+1)− γ (τ1) ≥ 2C88n2ασ (log n)4) = O(n−5). (102)

The lemma follows from (98) and (102).

We now check the second condition of Wσ , v ≥ A80nz2. Going back to (65), we are leftto consider the differential equation,

dM

dv=

1+ vz2ez

mf + v2z4ez

4m2f 2

1+ v2z4ez

4m2f 2

.

The solution of this was obtained in [1]: Here z∗ is the value of z at t = 0 and M∗ = 2m∗ =2cn.

M = M∗(ez − 1)z

z∗(ez∗ − 1)exp

{−∫ z∗

z

ξeξ

eξ (1+ ξ)− 1dξ

}. (103)

Then (up to a v1 error term)

v = 2mf (z)

z(ez − 1)

= 2m∗f (z)z∗(ez∗ − 1)

exp

{−∫ z∗

z

ξeξ

eξ (1+ ξ)− 1dξ

}. (104)

So we define

J1 = v

nf (z)exp

{∫ z∗

z

ξeξ

eξ (1+ ξ)− 1dξ

}

and

J2 = m

nz(ez − 1)exp

{∫ z∗

z

ξeξ

eξ (1+ ξ)− 1dξ

}.

Lemma 19. Let T−1 = 0. Then, for σ = 0, 1,

Pr(

maxτ∈[Tσ−1,Tσ ]

| Ji(ν(τ ))− Ji(ν(Tσ−1))| > n−ασ /4

)= O(n−4), i = 1, 2.

Proof. Now fix i = 1 or 2 and let J(t) = Ji(ν(t)). Let now K = (log n)2 and defineQ(t) = exp{K(J(t)− J(Tσ−1))} for Tσ−1) ≤ t < Tσ . Let Q(t) = 0 for t ≥ Tσ .

Page 33: Perfect matchings in random bipartite graphs with minimal degree at least 2

PERFECT MATCHINGS IN RANDOM BIPARTITE GRAPHS 351

We consider only i = 1 since the other case is very similar. For t > Tσ , we obviouslyhave Q(t) = Q(t − 1) = 0. For Tσ−1) ≤ t ≤ Tσ we can write

E(Q(t) | {ν(s)}s<t) ≤ Q(t−1)E{1|ν(t)−ν(t−1)|≤log n exp[K(J(t)−J(t−1))]|ν(t−1)}. (105)

Since ν(t − 1) ∈ Wσ , each of m(t − 1) and v(t − 1) is of order n1−2ασ at least. The sameholds then for ν(t) ∈ B(ν(t − 1), log n) = {ν : |ν − ν(t − 1)| ≤ log n}. Consequently,v(t)z(t) is of order n1−3ασ at least. Moreover, it can be easily verified that, uniformly forsuch ν and i = 1, 2, x, y = v, m,

∂J

∂x= O

(1

vz

), (106)

∂2J

∂x∂y= O

(1

v2z2

). (107)

Let ν = (v, m), i.e., drop all other parameters. Assuming ν(t) ∈ B(ν(t − 1), log n),expanding the exponential function, and viewing J(t) as a function of v, m only,

exp{K(J(t)− J(t − 1))} =[

1+ K∇J(t)T (ν(t)− ν(t − 1))+ O

(K2(log n)2

(vz)2

)],

(108)since

K log n = o(vz). (109)

Consequently, Eq. (105) becomes

E(Q(t)|{ν(s)}s<t) ≤ Q(t − 1){1+ K∇J(t)T E[ν(t)− ν(t − 1)|ν(t − 1)]}

+ O

(Q(t − 1)K2(log n)2

(vz)2

). (110)

Putting

F(ν) =[

1+ vz2ez

mf + v2z4ez

4m2f 2

1+ v2z4ez

4m2f 2

]

and using Lemmas 13 and 14,

∇J(t)T E[ν(t)− ν(t − 1)|ν(t − 1)] = ∇J(t − 1)T[F(ν(t − 1))+�

]= O(‖∇J(t − 1)‖�)

= O

(log n

vz�

). (111)

[∇J(ν) ⊥ F(ν) since J(ν) is constant along the trajectory of dν/dt = F(ν)!]Therefore, for t − 1 < Tσ and hence for all t ≥ Tσ−1,

E(Q(t) | {ν(s)}s<t) ≤ Q(t−1)

(1+ O

(K(log n)�

(vz)

))= Q(t−1)(1+O

(n7ασ−2(log n)4

).

So for any positive ε, the random sequence

{R(t)} := { (1+ n7α0+ε−2)−t

Q(t)}

is a supermartingale.

Page 34: Perfect matchings in random bipartite graphs with minimal degree at least 2

352 FRIEZE

Introduce a stopping time

T ′σ ={

min{Tσ−1 ≤ t < Tσ : J(t)− J(Tσ−1) > n−ασ /4/2}, if such t exist,

Tσ , otherwise.

For the reminder of the proof of the lemma, we take σ = 0. We will continue to use thesubscript σ because we will return and finish the case σ = 1 later. Let nσ = Tσ − Tσ−1.

Now, applying the Optional Sampling Theorem (Durrett [7]) to the supermartingale{R(t)} and the stopping time T ′

0 , we get

E[Q(T ′σ )] ≤ E(1+ n7ασ+ε−2)nσ · E[Q(Tσ−1)] (112)

≤ E(1+ n7ασ+ε−2)n · E[Q(Tσ−1)]= (1+ n7ασ+ε−2)n

= 1+ o(1), as n →∞, (113)

for ε sufficiently small.

Remark 3. Note that in the case σ = 1 we have 7α1 − 2 > −1 and we cannot argue that(1 + n7α1+ε−2)n = 1 + o(1). We will have to argue instead that whp n1 = O(n1−2α0) andthen all we need is that 7α1 − 2 < 2α0 − 1.

SinceE[Q(T ′

σ )] ≥ enασ /4/2 · Pr{T ′σ < Tσ },

we have

Pr{

maxTσ−1≤t<Tσ

[J(t)− J(Tσ−1)] > n−ασ /4

2

}= Pr{T ′

σ < Tσ } = O(e−nασ /4/2).

Analogously,

Pr{

minTσ−1≤t<Tσ

[J(t)− J(Tσ−1)] < −n−ασ /4

2

}= O(e−nασ /4/2).

So qs

maxTσ−1≤t<Tσ

|J(t)− J(Tσ−1)| ≤ n−ασ /4

2.

It only remains to note Eq. (37).This completes the proof of the lemma for σ = 0.

At time T0 either (i) z ≤ n−α0 , (ii) z > 3c, (iii) v < A80nz2, or (iv) v1 > B80n2α0(log n)3,or (v) γ > C80n2α0(log n)4.

Possibility (ii) is ruled out by (39). (104) and Lemma 19 show that for t ∈ [0, T0],v(t) ≈ A2nz2, where

A = m∗

nz∗(ez∗ − 1)exp

{−∫ z∗

0

ξeξ

eξ (1+ ξ)− 1dξ

}.

Page 35: Perfect matchings in random bipartite graphs with minimal degree at least 2

PERFECT MATCHINGS IN RANDOM BIPARTITE GRAPHS 353

This rules out possibility (iii) if we take

A80 = A

2. (114)

Possibility (iv) is ruled out by Lemma 17, and possibility (v) is ruled out by Lemma 18. Sowe can assume that at time T0,

z ≈ n−α0 , (115)

v ≈ Anz2, (116)

m ≈ Anz2, (117)

z(T0)− z(T0 − 1) = O

((log n)

v

). (118)

is the justification for (115), m ≈ v comes from z = o(1) and

2 ≤ 2m − v1

v= z(ez − 1)

f (z)= 2(

1+ z

6+ O(z2)

). (119)

So if we condition on (115)–(117), then we can go back to the proof of Lemma 19 atEq. (112) and take n1 = O(n1−2α0) and now find that (113) holds. We have fulfilled thecondition laid out in Remark 3.4.3 and finish the proof of the lemma for the case σ = 1.

We can therefore argue that at time T1, (115), (116), (115) hold with α0 replaced by α1.The number of isolated vertices that are created from T1 onwards is bounded by the sumof (i)∑

k≥3 kvk(T1) and (ii) the number κ1 of components of G(T1) which are paths of oddlength. Now qs

∑k≥3

kvk(T1) ≈ v(T1)z(T1)/3 = O(n1−3α−1) = O(n.49).

The number of paths of odd length is bounded by the number of vertices of degree 1 whichis O(n2α1+o(1)).

This completes the proof of Lemma 3.

APPENDIX A: PROOF OF LEMMA 12

For ν = (v1,R, v1,C , vR, vC , m) let Zν = {(x, y) ∈ ([n] ∪ {�})2cn with m pairs xi, yi �= � etc.

Lemma 20. Each (x′, y′)∈Zν′ arises by a transition of KSGREEDY from the same numberD(ν, ν ′) of (x′, y′) ∈ Zν .

Proof.

Case 1: v1 > 0 and an R-vertex x of degree 1 is selected and its neighbor y is of degree atleast 2.

Page 36: Perfect matchings in random bipartite graphs with minimal degree at least 2

354 FRIEZE

Let y be the C-neighbor of x in Gx,y and suppose y has ki,j neighbors of degree i that areincident j ≤ i times with y (multiple edges). Then

m′ = m − 1−∑

i,j

jki,j,

v′1,C = v1,C ,

v′1,R = v1,R − 1− k1,1 +∑i≥2

ki,i−1,

v′C = vC − 1,

v′R = vR −∑i≥2

ki,i−1 −∑i≥2

ki,i.

Given x′, y′, our choices for x, y are determined as follows: Observe that always the numberof choices depends only on ν, ν ′. Also let nR = n − v′1,R − v′R, nC = n − v′1,C − v′C be thenumber of vertex labels missing from x′, y′. Each quantity below should be multiplied bythe number of choices of where to replace �’s by vertex labels.

• Choose x, y in nRnC ways.• Choose the sequence ki,j such that the above equations hold.• Choose the labels for the

∑i ki,i new isolated R vertices in

( nR−1k1,1,k2,2,...

)ways.

• Choose the labels for the∑

i≥2 ki,i−1 vertices which become degree 1 in( v′1,R

k2,1,k3,2,...

)ways.

• Now let

µ =∑

i,j

jki,j −∑i≥1

ki,i −∑i≥2

ki,i−1 = m − m′ − 1−∑i≥1

iki,i −∑i≥2

(i − 1)ki,i−1

be the number of unaccounted for edges. These edges join y to vertices which remainof degree at least 2. Assign labels to these edges in (v′R)

µ ways.

Case 2: v1 > 0 and an R-vertex x of degree 1 is selected and its neighbor y is of degree 1.

Here there are nRnC times the number of choices of where to replace �’s by vertex labels.

Case 3: v1 = 0

We add the parameters �i,j for the number of neighbors of x, other than y, which are ofdegree i and are incident j ≤ i times with x. We then have

m′ = m − 1−∑

i,j

jki,j,

v′1,C =∑i≥2

�i,i−1,

v′1,R =∑i≥2

ki,i−1,

Page 37: Perfect matchings in random bipartite graphs with minimal degree at least 2

PERFECT MATCHINGS IN RANDOM BIPARTITE GRAPHS 355

v′C = vC −∑i≥2

�i,i−1 −∑i≥2

�i,i,

v′R = vR −∑i≥2

ki,i−1 −∑i≥2

ki,i.

The number of choices for x, y can now be enumerated:

• Choose x, y in nRnC ways.• Choose the sequences ki,j, �i,j such that the above equations hold.• Choose the labels for the

∑i ki,i new isolated R vertices in

( nR−1k1,1,k2,2,...

)ways.

• Choose the labels for the∑

i �i,i new isolated C vertices in( nC−1

k1,1,k2,2,...

)ways.

• Choose the labels for the∑

i≥2 ki,i−1 R vertices which become degree 1 in( v′1,R

k2,1,k3,2,...

)ways.

• Choose the labels for the∑

i≥2 �i,i−1 C vertices which become degree 1 in( v′1,C

k2,1,k3,2,...

)ways.

• Now let

µ = m − m′ − ρ −∑i≥2

iki,i −∑i≥2

(i − 1)ki,i−1 −∑i≥2

i�i,i −∑i≥2

(i − 1)�i,i−1

be the number of unaccounted for edges. Let µR = ∑j≤i−2 jki,j and µC = µ − µR.Assign labels to these edges in (v′R)

µR(v′C)µC ways.

The rest of the proof of Lemma 12 is essentially identical to that of Lemma 3 of [1].

APPENDIX B: LOCAL LIMIT THEOREM

Lemma 21. If∑

i Var(Yi)→∞ and the ci are uniformly bounded, then

Pr

(ν1∑

i=1

Yi = µ+ a

)= 1+ O(a2(ν1ρ1)

−1)

(2π∑

i Var(Yi))1/2,

if a2(ν1ρ1)−1 → 0. An analogous formula holds for Pr

(∑j Zj = µ+ a

).

Proof. Let W =∑� Y�. As usual, we start with the inversion formula

Pr (W = τ) = 1

∫ π

−π

e−iτxE(eix∑

� Y�)

dx

= 1

∫ π

−π

e−iτx

ν1∏�=1

E(eixY� )v dx, (120)

where τ = µ+ a. Let

�1 =∑

ρ1

c� + 1= �(ν1ρ1)

Page 38: Perfect matchings in random bipartite graphs with minimal degree at least 2

356 FRIEZE

and consider first |x| ≥ �−5/121 . Using an inequality (Pittel [16]),

|ft(z)| ≤ ft(|z|) exp

(−|z| − Re z

t + 1

), (121)

we estimate

1

∫|x|≥�

−5/121

∣∣∣∣∣e−iτx

ν1∏�=1

(fc� (e

ixρ1)

fc� (ρ1)

)∣∣∣∣∣ dx ≤ 1

∫|x|≥�

−5/121

ν1∏�=1

eρ1(cos x−1)/(c�+1) dx

≤ e−�1/61 /3. (122)

For |x| ≤ �−5/121 , putting η = ρ1eix and using

∑� ρ1f ′c� (ρ1)/fc� (ρ1) = µ, d/dx = iηd/dη,

we expand as a Taylor series around x = 0 to obtain

−iτx +∑

log

(fc� (e

ixρ1)

f c�(ρ1)

)= −iax − x2

2

∑�

D(

ηf ′c� (η)

fc� (η)

)∣∣∣∣η=ρ1

− ix3

3!∑

D2

(ηf ′c� (η)

fc� (η)

)∣∣∣∣∣η=ρ1

+ O

x4∑

D3

(ηf ′c� (η)

fc� (η)

)∣∣∣∣∣η=η

; (123)

here η = ρ1eix, with x being between 0 and x, and D = η(d/dη). Now, the coefficients ofx2/2, x3/3! and x4 are Var(W), O (Var(W)) , O (Var(W)), respectively, and Var(W) is oforder �1. So the second and the third terms in (123) are o(1) uniformly for |x| ≤ �

−5/121 .

Therefore,1

∫|x|≤�

−5/121

=∫

1+∫

2+∫

3, (124)

where ∫1= 1

∫|x|≤�

−5/121

e−iax−Var(W)x2/2 dx

= 1√2πVar(W)

+ O

(a2 + 1

�3/21

), (125)

∫2= O

(∑�

D2

(ρ1f ′c� (ρ1)

f (ρ1)

)∫|x|≤�

−5/121

x3e−Var(W)x2/2 dx

)

= O

(�1

∫|x|≥�

−5/121

|x|3e−Var(W)x2/2 dx

)

= O(e−α�1/61 ), (126)

(α > 0 is an absolute constant), and

Page 39: Perfect matchings in random bipartite graphs with minimal degree at least 2

PERFECT MATCHINGS IN RANDOM BIPARTITE GRAPHS 357

∫3= O

[�1

∫|x|≤�

−5/121

x4e−Var(W)x2/2 dx

]

= O

(1

�3/21

). (127)

Using (120)–(127), we arrive at

Pr (W = τ) = 1√2πvVar(W)

×[

1+ O

(a2 + 1

�1

)].

APPENDIX C: CONCENTRATION OF W

We need to prove the following result.Let S be a set with |S| = N . Let � be the set of N ! permutations of S. Let ω be chosen

uniformly from �.Let Z = Z(ω) be such that |Z(ω) − Z(ω′)| ≤ 1 when ω′ is obtained from ω by

interchanging two elements of the permutation.

Lemma 22.Pr(|Z − EZ| ≥ t) ≤ 2e−2t2/N .

Proof. For a fixed sequence permutation (x1, x2, . . . , xn) and 0 ≤ i ≤ N , let

Zi(x1, x2, . . . , xi) = E(Z | ωj = xj, 1 ≤ j ≤ i).

Clearly the sequence Z0, Z1, . . . , ZN is a martingale. To apply the Azuma-Hoeffdinginequality, we need to show that

|Zi(x1, x2, . . . , xi)− Zi(x1, x2, . . . , xi−1, x′i)| ≤ 1 (128)

for all i-tuples (x1, x2, . . . , xi) with distinct components, and x′i �= x1, . . . , xi−1. [Indeed, theinequality (128) readily implies that |Zi+1 − Zi| ≤ 1.]

Consider�1 = {ω ∈ � : ωj = xj, 1 ≤ j ≤ i}

and�′

1 = {ω ∈ � : ωj = xj, 1 ≤ j ≤ i − 1, ωi = x′i}and the map f : �1 → �′

1 defined as follows. If ω = x1x2 · · · xi−1xiyi+1 · · · yN and yj = x′i ,then f (ω) = x1x2 · · · xi−1x′iyi+1 · · · yj−1xiyj+1 · · · yN . Observe that f is a bijection and that

∣∣Zi(x1, x2, . . . , xi)− Zi(x1, x2, . . . , x′i)∣∣ =∣∣∣∣∣∑

yi+1,...,yN(Z(ω)− Z(f (ω)))

(N − i)!

∣∣∣∣∣ ≤ 1.

Page 40: Perfect matchings in random bipartite graphs with minimal degree at least 2

358 FRIEZE

ACKNOWLEDGMENT

I wish to express my sincere thanks to Boris Pittel. It would have been entirely appropriatefor him to be a co-author of the paper. For example, he proved Lemma 1, and we wereoriginally going to publish this paper and the paper [11] as a single paper. It was runningto 60 pages and we decided to split it, and Boris declined to work on the completion of thebipartite version.

REFERENCES

[1] J. Aronson, A. M. Frieze, and B. G. Pittel, Maximum matchings in sparse random graphs:Karp-Sipser re-visited, Random Structures Algorithms 12 (1998), 111–178.

[2] B. Bollobás, Random graphs, 2nd edition, Academic Press, New York, 2001.

[3] B. Bollobás, “Random graphs,” Combinatorics, Ed. H. N. V. Temperley, London MathematicalSociety Lecture Note Series 52, 80-102. Cambridge University Press, Cambridge, 1981.

[4] B. Bollobás, T. Fenner, and A. M. Frieze, “Hamilton cycles in random graphs with minimaldegree at least k,” A tribute to Paul Erdos, Eds. A. Baker, B. Bollobás, and A. Hajnal, 59–86.Cambridge University Press, Cambridge, 1988.

[5] B. Bollobás, C. Cooper, T. Fenner, and A. M. Frieze, On Hamilton cycles in sparse randomgraphs with minimum degree at least k, J Graph Theory 34 (2000), 42–59.

[6] B. Bollobás and A. M. Frieze, On matchings and hamiltonian cycles in random graphs, AnnDiscrete Math 28 (1985), 23–46.

[7] R. Durrett, Probability: Theory and examples, Wadsworth and Brooks/Cole, Belmont, CA,1991.

[8] P. Erdos and A. Rényi, On random matrices, Publ Math Inst Hungar Acad Sci 8 (1964),455–461.

[9] P. Erdos and A. Rényi, On the existence of a factor of degree one of a connected random graph,Acta Math Acad Sci Hungar 17 (1966), 359–368.

[10] A. M. Frieze, Maximum matchings in a class of random graphs, J Combin Theory Ser B 40(1986), 196–212.

[11] A. M. Frieze and B. Pittel, Perfect matchings in random graphs with prescribed minimal degree,Trends in mathematics, 95–132. Birkhäuser, Basel, 2004.

[12] M. Karonski and B. Pittel, Random proposals with a second chance for nerds, to appear.

[13] R. M. Karp and M. Sipser, Maximum matchings in sparse random graphs, Proc 22nd AnnuIEEE Symp Foundations of Computing, 1981, pp. 364–375.

[14] L. Lovász, Combinatorial problems and exercises, 2nd edition, North-Holland, Amsterdam,1993.

[15] B. D. McKay, Asymptotics for symmetric 0-1 matrices with prescribed row sums, Ars Combin19A (1985), 15–26.

[16] B. G. Pittel, Paths in a random digital tree: limiting distributions, Adv Appl Probab 18 (1986),139–155.

[17] R. W. Robinson and N. C. Wormald, Almost all regular graphs are Hamiltonian, RandomStructures Algorithms 5 (1994), 363–374.

[18] D. W. Walkup, Matchings in random regular bipartite graphs, Discrete Math 31 (1980), 59–64.