Sie sind auf Seite 1von 15

115

Chapter 2: Matching and Independence

Section 2.1: Existence of Matchings

116

a system of distinct representatives (SDR) of the sets A1 , . . . , Am ,


meaning distinct elements z1 , . . . , zm such that zi Ai for all i.
The two problems are equivalent; an SDR of a family of sets becomes
a matching in its bipartite incidence graph. The partite sets of the
incidence graph are [m] and i[m] Ai , with x adjacent to i if and only if
x Ai . We use the correspondence between the two problems freely.

2.1. EXISTENCE OF MATCHINGS


Can we fill a set of jobs using qualified applicants from an applicant
pool? Can we pair students as roommates so that paired students are
compatible? Can we build a strategy for the second player to draw at TicTac-Toe? These questions all relate to matchings in graphs.
2.1.1. DEFINITION. A matching in a graph G is a set of non-intersecting
edges, also called independent edges. A matching covers the vertices
comprising its edges. A matching that covers all vertices of G is a
perfect matching. We write (G) for the maximum size (number
of edges) of a matching in G.
A more traditional term is that the vertices incident to the edges of
a matching are saturated by the matching; the usage of covered here
is consistent with other uses of this word. Saturate suggests the optimization viewpoint that the limit on usage of edges at that vertex has
been reached.
Maximum matching is a fundamental and well-studied optimization
problem. Matching can also be treated as an existence problem (does G
have a perfect matching?), an enumeration problem (how many perfect
matchings does G have?), or an extremal problem (what is the maximum
size of a matching in G?). We postpone algorithmic aspects to Section 2.2.

MATCHING IN BIPARTITE GRAPHS


Filling jobs with qualified applicants translates into a matching
question in a bipartite graph. The partite sets are the jobs and the applicants, and edges record which applicants are qualified for which jobs.
We ask whether the graph has a matching that covers all the jobs.
2.1.2. REMARK. We can rephrase the job-filling problem using sets. For
the ith job, there is a set Ai of qualified applicants. The problem is to find

Halls Theorem, originally stated for set systems, provides a necessary and sufficient condition for an SDR (or a matching covering one partite set). We present a graph-theoretic proof by a later Hall that yields a
lower bound on the number of such matchings. The existence part of the
proof appears also in HalmosVaughan [1950] and MannRyser [1953].
2.1.3. DEFINITION. The neighborhood notation extends to sets of vertices via N(S) = vS N(v). An X , Y -bigraph is a bipartite graph
with bipartition X , Y .
If an X , Y-bigraph has a matching M of size | X | , then the vertices
in X have distinct neighbors in M , so | N(S)| | S| for S X . The corresponding condition for a family of sets is RRRRRiS Ai RRRRR | S| for S [m]. This
necessary condition is Halls Condition; we will prove it also sufficient.
2.1.4. Example. The lower bound on the number of matchings covering
X that we prove in the next theorem is tight for K m ,n . With m n, each
subset of the smaller part has n neighbors. A matching of size m can be
m
picked iteratively in i=1 (n i + 1) distinct ways.
The bound is not always sharp. For example, it guarantees only one
perfect matching in K 2 + K 2 ,2 , but there are two.
2.1.5. THEOREM. (P. Hall [1935], M. Hall [1948]) An X , Y -bigraph G
has a matching that covers X if and only if | N(S)| | S| for all S X .
min{ , X }
If that holds, then there are at least i=1 | | ( + 1 i) matchings
covering X , where = min x X d(x).
Proof: As remarked above, Halls Condition is necessary. Let m = | X |
min{ ,m}
( + 1 i). We use induction on m to prove that
and r( , m) = i=1
if Halls Condition holds, then at least r( , m) matchings cover X . When
m = 1, there are matchings. For m > 1, there are two cases.
Case 1: | N(S)| > | S| whenever S X . Fix a vertex x X . Choose
y N(x), which can be done at least ways. For each such choice, G
{x , y} satisfies Halls Condition, since each subset of X {x} loses at most
one neighbor, y. Also, each vertex of X {x} has degree at least 1
in G {x , y}. Applying the induction hypothesis yields at least r(
1 , m 1) matchings covering X , as desired.

117

Chapter 2: Matching and Independence

Case 2: | N(S)| = | S| for some S with S X (see figure below).


Let G 1 be the subgraph induced by S N(S), and let G 2 = G (S N(S)).
Halls Condition holds for G 1 , since N(T) N(S) for T S. Halls Condition also holds for G 2 : since NG 2 (T) = NG(T S) NG(S) for T X S,

| NG2 (T)| = | NG(T S)| | NG(S)| | T S| |S| = | T |.

Let f0 , f1 , f2 count the matchings in G , G 1 , G 2 covering X , S, X S,


respectively. Matchings in G 1 and G 2 combine to form matchings in G, so
f0 f1 f2 . Note that | N(S)| = | S| forces | S| < m. Since G 1 contains all
neighbors of vertices in S, vertices of S have degree at least in G 1 . With

m > | S| , the induction hypothesis yields f1 i=1 ( + 1 i) = r( , m).


The induction hypothesis also yields f2 1, and thus f0 r( , m).
X


G2

G1

N (T)

N(S)

Halls Theorem is the first sentence of Theorem 2.1.5. For regular


graphs, it yields the Marriage Theorem, so called because a bipartite
graph can describe the compatibility relation for a set of men and women.
2.1.6. COROLL ARY. (Marriage Theorem; K o nig [1916], Frobenius
[1917]) Every nontrivial regular bipartite multigraph has a perfect
matching.
Proof: When G is k-regular, counting the edges joining S to N(S) yields
k | S| k | N(S)| , since N(S) is incident to all the edges incident to S and
perhaps others. If k > 1, then Halls Condition holds.
The counting arguments in the proof of Theorem 2.1.5 fail for bipartite multigraphs, and the lower bound r( , m) does not hold there. However, applying the result to the underlying graph obtained by keeping one
copy of each edge shows that Halls Condition suffices for a matching that
covers X even when multiedges are present.
For bipartite multigraphs, a matrix encoding is helpful. With partite sets X and Y of size n, let A be the submatrix of the adjacency matrix
using the rows for X and columns for Y . A perfect matching in G corresponds to n positions in A with no two in the same row or column. The

Section 2.1: Existence of Matchings

118

number of matchings using copies of these edges is the product of the


corresponding entries in the matrix. Counting of perfect matchings in
bipartite graphs thus generalizes to a matrix function. The positions for
a matching define a permutation [ of [n] by letting [(j) = i if position
(i , j) corresponds to an edge of the matching.

2.1.7. DEFINITION. The biadjacency matrix (also called reduced


adjacency matrix) of an X , Y-bipartite multigraph G is the submatrix of A(G) consisting of the rows for X and the columns for Y .
The permanent of an n-by-n matrix is [ a[(j), j , (summed over all
permutations of [n]). A doubly stochastic matrix is a nonnegative
matrix whose rows and columns all have sum 1.

If G is k-regular of order 2n, with k 1, then dividing the biadjacency matrix by k yields a doubly stochastic matrix A. The number of
perfect matchings in G is k n times the permanent of A. Egorycev [1981]
and Falikman [1981] proved the famous conjecture of van der Waerden
[1926]: the smallest permanent among doubly stochastic matrices of order n is n!/nn , achieved when all entries equal 1/n. A proof appears in
Chapter 20; see also van Lint [1982] or van LintWilson [1992, p91].
Deleting a perfect matching decreases every vertex degree by 1 and
preserves regularity, so by Corollary 2.1.6 a nonnegative integer matrix
with every row and column summing to k is a sum of permutation matrices. This statement extends to doubly stochastic matrices.
2.1.8. THEOREM. (Birkhoff [1946], von Neumann [1953]): Every doubly stochastic matrix M is a convex combination of permutation matrices.
Proof: Let n be the order of M. We use induction on the number of
nonzero entries. If M has only n nonzero entries, then M is a permutation matrix, and the result is trivial.
When M has more nonzero entries, let G be the bipartite graph
whose biadjacency matrix is obtained from M by setting the nonzero entries to 1. For each set S of k rows, the row total of k is absorbed by the
columns having nonzero entries in the rows of S. Since each column has
sum 1, there are at least k such columns. Thus G satisfies Halls Condition, and n independent nonzero entries exist in M.
Let be the smallest entry in such a set, and let P be the permutation matrix with 1s in these positions. The matrix M = M P has
row sums and column sums equal to 1 and has fewer nonzero entries
than M. By the induction hypothesis, M can be expressed as ci Pi with
ci > 0 and ci = 1 . Together with P , this expresses M as desired.

119

Chapter 2: Matching and Independence

We may seek nonzero independent positions having large entries.


2.1.9. Example. An island of area n is inhabited by n married couples,
each pairing a farmer and a rancher. The Ministry of Agriculture divides
the island into n farms of equal size. The Ministry of Meat independently
divides it into n ranches of equal size. The Ministry of Marriage requires
that each couple s farm and ranch overlap. By Theorem 2.1.8, such an
assignment exists. We further want to find a large so that the common
area for each couple is at least .
In the example below, the ranches (1 , 2 , 3) are horizontal strips, and
the farms (a , b , c) extend vertically. The matrix records the areas of the
intersections. Those with area .5 dont occupy three independent positions, and thus we cannot guarantee larger than .25 when n = 3.
1 b

2 b
3

a
b

c
c

.5
.5
0

.25
.25
.5

.25
.25
.5

2.1.10. THEOREM. (MarcusRee [1959], Floyd [1990]) Every doubly


stochastic matrix of order n has n independent entries all with value
at least , where = 4/(n + 1)2 for odd n and = 4/[n(n + 2)] for even
n. Furthermore, no larger minimum can be guaranteed.
Proof: We use the language of farms, ranches, and area.
Example 2.1.9 generalizes to show that the given value of is best
possible. Partition a square of area n into n equal strips as ranches. Let
T be a set of k strips. Let k 1 farms intersect each ranch in T with
area 1/k. Split the remaining 1/k for each ranch in T equally among the
remaining n + 1 k farms. Some ranch in T must be matched to a farm
it intersects with area n+11k 1k . Setting k = n/2 makes this area .
To prove the guarantee of finding a matching with common area at
least for each pair, define a bipartite graph G by making ranches and
farms adjacent when they have common area at least . It suffices to prove
that G satisfies Halls Condition. Let (A) denote the area of A.
For Halls Condition, consider a set S of k ranches, and let R be their
union. We need k farms that each intersect some ranch in S with area
at least . If (F R) n+11k for some farm F , then F intersects some
ranch in S with area at least k(n+11k) and hence at least . We show that
there are at least k such farms.

Section 2.1: Existence of Matchings

120

Index the farms F1 , . . . , F n so that (F1 R) (F n R). Let


a = (F k R). Since (F i R) 1 for
i < k and (F i R) a for i k,
n
k 1 + a(n + 1 k) (F i R) = (R) = k.
i=1

Simplifying yields a n+11k . We conclude that N(S) contains F1 , . . . , F k ,


and Halls Condition holds.
Halls Theorem is equivalent to various min-max relations giving the
maximum matching size in a bipartite graph in terms of other parameters. The first such parameter measures the failure of Halls Condition.
2.1.11. DEFINITION. The matching number of a graph G, denoted
(G), is the maximum size of a matching in G. In an X , Y-bigraph
G, the defect of a set S X , denoted df(S), is | S| | N(S)|.
It would be appealing to call this deficiency and write def(S), but
that term and notation has another use with matching in general graphs.
2.1.12. COROLL ARY. (Defect Formula; Ore [1955]).
bigraph G, the matching number satisfies
(G) = min{| X | df(S)} .

In an X , Y -

S X

Proof: Matchings miss at least df(S) vertices of S, so (G) | X | df(S)


for all S. We construct a matching of size | X | d, where d = max S X df(S).
Form G by adding d vertices to Y , each adjacent to all X . Since each
subset of X gets d new neighbors, G satisfies Halls Condition. Hence
G has a matching M of size | X | . At most d edges of M are in G G, so
the remainder form a matching of the desired size in G.
Corollary 2.1.12 yields a short proof of an important min-max relation for in terms of a natural dual covering problem.
2.1.13. DEFINITION. A vertex cover of a graph G is a set of vertices
having at least one endpoint of every edge; G is the union of the stars
centered at these vertices. The vertex cover number of G, denoted
(G), is the minimum size of a vertex cover in G.
2.1.14. THEOREM. (K onigEgerv
ary
Theorem; (K o nig [1931], Eger

vary
[1931]) If G is bipartite, then (G) = (G) (matching number
equals vertex cover number).
Proof: No vertex can cover more than one edge of a matching, so (G)
(G). We must obtain a vertex cover of size (G). By Corollary 2.1.12,

121

Chapter 2: Matching and Independence

there is a subset T of partite set X such that (G) = | X | df(T). Since


df(T) = | T | | N(T)| , we have | N(T)| = (G) (| X | | T |). Thus the vertex
cover N(T) (X T) has size (G).
Other proofs of the K o nigEgervary
Theorem appear for example in
Exercises 5152. Min-max relations are valuable because they guarantee
short proofs of optimality. When (G) = k in a bipartite graph, we are
guaranteed to be able to prove (G) k and (G) k by exhibiting a
matching and a vertex cover of size k. Min-max relations also often lead
to fast algorithms to compute the parameters (see Section 2.2).

MENGERS THEOREMS
Halls Theorem and the K o nigEgervary
Theorem have many applications, some of which appear in the exercises. Here we use them to prove
an important min-max relation for connectivity in graphs and digraphs.
We begin with local versions for separating two specified vertices.
2.1.15. DEFINITION. For x , y V(G) with xy
/ E(G), a set S
V(G) {x , y} is an x , y-cut if G S has no x , y-path. Let (x , y) be
the minimum size of an x , y-cut. Two x , y-paths are independent
if they share no internal vertices. Let (x , y) be the maximum number of (pairwise) independent x , y-paths, For X , Y V(G), a strict
X , Y -path is a path starting in X , ending in Y , and having no other
vertex in X Y .
An x , y-cut must contain a vertex from each path in a family of independent x , y-paths, so always (x , y) (x , y). We prove that equality always holds. This local equality (x , y) = (x , y) for nonadjacent
vertices in graphs was Menger s original theorem. Related forms for
edge-connectivity, digraphs, and global properties were found by others;
all are commonly called Menger s Theorem. More than 15 proofs of
Menger s Theorem have been published, some yielding stronger results,
[1986, p70]:
some incorrect. Indeed, we quote LovaszPlummer

Menger s proof of his famous minimax theorem (1927) contained


a gap. In fact , he failed to consider the case in which the graph involved was bipartite. So K o nig was really the first to formulate and
prove Menger s Theorem for this omitted case by means of his Minimax
Theorem for bigraphs. K o nig first noted in print in his book (1936) that
his Minimax Theorem repaired this gap in Menger s proof.

2.1.16. THEOREM. (Menger [1927]) If x and y are vertices of a graph G


and xy
/ E(G), then (x , y) = (x , y).

Section 2.1: Existence of Matchings

122

Proof: An x , y-cut intersects each path in any independent set x , ypaths, so (x , y) (x , y). We prove equality by induction on n, where
n = | V(G)|. If n = 2, then xy
/ E(G) yields (x , y) = (x , y) = 0. For
n > 2, let k = G(x , y); we construct k pairwise independent x , y-paths.
Case 1: G has an x , y-cut S of size k not equal to N(x) or N(y). In this
case we combine x , S-paths and S, y-paths obtained using the induction
hypothesis, as shown below in solid edges. Let V1 be the set of vertices
in strict x , S-paths, and let V2 be the set of vertices in strict S, y-paths.
Minimality of S implies that every vertex of S lies on an x , y-path, so
S V1 V2 . If there exists v (V1 V2) S, then the union of strict x , Sand S, y-paths through v contains an x , y-path avoiding the x , y-cut S.
Thus S = V1 V2 . Similarly, V1 omits N(y) S and V2 omits N(x) S.
Form H1 by adding to G[V1 ] a vertex y with edges from S. Form H2
by adding to G[V2 ] a vertex x with edges to S. Every x , y-path starts
with an x , S-path (in H1), so every x , y-cut in H1 is an x , y-cut in G.
Hence H1 (x , y) = k. Similarly, H2 (x , y) = k. Since V1 omits N(y) S
and V2 omits N(x) S, both H1 and H2 are smaller than G. Hence the induction hypothesis yields H1 (x , y) = k = H2 (x , y). Since V1 V2 = S,
deleting y from the paths in H1 and x from the paths in H2 yields x , Spaths and S, y-paths in G that combine to form k pairwise independent
x , y-paths in G.

V1

V2
y

y x

H1
Case 1

H2

G
Case 2

Case 2. Every x , y-cut of size k is N(x) or N(y). Again we construct


k paths. If there exist v V(G) N[x] N[y], then v is in no x , y-cut
of size k. Hence Gv(x , y) = k, and applying the induction hypothesis to
G v yields the desired x , y-paths in G. If v N(x) N(y), then v appears
in every x , y-cut, and Gv(x , y) = k 1. Now the induction hypothesis
yields k 1 paths in G v to combine with the path x , v , y.
We may therefore assume that N(x) and N(y) partition V(G) {x , y}.
Let G be the N(x) , N(y)-bigraph containing all edges from N(x) to N(y).
Every x , y-path in G uses some edge from N(x) to N(y), so the x , y-cuts in
G are the vertex covers of G . Hence (G ) = k. By the K o nigEgervary

Theorem, G has a matching of size k, and these edges yield k independent x , y-paths of length 3.

123

Chapter 2: Matching and Independence

This proof for graphs applies also to digraphs when we replace N(x)
and N(y) throughout with N +(x) and N (y). It needs Case 2 because the
induction hypothesis does not apply to obtain S, y-paths when S = N(x).
There is an analogue of Theorem 2.1.16 for edge-disjoint paths. We
prove it by applying Theorem 2.1.16 to a graph obtained using the line
[di]graph operation of Definition 0.52.
2.1.17. DEFINITION. For vertices x and y in a [di]graph G, let (x , y)
denote the minimum number of edges whose deletion makes y unreachable from x, and let (x , y) denote the maximum number of
pairwise edge-disjoint x , y-paths in G.

The min-max relation for and was originally proved in Elias


FeinsteinShannon [1956] and FordFulkerson [1956] using network
flow methods (Chapter 14). In this result we do not forbid xy E(G).
2.1.18. THEOREM. If x and y are distinct vertices of a [di]graph G,
then (x , y) = (x , y).

Proof: Define G by adding two new vertices s , t and two new edges sx
and yt to G. This does not change (x , y) or (x , y). We treat each x , ypath as a path from sx to yt. A set of edges disconnects y from x in G if
and only if the corresponding vertices of L(G ) form an sx , yt-cut. Similarly, edge-disjoint x , y-paths in G become independent sx , yt-paths in
L(G ), and vice versa. Since x 6= y, we have no edge from sx to ty in L(G ).
Applying Theorem 2.1.16 to L(G ) yields
G(x , y) = L(G)(sx , yt) = L(G)(sx , yt) = G(x , y).

The global version for k-connected graphs, observed first by Whitney


[1932], is commonly known as Menger s Theorem. The global versions for
edges and digraphs appeared in FordFulkerson [1956]. We restate Definition 0.48 in slightly different language. Connectivity is a minimization
parameter, so the theorem as phrased here is a min-max relation.
2.1.19. DEFINITION. For a [di]graph G that has an x , y-cut for some
x , y V(G), the connectivity (G) [edge-connectivity (G)] is
the minimum number of vertices [edges] whose deletion makes some
vertex unreachable from some other vertex.
2.1.20. THEOREM. For a [di]graph G,
(G) =
(G) =

max{k: (x , y) k for all x , y V(G)} ,


max{k: (x , y) k for all x , y V(G)} .

Section 2.1: Existence of Matchings

124

Proof: Since (G) = min x ,yV(G) (x , y), Theorem 2.1.18 immediately


yields the claim for edge-connectivity. For connectivity, we have (x , y) =
(x , y) when xy
/ E(G), and (G) is the minimum of these values. We
need only show that (x , y) cannot be smaller than (G) when xy E(G).
We first prove that deletion of an edge cannot reduce connectivity by
more than 1. Here we discuss only graphs; for digraphs see Exercise 55.
If (G xy) S is disconnected but G S is not, then xy is a cut-edge of G
S, so G xy S consists of two components, each containing one of {x , y}.
If | S| < n 2, then one of these components has at least two vertices. If
z is the element of {x , y} in that component, then S {z} disconnects G.
Hence (G) (G xy) + 1. If | S| n 2, then the desired inequality
again holds, since every n-vertex graph has connectivity at most n 1.

X
S

Deletion of xy also reduces (x , y) by 1, since xy itself is an x , y-path


and cannot contribute to any other x , y-path. Using these observations
and Theorem 2.1.16, we have
G(x , y) = 1 + G xy(x , y) = 1 + G xy(x , y) 1 + (G xy) (G).
We offer a classical application of Menger s Theorem that strengthens Halls Theorem, stated for families of finite sets (also proved in Chapters 11, 14, and 15).
2.1.21. THEOREM. (FordFulkerson [1958]) Families { A1 , . . . , Am} and
{B1 , . . . , Bm} have a common SDR if and only if
RRR
RR
RRR( Ai ) ( Bj )RRRR | I | + | J | m
R i I
R
jJ

for each pair I , J [m] .

Proof: To see that the condition is necessary, rewrite the inequality as


R
RR
RRR( Ai ) ( Bj )RRRR + (m | I |) + (m | J |) m.
()
RR
RR
i I
jJ
A CSDR contains representatives of sets in A not indexed by I and sets in
B not indexed by J. The remaining elements represent sets in A indexed
by I and sets in B indexed by J. Hence they lie in ( Ai ) ( Bj ) . Thus
all m elements of a CSDR are counted at least once by the left side of ().

125

Chapter 2: Matching and Independence

For sufficiency, create a digraph G with special vertices s and t and


vertices ai for Ai A , bj for Bj B, and x for x ( Ai ) ( Bj ) . As
illustrated below, the edges are
{ai x: x Ai},
{xbj : x Bj }.

{sai : Ai A},
{bj t: Bj B},

Each s , t-path visits an element in both some Ai and some Bj . A set of m


independent s , t-paths selects a CSDR. By Menger s Theorem, it suffices
to show that the given condition makes every s , t-cut have size at least m.
Given a set R V(G) {s , t}, let I = {i [m]: ai
/ R} and J = { j
[m]: bj
/ R}. If R is an s , t-cut, then ( i I Ai ) ( j J Bj ) R, and thus
R
R
| R| RRRRR( Ai ) ( Bj )RRRRR + (m | I |) + (m | J |).
R i I
R
jJ
By (), the condition is sufficient.

2.1.22. Example. In the example below, the elements are {1 , 2 , 3 , 4},


with A = {12 , 23 , 31} and B = {14 , 24 , 1234}. When R contains
{a1 , a2 , b1 , b2 } but not a3 or b3 , we set I = J = {3}. Now R is an s , tcut if and only if it also contains {1 , 3}, which is ( i I Ai ) ( j J Bj ) .
4

b3

a3
I

a2
a1

b2
b1

t
R

MATCHING IN GENERAL GRAPHS


Although the K o nigEgervary
Theorem fails on odd cycles, where

(C2k+1) = k < k + 1 = (C2k+1), the maximum matching problem is still


fairly well behaved on general graphs.
2.1.23. DEFINITION. For k N, a k-factor of a graph G is a k-regular
spanning subgraph of G. In this context, the parity of a component
of a graph is the parity of its number of vertices. Let o(H) denote the
number of odd components of H.

Section 2.1: Existence of Matchings

126

A perfect matching is a set of edges; a 1-factor is a subgraph whose


edge set is a perfect matching. The terms are almost interchangeable.
A 1-factor in G requires o(G S) | S| for all S V(G), since each odd
component of G S must have a vertex matched into S. Tutte s 1-Factor
Theorem states that this condition is also sufficient. Proofs include Gallai [1950], Maunsell [1952], Kotzig [195960], Lovasz [1973], Anderson
[1971], Mader [1973]. We begin with useful terminology.
2.1.24. DEFINITION. The deficiency def(S) of a vertex set S in a
graph G is o(G S) |S| . A Tutte set is a set S V(G) with positive
deficiency. Tuttes Condition for G is the statement that G has no
Tutte set; that is, o(G S) | S| for all S V(G).
2.1.25. LEMMA . (Parity Lemma) If G is an n-vertex graph G and S
V(G), then o(G S) | S| n (mod 2). In particular, if n is even and
S is a Tutte set, then o(G S) | S| + 2.

Proof: Counting vertices shows that o(G S) + | S| n (mod 2).

2.1.26. LEMMA . Let T be a maximal set among the vertex sets of maximum deficiency in a graph G. If x is a vertex of an odd component C
of G T , then C x satisfies Tutte s Condition. Also, all components
of G T are odd.
Proof: We use subscripts on def to denote the relevant graph. For S
V(C x), odd components of C x S are contained in C x. Thus
def G(T x S) = o(G T x S) (| T | + 1 + | S|)

= o(G T) 1 + o(C x S) | T | 1 | S|
= def G(T) 2 + def C x(S)

The choice of T yields def G(T x S) < def G(T). By the Parity Lemma,
the two deficiencies have the same parity. Hence def C x(S) 0. Since S
is arbitrary, C x satisfies Tutte s Condition.
If G T has an even component C, then adding to T any leaf of a
spanning tree of T creates a larger set with the same deficiency as T .
The conclusion of Lemma 2.1.26 need not hold for all sets of maximum deficiency. For example def(P3) = 1, and is a non-maximal set of
maximum deficiency in P3 for which the conclusion fails.
For T V(G), form an auxiliary T, Y-bigraph H(T), where Y denotes the set of components of G T ; the graph H(T) has an edge ty for

127

Chapter 2: Matching and Independence

t T and y Y if and only if t has a neighbor in G in the component


of G T corresponding to y. Maximum matchings in H(T) will yield
maximum matchings in G.
2.1.27. LEMMA . If T is a maximal set of maximum deficiency in a graph
G, then H(T) contains a matching that covers T .

Proof: For S T , all vertices of Y NH(T)(S) are odd components of


G (T S). By the choice of T , we have (| Y | | NH (S)|) | T S| def(T).
Since def(T) = | Y | | T | , the inequality simplifies to | S| | NH (S)| . Thus
Halls Condition holds, and H(T) has a matching that covers T .

The matching in Lemma 2.1.27 pairs vertices of T with distinct odd


components of G T . This leads to a matching of size 12 (n def(G)) in
G. Schrijver [2002] gave another direct proof of the min-max relation;
Berge proved it from Tutte s Theorem (Exercise 64). As noted, Tutte s
1-Factor Theorem is the special case d = 0.
Define the deficiency def(G) of a graph G to be max SV(G) def G(S).
Note that def G() 0 for every graph G, so def(G) 0. Thus Tutte s
Condition for G is the statement that def(G) = 0.
2.1.28. THEOREM. (BergeTutte Formula; Berge [1958]). If G is an
n-vertex graph, then the maximum number of vertices covered by a
matching in G is n def(G); that is, (G) = 12 (n def(G)).
(G) 1 (n def(G)).

To achieve equality, we
Proof: We have noted that
2
use induction on n. The claim is trivial for n = 0; consider n > 0.
Let T be a maximal set with deficiency def(G). By Lemma 2.1.26,
all components of G T are odd, and C x satisfies Tutte s Condition
whenever x is a vertex in an odd component C of G T . By the induction
hypothesis, C u has a perfect matching.
Lemma 2.1.27 matches T into vertices of distinct components of
G T . Since G T has | T | + def(G) components, adding near-perfect
matchings of these components completes the desired matching.
2.1.29. COROLL ARY. (Tuttes 1-Factor Theorem; Tutte [1947]) A
graph has a 1-factor if and only if it has no Tutte set (def(G) = 0).

Proof: Set d = 0 in Theorem 2.1.28.

Like many characterization theorems, Tutte s Theorem ensures


short proofs of existence or nonexistence of the property in question. We
prove existence of a 1-factor by exhibiting one. We prove nonexistence by
exhibiting a vertex set with positive deficiency.

Section 2.1: Existence of Matchings

128

A closer look at the proof of Theorem 2.1.28 allows us to describe the


structure of all maximum matchings in G.
2.1.30. DEFINITION. (Gallai [1963a]) A graph G is factor-critical if
every subgraph obtained by deleting one vertex has a 1-factor. A
matching in G is near-perfect if it covers all but one vertex of G.
Factor-critical graphs have odd order and are connected; they include
all graphs with spanning odd cycles. No bipartite graph is factor-critical,
since no near-perfect matching omits a vertex of the smaller part. Factorcritical subgraphs figure prominently in the structural description of all
maximum matchings in a graph G, developed independently by Gallai
[1963, 1964] and Edmonds [1965]. See LovaszPlummer
[1986, p89110]

for further material on this subject. Note that Lemma 2.1.26 implies
that when T is a maximal set of maximum deficiency in a graph G, every
component of G T is factor-critical.
2.1.31. DEFINITION. In a graph G, let B be the set of vertices that
are covered by every maximum matching in G. Let A be the set of
vertices in B having at least one neighbor outside B, let C = B A,
and let D = V(G) B. The GallaiEdmonds Decomposition of G
is the partition of of V(G) into the three sets A , C, D.

G4


G2

G1

G3

2.1.32. THEOREM. (GallaiEdmonds Structure Theorem) Let A , C, D


be the GallaiEdmonds Decomposition of a graph G. Let G 1 , . . . , G k
be the components of G[D]. If M is a maximum matching in G, then
the following properties hold.
a) M covers C and matches A into distinct components of G[D].
b) Each G i is factor-critical and has a near-perfect matching in M.
c) If 6= S A, then N(S) intersects at least | S| + 1 of G 1 , . . . , G k .
d) def(A) = def(G) = k | A|.

129

Chapter 2: Matching and Independence

Proof: (West [2011]) Let T be a maximal set of deficiency def(G). By the


BergeTutte Formula, M leaves def(G) vertices uncovered and matches
T into vertices of distinct components of G T (all are odd), and the rest
of M forms a near-perfect matching in each component of G T .
We use T to find the sets A , C, D of the GallaiEdmonds Decomposition. Since H(T) has a matching covering T (Lemma 2.1.27), Halls
R
R
R
R
Condition holds: RRRR NH(T)(S)RRRR | S| for S T . Since RRRR NH(T)()RRRR = 0, we may
let R be a maximal subset of T for which equality holds.
The crucial point is that C = R R , where R consists of all vertices of components of G T in NH(T)(R). (Proving this shows that R is
unique.) Since RRRRR NH(T)(R)RRRRR = | R| , the edges of M match R into vertices of
distinct components of G[R]. We have observed that M covers the rest
of R . Since M covers T and no vertex of R or R has a neighbor in the
other odd components of G T , we conclude that R R C.
Let D = V(G) T R . It suffices to show that D = D and A = T R.
That is, we show that every vertex in D is omitted by some maximum
matching and that every vertex of T R has a neighbor in D .
Let H = H(T) (R NH(T)(R)). For S T R with S nonempty,
we have | NH (S)| > | S| , since otherwise R could be enlarged to include
S. Therefore, deleting any vertex of NH (T R) from H leaves a subgraph of H satisfying Halls Condition, so H has a maximum matching
omitting any such vertex. By Lemma 2.1.26 and Theorem 2.1.28, each
component of G T is factor-critical, so each vertex in D is avoided by
some maximum matching. This completes (a), (b), and (c).
For (d), since o(G[D]) = k, we have def(T) = o(G T) | T | = k + | R|
| A R| = k | A|. Since G[C] has a perfect matching, its components have
even order, so o(G A) = k. Hence A (like T) has maximum deficiency.

CL ASSICAL APPLICATIONS
Many applications of Tutte s Theorem involve showing that some
other condition implies Tutte s Condition and hence guarantees a 1factor. Long before Tutte s Theorem was available, Petersen proved a
statement that now follows easily from Tutte s Theorem.
2.1.33. COROLL ARY. (Petersen [1891]) Every 3-regular graph with no
cut-edge has a 1-factor.
Schonberger [1934] proved the stronger result that in fact every
[1938] extended Petersens result to
edge lies in some 1-factor. Babler

k-regular (k 1)-edge-connected graphs of even order (see Exercise 79

Section 2.1: Existence of Matchings

130

concerning sharpness). Berge [1973, p162] observed that even in the kregular case every edge lies in some 1-factor, which follows immediately
from our next result. (The hypothesis can be weakened; see Exercise 80).

2.1.34. THEOREM. (Plesn k [1972]) Let G be a k-regular (k 1)-edgeconnected multigraph with | V(G)| even. If G is obtained from G by
deleting at most k 1 edges, then G has a perfect matching.

Proof: We prove that G has no Tutte set. Consider S V(G ), and let m
be the number of edges of G joining S to odd components of G S. Since
G G and G is k-regular, m k | S|. If m ko(G S) 2(k 1), then
dividing by k yield | S| > o(G S) 2. The Parity Lemma then implies
|S| o(G S), as desired.
For the lower bound on m, consider an odd component H of G S.
Let l be the number of edges in G leaving V(H); by hypothesis, l k 1.
Note that vV(H) d H (v) = k | V(H)| l. Since H is a graph, the sum is
even, but | V(H)| is odd, so k and l have the same parity. Thus l k.
Summing over all such H yields ko(G S), but this counts edges in
G leaving these subgraphs. Up to k 1 of them may be missing in G ,
and they were counted from both ends if they joined two odd components
of G S. Thus if we subtract 2(k 1) we still have a lower bound on m.
That is, m ko(G S) 2(k 1), as desired.
2.1.35. COROLL ARY. (Berge [1973]) Let G be a k-regular multigraph
of even order. If G is (k 1)-edge-connected, then every edge of G
appears in some perfect matching.
Proof: Delete k 1 of the k edges incident to one endpoint of the edge
desired in the 1-factor, and apply Theorem 2.1.34.
Next we apply Lemma 2.1.27 to the problem of counting 1-factors.
When T is a maximal set with deficiency 0, every matching of T into vertices from distinct odd components of G T extends to a 1-factor of G.
We thus obtain a lower bound on the number of such matchings from our
lower bound on the number of perfect matchings in a bipartite graph.
2.1.36. LEMMA . (Lovasz
[1972]) Let G be a k-connected graph having a
1-factor. If G does not have at least k! 1-factors, then for every pair
x , y V(G), the graph G {x , y} has a 1-factor.

Proof: Consider x , y V(G) such that G has no 1-factor, where G =


G {x , y}. Let S be a maximal Tutte set in G . Since | V(G )| is even,
o(G S) | S| + 2. Since G has a 1-factor, also o(G S) = o(G (S
{x , y})) | S| + 2. Thus equality holds.

131

Chapter 2: Matching and Independence

Let S = S {x , y}. By the maximality of S, the set S is a maximal


set such that o(G S) = | S | . Since def(G) = 0, Lemma 2.1.27 guarantees
a matching of S into distinct components of G S , and the number of
1-factors in G is at least the number of these matchings.
Since | S | 2, also o(G S) 2. Hence G S is disconnected, so
(G) k implies that each component of G S has at least k distinct
neighbors in S . We conclude by Theorem 2.1.5 that G has at least r(k , k)
min{k ,k}
(k + 1 i) = k!.
1-factors, where r(k , k) = i=1
Thus if G has fewer than k! 1-factors, then whenever x , y V(G) we
have a 1-factor in G {x , y}.
2.1.37. THEOREM. (J. Zaks [1970]) If G is a k-connected graph with a
(k1)/2
(k 2i) 1-factors. If k is odd,
1-factor, then G has at least i=0
then this is best possible, with equality only for K k+1 .

Proof: If G does not have k! 1-factors, then by Lemma 2.1.36 every edge of
G is in some 1-factor. This yields distinct 1-factors containing the edges
incident to a fixed vertex x. Consider y N(x). Since G {x , y} is (k 2)connected, it has at least f(k 2) 1-factors, where f(j) is the minimum
number of 1-factors in a j-connected graph that has a 1-factor. Since
(G) k, we now have f(k) kf(k 2). This yields the desired bound by
induction, since f(1) = 1 and f(2) = 2.
When k is odd, K k+1 has exactly this many 1-factors, by matching
vk+1 with any of the other k vertices and proceeding inductively. Achieving equality in the argument for the lower bound requires that G be kregular and that deletion of any pair of adjacent vertices from G leaves,
by the induction hypothesis, a (k 1)-clique. Thus G is a k-regular graph
of order k + 1 and must be K k+1 .

MATCHINGS IN REGUL AR GRAPHS (optional)


A k-regular graph that is not (k 1)-edge-connected may fail to have
a 1-factor (see Exercise 79). One can ask how small the matching number
of a k-regular graph with n vertices can be.
For k = 3, form G from 3K 4 by subdividing one edge in each component and joining the resulting vertices of degree 2 to one new vertex x;
note that {x} is a Tutte set and that G has three cut-edges. With (G) =
7 and | V(G)| = 16, disjoint copies of G yield infinitely many graphs whose
matching number is 7/16 times the number of vertices.
In fact, 7/16 is the smallest ratio. This follows from the lower bound
in connected 3-regular graphs (Exercise 91). BiedlDemaineDuncan
FleischerKobourov [2004] proved that (G) (4n 1)/9 when G is

Section 2.1: Existence of Matchings

132

a connected n-vertex 3-regular graph, with equality infinitely often.


HenningYeo [2007] generalized this to regular graphs of odd degree. O
West [2010] gave a short proof of the lower bound that yields a characterization of the graphs achieving equality. The analysis introduces a
structural notion related to cut-edges as leaf blocks are related to cutvertices.
2.1.38. DEFINITION. A balloon in a graph G is a maximal 2-edgeconnected subgraph of G incident to exactly one cut-edge of G.
In a d-regular graph, a balloon has one vertex of degree d 1 (at the
incident cut-edge). A balloon may have cut-vertices and thus consist of
several blocks. Nevertheless, since maximal 2-edge-connected subgraphs
are pairwise disjoint, the number of balloons in G is well-defined.
2.1.39. DEFINITION. Let b(G) denote the number of balloons in a
graph G. Let Fn be the family of connected (2r + 1)-regular graphs
with n vertices. Let bn = max{b(G): G Fn}.

We will prove that (G) n2 2rr+1 bn when G Fn . Combined with


1)n+2
, this will yield the lower bound on (G). Setting r = 1 for
bn (2r
4r 2 +4r 2
the case of 3-regular graphs yields bn (n + 2)/6 and (G) (4n 1)/9.

2.1.40. Example. Fix r N, and consider (2r + 1)-regular graphs. Let


B be the graph obtained from K 2r+3 by deleting a matching of size r + 1
plus one edge at the remaining vertex. This is the smallest graph that
is (2r + 1)-regular except for one vertex of degree 2r, so it is the smallest
possible balloon in a (2r + 1)-regular graph. Deleting the vertex of degree
2r (the neck) from B leaves a subgraph having a perfect matching.
Let T be the family of trees such that every non-leaf vertex has degree 2r + 1. Let H be the family of (2r + 1)-regular graphs obtained from
Let T
trees in T by identifying each leaf with the neck in a copy of B.
be the subfamily of T obtained by requiring all leaves to have the same
color in a proper 2-coloring. Let H be the subfamily of H arising from
trees in T by adding balloons at leaves.
The graphs in H show that our bounds are sharp.
2.1.41. LEMMA . Let pr = 2r 2 + 2r 1. If G H and n = | V(G)| , then
n 4(r + 1)2 (mod (4r + 2)pr) and
b(G) =

(2r 1)n + 2
,
2pr

(G) =

1
r(2r 1)n + 2r
).
(n
(2r + 1)pr
2

133

Chapter 2: Matching and Independence

Proof: We first compute b(G) on H . The smallest tree in T has two vertices. The resulting graph in H has 4r + 6 vertices and two balloons, and
the formulas hold. For any larger tree T in T , the penultimate vertex of
a longest path has 2r leaf neighbors, and deleting them yields a smaller
tree T in T . Let G and G be the corresponding graphs in H . Compared to G , in G there are 2r more cut-edges, 2r 1 more balloons, and
2r(2r + 3) (2r + 2) more vertices. This last formula simplifies to 2pr , and
hence the formula for b(G) in terms of n holds by induction on n.
Now consider the more restrictive families T and H. The smallest
graph in T is the star K 1 ,2r+1 with 2r + 1 leaves. We claim that every
other tree in T arises from a smaller tree in T by appending 2r edges at a
leaf y and appending 2r additional edges at each new neighbor of y. This
produces (2r)2 leaves, which replace y in the set of leaves and are in the
same partite set as y, so the larger graph lies in T.
To prove that this generates all of T , consider a longest path P in
a non-star tree T in T , ending y , z , w, where w is a leaf. Since P is a
longest path, all 2r neighbors of z other than y are leaves. Since leaves
all lie in the same partite set, no neighbor of y is a leaf. Hence the 2r 1
neighbors of y not on P must all have 2r leaf neighbors (again since P is
a longest path and non-leaves have degree 2r + 1). Now T arises in the
specified way from a smaller tree in T having y as a leaf.
To compute (G) for G H , let T be the corresponding tree in T. Let
X and Y be its partite sets, with Y containing the leaves. Let S = X .
Now o(G S) = | Y | , since each vertex of Y is an isolated vertex in G S or
is the neck of a copy of B that is an odd component of G S. Thus def(S) =
| Y | | X |. Root T at a vertex of X , and then match each vertex of S to one
of its children, which is or lies in an odd component of G S. When that
pair its remaining vertices in a matching.
odd component is a copy of B,
This produces a matching with exactly def(S) uncovered vertices.
Hence it suffices to compare def(S) and the formula for (G) inductively. If T = K 1 ,2r+1 , then def(S) = 2r. Adding the balloons yields
|V(G)| = (2r + 3)(2r + 1) + 1 = 4(r + 1)2 (confirming the basis step for
the claim about n). The subtractive term in the formula for (G) is
r(2r 1)(4r 2 +8r +4)+2r
, which equals 2r, as desired, as desired.
(2r +1)pr

For larger G H , let T be the corresponding tree in T , expanded


from T corresponding to G H. The expansion increases | X | by 2r and
| Y | by 4r 2 , so def(S) increases by 4r 2 2r. Comparing G with G , one
balloon is lost and 4r 2 are created; the number of vertices increases by
4r 2(2r + 3) + 2r (2r + 2). The increase in n simplifies to (4r + 2)pr (completing the claim for n). The subtractive term in the formula for (G)
thus increases by r(2r 1)2, which equals the change in def(S).

Section 2.1: Existence of Matchings

134

Setting r = 1 in Lemma 2.1.41 yields (G) =


2.1.42. LEMMA . If G Fn , then b(G)
only if G H .

4n1
9

(2r 1)n+2
,
4r 2 +4r 2

for G H.

with equality if and

Proof: For G Fn , obtain G by shrinking each balloon in G to a single


vertex; G is connected, and the balloons of G become vertices of degree
1 in G . Let n = | V(G )| and m = | E(G )|. Since G is connected, m
n 1, and the degree-sum formula yields (2r + 1)n 2rb(G) = 2m
2n 2. Thus 2rb(G) (2r 1)n + 2. Since each balloon has at least
2r + 3 vertices, n n (2r + 2)b(G). Combining the inequalities yields
2rb(G) (2r 1)n + 2 (2r 1)(2r + 2)b(G), yielding the desired bound.
Equality requires equality throughout. Hence G is a tree with nonleaf vertices having degree 2r + 1. That is, G T and G H .
The lower bound on the matching number of graphs in Fn uses the
BergeTutte Formula. We must limit the deficiency of vertex sets. This
is easy when the edges from S to odd components of G S behave well.
2.1.43. LEMMA . Let G be an n-vertex (2r + 1)-regular graph, and let S
be a subset of V(G). If the number of edges from each odd component
of G S to S is only 1 or is at least 2r + 1, then def(S) 2rb(G)
2r +1 .
Proof: Let c1 be the number of odd components of G S having one edge
to S. Each such component contains a balloon, so c1 b(G). Counting
the edges joining S to odd components of G S yields
(2r + 1)| S| (2r + 1)o(G S) 2rc1 (2r + 1)o(G S) 2rb(G) ,
and hence def(S) = o(G S) | S|

2rb(G)
2r +1 .

2.1.44. COROLL ARY. If G is a connected cubic graph, then


(G)

n
b(G)

.
2
3

Proof: In a 3-regular graph, all edge-cuts between sets of odd size have
odd size, which is 1 or at least 3. Hence Lemma 2.1.43 yields the claim
(taking the floor of b(G)/3 is valid because (G) and n/2 are integers).
If in a connected graph G some set of maximum deficiency satisfies
1)n+2
the hypothesis of Lemma 2.1.43, then (G) n2 2r (2r+(2r
, by the
1)(2r 2 +2r 1)
BergeTutte Formula and Lemma 2.1.42. We prove this bound for all
connected odd-regular graphs. Lemma 2.1.41 proved equality for G H.

135

Chapter 2: Matching and Independence

2.1.45. THEOREM. If G Fn , then (G)

n
2

(2r 1)n+2
r
2 (2r +1)(2r 2 +2r 1) .

Proof: By the BergeTutte Formula, it suffices for every set S V(G) to


1)n+2
. By Lemma 2.1.43, we may assume
have deficiency at most r (2r+(2r
1)(2r 2 +2r 1)
that the size of the cut between S and some odd component of G S is
between 3 and 2r 1; call such a component of G S a bad subgraph.
For each edge e joining S to a bad subgraph, replace e with a cut-edge
incident to a copy of B at its end outside S. Also delete all vertices in bad
subgraphs. Let G denote the resulting graph; note that G is (2r + 1)regular. Unfortunately, G may be disconnected.
Let c be the number of bad subgraphs, and let x be the total number
of vertices in them. Let y be the total number of edges in G joining S to
bad subgraphs; y is the number of balloons added in forming G .
Let p be the number vertices in some bad subgraph Q. If p 2r + 1,
then regularity forces each vertex of Q to have at least 2r + 2 p neighbors
in S. Hence the number of edges from S to V(Q) is at least p(2r + 2
p), which is at least 2r + 1, contradicting that Q is a bad subgraph. We
conclude that p 2r + 3, and hence x (2r + 3)c.
The number of vertices in G is n x + (2r + 3)y. We also need the
number of components of G . Each time we pull an edge off a bad sub we increase the number of
graph Q and make it incident to a copy of B,
components by 0 or 1. Doing this with the last edge to Q (and deleting
V(Q)) does not change the number of components. Since G is connected,
we conclude that G has at most 1 + y c components.
The alteration from G to G ensures that S satisfies the hypotheses of Lemma 2.1.43 for G . Lemma 2.1.43 does not require connected
)
graphs, so def G (S) 2rb(G
2r +1 . However, applying Lemma 2.1.42 to replace
the number of balloons with upper bounds in terms of the number of vertices does require connected graphs. Therefore, we apply Lemma 2.1.42
to each component of G . We obtain an additive constant 2 in the nu+(2r +3)y)+2(1+ y c)
merator for each component. Thus b(G ) (2r1)(n x4r
. With
2 +4r 2
1)n+2
4r 2 +4r 1
(y

c).
+
x (2r + 3)c, we have b(G ) (2r
4r 2 +4r 2
4r 2 +4r 2
Meanwhile, we must also relate def G (S) to def G(S). We have replaced c odd components in G S with y odd components in G S. Thus
2rb(G )
(y c)
2r + 1
2r 4r 2 + 4r 1
r (2r 1)n + 2
(y c) (y c)
+

2
2r + 1 2r + 2r 1
2r + 1 4r 2 + 4r 2

Section 2.1: Existence of Matchings

2.1.46. COROLL ARY. If G is a connected n-vertex cubic graph, then


(G) 4n91 , and this is sharp infinitely often.
In fact, for G Fn equality holds in the bound of Theorem 2.1.45 if
and only if G H. We leave the proof of this to Exercise 92.

EXERCISES
2.1.1. () Determine the minimum size of a maximal matching in the cycle Cn .

2.1.2. () Let M be a 1-factor of the hypercube Qn . Let the weight of a vertex in


Qn be the number of ones in its binary sequence. Compute the number of edges
of M that join a vertex of weight k with a vertex of weight k + 1.
2.1.3. () Let G be an X , Y -bigraph such that | N(S)| > | S| whenever 6= S X .
Prove that every edge of G belongs to some matching that covers X .
2.1.4. () Prove that (G) | E(G)| /(G) when G is a bipartite graph.
2.1.5. () Prove that (G) (G)/2 for every graph G.

2.1.6. () Determine whether the graph below has a 1-factor.

2.1.7. () Find a maximum matching in the graph G below and in the graph G +
xy (add the edge xy). For each graph, use a dual problem to prove optimality.
(Caution: The smallest vertex cover in G + xy has eight vertices.)

def G(S) = def G (S) (y c)

Thus 2r(4r 2 + 4r 1) (2r + 1)(4r 2 + 4r 2) suffices. This inequality has


the form ( + 1)( 1) with < , and hence it holds.

136

137

Chapter 2: Matching and Independence

2.1.8. () Let G be a subgraph of K t ,t that has a perfect matching. For r t/2,


prove that if every matching of size r extends to a perfect matching in G, then
also every matching of size r 1 extends to a perfect matching in G.
2.1.9. () In a 0,1-matrix, a line is a row or a column. Two entries are independent if no line contains both of them. Prove that the maximum number of
pairwise independent 1s equals the minimum number of lines covering all the 1s.
2.1.10. () Let D be a digraph. Prove that there exist pairwise disjoint cycles in
D such that each vertex of D lies in exactly one of the cycles if and only if | N +(S)|
| S| for all S V(D). (Ore [1962])

2.1.11. () Let G be a connected regular bipartite graph. Obtain G from G by


deleting one vertex from each partite set. Prove that G has a perfect matching.

2.1.12. () The proof given for Corollary 2.1.6(the Marriage Theorem) uses Halls
Theorem. Prove it using the Konig-Egervary Theorem instead.

Section 2.1: Existence of Matchings

138

2.1.23. Construct a k-connected bipartite graph that has an edge belonging to


every maximum matching.
2.1.24. () A graph is t-extendable if every matching of size t extends to a perfect
matching. Prove that every regular bipartite graph is 1-extendable. For k 2,
construct a k-regular bipartite graph that is not 2-extendable.
2.1.25. () Let M be a matching in the hypercube Qd . Prove that if no vertices
in distinct edges of M are adjacent , then M extends to a perfect matching of Qd .
(VandenbusscheWest [2009])
2.1.26. For m n, let G be a subgraph of K m ,n that has a matching of size m.
Prove that at most (m2 ) edges of G belong to no matching of size m. Construct
examples to show this is best possible for all m and n.

2.1.13. () Prove that every maximal matching in a graph G has at least (G)/2
edges.

2.1.27. Let G be a graph with (G) = m. Prove that G has at most m(m 1)
edges that belong to no maximum matching. Construct examples to show that
this bound is best possible for every m. (F. Galvin)

2.1.14. () Let G be a nontrivial regular n-vertex graph. Prove that (G) n/2.
Prove that equality holds only if G is bipartite.

2.1.28. Let G be an X , Y -bigraph having a matching of size | X | . Let S and T be


subsets of X with | N(S)| = | S| and | N(T)| = | T | . Prove that | N(S T)| = | S T | .

2.1.15. () For k 2, let M be a perfect matching in the k-dimensional cube Qk .


Prove that M has an even number of edges whose endpoints differ in coordinate
i, for each i. Use this to count the perfect matchings in Q3 .
2.1.16. () Let M be a perfect matching in a k-regular graph G, where k is odd.
Prove that M contains every cut-edge of G.

2.1.17. () Show that in a connected graph of even order, every vertex in a minimal Tutte set S has neighbors in at least three odd components of G S.
2.1.18. For k 1, prove that the k-dimensional cube has at least 2
matchings.

2 k 1 1

perfect

2.1.19. Derive a formula for the number of matchings in K n ,n that do not match
xi to yi for any i, and for the number of matchings in K 2n that do not match x2i1
to x2i for any i. Use the Inclusion-Exclusion Principle to obtain a summation or
derive a recurrence; no simple closed formulas are available.
2.1.20. Given n red and n blue points in the plane, with no three on a line, prove
that there is a matching of red points to blue points by straight line segments so
that no two of the segments cross.
2.1.21. For k m n, characterize the maximal subgraphs of K m ,n that have no
matching of size k. Which have the most edges?
2.1.22. Let G be a graph with m edges and maximum degree k. Prove that every
maximal matching in G has size at least m/(2k 1). Prove that the bound is
sharp for infinitely many k-regular graphs. (BiedlDemaineDuncanFleischer
Kobourov [2004])

2.1.29. () Let G be an X , Y -bigraph. Prove that there exists x X such that


every edge incident to x belongs to some maximum matching. (Hint: Restrict to
a subset of X covered by some maximum matching.)
2.1.30. () Let G be an X , Y -bigraph with no isolated vertices, and suppose that
d(x) d(y) whenever xy E(G) with x X and y Y . Prove that G has a
matching that covers X . (F. Galvin)
2.1.31. Obtain a perfect matching in the graph below or use duality to give a
[1986])
short proof that it has none. (LovaszPlummer

2.1.32. Count the perfect matchings in the Petersen graph by proving that every
edge of the Petersen graph lies in exactly two perfect matchings. (F. Galvin)

2.1.33. Prove that a bipartite graph G has a perfect matching (1-factor) if and
only if | N(S)| | S| for all S V(G), and present an infinite class of examples to
prove that this characterization does not hold for all graphs.

139

Chapter 2: Matching and Independence

2.1.34. () Prove that a multigraph G with m edges has an orientation with specified outdegree d i at each vertex vi if and only if vi V(G) d i = m and vi U d i
| E(G[U])| for every U V(G). (Hakimi [1965])

2.1.35. () Let (G) denote the maximum density of a graph G, defined to be


max H G | E(H)| / | V(H)|. Prove that if (G) d, then G has an orientation in
which every vertex has outdegree at most d. (Tarsi [1981])

2.1.36. () A travel club is planning summer vacations. Trips t1 , . . . , t n are available, but trip ti has capacity ci . Each person likes some trips and will take at most
one. In terms of which people like which trips, derive a necessary and sufficient
condition for being able to fill all trips (to capacity) with people who like them.

2.1.37. () Consider a deck of cards with m values and n suits, each value occuring on one card in each suit. Arrange the cards in an n by m array. Prove that
a sequence of exchanges of cards of the same value can produce a new array with
each column having n cards of distinct suits. (Enchev [1997])

2.1.38. () Apply Halls Theorem to prove the characterization of score sequences


of tournaments due to Landau [1953]. That is, there is a tournament with outdegrees d1 , . . . , d n if and only if for k [n] the k smallest of these numbers sum
to at least (k2) , with equality when k = n. (BangSharp [1979])

2.1.39. () Let G be a spanning subgraph of K n ,n . Prove that (G) min{n , 2(G)}.


2.1.40. () Let G be an n-vertex graph. Prove that (G) min{ n/2 , (G).

2.1.41. (+) Forcing forests in graphs with large minimum degree.


a) Let F be a forest with at most k + 1 vertices, and let G be a graph with
minimum degree at least k. Let F be a forest obtained from F by iteratively
deleting leaves from F . Prove that any copy H of F in G is contained in a copy
H of F in G.
b) Let F be a forest with at most k edges, and let G be a graph with at least
as many vertices as F . Prove that if (G) k, then F G. (Brandt [1994])
2.1.42. () Let T be a set of k permutations of [n]. Prove that if k n/2, then
there is some permutation of [n] that disagrees in every position with every member of T . Prove that if k > n/2, then there is some choice of T for which there is
no such permutation. (K e zdy-Snevily; see Cameron-Wanless [2005])

2.1.43. Let A1 , . . . , A m be a family of k-sets such that each element of the union
lies in at most of the sets. Prove that there exist disjoint B1 , . . . , Bm of size
k/ such Bi Ai for all i. (Jiang [2010])

2.1.44. Let r and d be integers with 0 r d. Let G be a loopless multigraph


with every vertex having degree d or d + 1. Prove that G has a spanning subgraph
with every vertex having degree r or r + 1. (Hint: When r = d 1, what is the
hardest case?) (Thomassen [1981])

2.1.45. () Let G be an X , Y -bigraph with no isolated vertices and with | X |


| Y | . Prove that Halls Condition (| N(A)| | A| for all A X) is equivalent to the
statement that | B| | N(B)| | Y | | X | for all B Y .

Section 2.1: Existence of Matchings

140

2.1.46. Define the m-deficiency (v) and m-excess (v) of a vertex v by (v) =
max{0 , m def(v)} and (v) = max{0 , def(v) m}. Let G be a bipartite graph
with partite sets X and Y of equal size. Prove that if there is a positive integer m
such that x X (x) + y Y (y) < m, then G has a perfect matching. (Ore [1962])
2.1.47. Let G n be the class of 3-regular connected graphs with n white vertices,
n black vertices, and no monochromatic cycles. A consistent orientation of G G n
is an orientation in which every white vertex has exactly two incoming edges and
every black vertex has exactly two outgoing edges. (Prather, MAA)
a) Prove that if G G n has d edges with both endpoints white, then G also
has d black edges, and the subgraph induced by each color is a forest consisting
of k = n d trees W1 , . . . , Wk and B1 , . . . , Bk .
b) Given the 2k trees described in part (a), let M(G) denote the k k matrix
in which entry mi , j is the number of edges from Wi to Bj . Prove that the number
of consistent orientations of G is the permanent of M(G).
c) Find the least n such that G n has a graph with no consistent orientation.
d) For even n, construct a member of G n for which the number of consistent
orientations is 1 + 3n/2 .

2.1.48. A positional game consists of a set X of positions and a family W1 , . . . , Wm


of winning sets of positions (Tic-Tac-Toe has nine positions and eight winning
sets). Two players alternately choose positions; the player who first occupies the
positions of a winning set wins. Let a be the minimum size of a winning set , and
let b be the maximum number of winning sets containing a given position. Prove
that Player 2 can force a draw if a 2b. Conclude that Player 2 can force a draw
in d-dimensional Tic-Tac-Toe if the sides are long enough. (Comment: For fixed
side-length, Player 1 can win if the dimension is large enough; see Chapter 18.)
2.1.49. Determine the maximum number of edges in a bipartite graph having
no matching with k edges and no star with l edges. (Isaak)

2.1.50. () Prove that every subgraph of K n ,n with more than (k 1)n edges has
a matching of size at least k.
2.1.51. Use the K o nigEgervary
Theorem to prove Halls Theorem.
Use Halls Theorem to prove the K o nigEgervary
Theorem.
2.1.52. (+) Let G be a bipartite graph, and let G be a minimal spanning subgraph of G with (G) = (G). Prove that G has no two incident edges, and use
this to prove the K o nigEgervary
Theorem. (Hint: When G has edges e1 and e2
at x, let S1 and S2 be minimal vertex covers of G e1 and G e2 , respectively.
Add to S1 S2 a vertex cover of G [(S1 S2) {x}].) (Lovasz
[1975])

2.1.53. (+) Let G be a connected X , Y -bigraph with girth at least 2s, and suppose
that the distance between any two 1-valent vertices of X is at least 2s. Prove that
every subset of X with size at most s is covered by some matching in G. (Hint:
Consider a smallest subset of X that cannot be covered.) (HorakTuza)
2.1.54. (+) KonigEgervary
Theorem for infinite graphs. Let G be an infinite bipartite graph. Prove that G has a matching M and a vertex cover S such that

141

Chapter 2: Matching and Independence

every edge of M contains one element of S and every element of S lies in an edge
of M. (Aharoni [1984]) ***check this***
2.1.55. Let e be an edge of a digraph G. Prove that (G e) (G) 1.
2.1.56. Let A1 , . . . , A m and B1 , . . . , Bm be two partitions of a set E such that all
the sets Ai and Bj have the same size. Prove that the two families have a CSDR.
(Ryser [1963, p51])

2.1.57. Menger s Theorem and the FordFulkerson Theorem (Theorem 2.1.21)


can be proved without using Halls Theorem. Apply each to prove Halls Theorem.
2.1.58. Prove that a tree T has a perfect matching if and only if o(T v) = 1 for
every v V(T). (Chungphaisan)
2.1.59. () For each k > 1, construct a k-regular graph having no 1-factor.

2.1.60. () Over graphs with (G) = k, determine the maximum value of (G).
For each pair (a , b) such that there exists a graph G with (G) = a and (G) = b,
construct such a graph.
2.1.61. Prove that every graph G without isolated vertices has a matching of size
at least | V(G)| /(1 + (G)). (Hint: Apply induction on | E(G)| .) (Weinstein [1963])
2.1.62. Prove that the maximum number of edges in a graph on 2n vertices that
has no 1-factor is (2n21 ).

2.1.63. () Prove Halls Theorem from Tuttes 1-Factor Theorem. (Hint: Transform an X , Y -bigraph H into a graph G that has a 1-factor if and only if H has a
matching that covers X .)
2.1.64. () Prove the BergeTutte Formula from Tuttes 1-Factor Theorem.
2.1.65. Use Tuttes 1-factor Theorem to prove that a connected line graph of even
order has a perfect matching. Conclude that the edges of a connected graph of
even size can be partitioned into paths of length two.
2.1.66. Prove that every connected claw-free graph of even order has a 1-factor.
(Hint: Prove the stronger result that the last edge in a longest path belongs to a
1-factor in G.) (Sumner [1974a], Las Vergnas [1975])

2.1.67. () Let G be an r-connected graph of even order not having K1 ,r+1 as an


induced subgraph. Prove that G has a 1-factor. (Sumner [1974b])

2.1.68. Let T be a set of vertices in a graph G. Prove that G has a matching


that covers T if and only if for all S V(G), the number of odd components of
G S contained in G[T] is at most | S|. Extend this to a min-max relation for the
maximum number of vertices in T covered by a matching in G. (Lovasz
[1965])
2.1.69. For tensor product G H of graphs G and H is the graph with vertex
set V(G) V(H) having (u , v) and (u , v) adjacent if and only if uu E(G) and
vv E(H). Prove that for a graph G, the following conditions are equivalent (J.

Section 2.1: Existence of Matchings

142

George [1993]):
A) For every graph H , G H has no 1-factor.
B) G K 2 has no 1-factor.
C) For some S V(G), the graph G S has more than | S| isolated vertices.

2.1.70. () Let G be an n-vertex graph with m edges. Prove that (G) n/2 + m/6,
with equality only when every component of G is K3 or K4 . (Hint: Use induction
on n and consider cases depending on (G).) HenningYeo [2013])

2.1.71. () Extension of KonigEgervary


Theorem to general graphs. Given a graph
G, let S1 , . . . , Sk and T be subsets of V(G) such that each Si has odd size. These
sets form a generalized cover of G if every edge of G has at least one endpoint in
T or both endpoints in some Si . The weight of a generalized cover is | T |+ (| Si |
1)/2. Let (G) be the minimum weight of a generalized cover. Prove that (G) =
(G). (Hint: Use the BergeTutte Formula (Theorem 2.1.28). Comment: Every
vertex cover is a generalized cover, and thus (G) (G).)
2.1.72. (+) For k N, let G be a graph with at least 2k vertices such that (G)
k. Prove that (G) k. (Hint: Apply Theorem 2.1.28.) (Brandt [1994])

2.1.73. For every k N that is even and at least 6, construct a k-regular connected graph having no subgraph in which (k 6)/2 vertices have degree k and
the rest have degree k 1.
2.1.74. Let G be a graph of even order n having a Tutte set of size k. Prove that
1
G has at most (k2) + k(n k) + (n2k
) edges, and this is sharp. Determine the
2
maximum size of a n-vertex graph with no 1-factor. (ErdosGallai [1961])
2.1.75. Let Gn ,d be the family of graphs having n vertices and minimum degree
d. For a with the same parity as n, determine a graph G Gn ,d having the most
edges among those with (G) = (n a)/2.
2.1.76. Let G be a graph, and let X , Y denote disjoint subsets of V(G). Let k be
the maximum number of edges in an induced subgraph of G that is a matching.
Prove that k equals the maximum, over all choices of X , Y , of the minimum size of
a subset of X whose neighborhood includes all of Y . (Equivalently, G is (k + 1)K 2 free if and only if for each choice for all disjoint X , Y V(G), there is a set of size
at most k in X whose neighborhood contains N(X) Y . (LiuZhou [1997])
2.1.77. Let G be a 3-regular graph.
a) Prove that if all the cut-edges in G lie on a single path, then G has a 1factor. (Errera [1922])
b) Conclude from part (a) that G has a 1-factor if G has at most two cutedges, but show that this may fail when G has three cut-edges. (Petersen [1891])
2.1.78. () Let G be a 3-regular graph. Prove that the following are equivalent.
A) G has no cut-edge.
B) G has a 1-factor.
C) G decomposes into copies of P4 . (BouchetFouquet [1983])

2.1.79. () Fix k N with k 2. Let l be the least odd number greater than k.
Prove that the minimum number of vertices in a k-regular (k 2)-edge-connected

143

Chapter 2: Matching and Independence

graph G of even order with no 1-factor is (l + 1)k 2. (Hint: When G has fewer vertices, to prove that G has no Tutte set , treat the large odd components and small
odd components of G S differently.) (Katerinis [1987]; see NiessenRanderath
[1998] for a more general result.)
2.1.80. Let G be a k-regular multigraph of even order, and let G be obtained
from G by deleting k 1 edges. Theorem 2.1.34 shows that G has a 1-factor if G
is (k 1)-edge-connected. Strengthen this result by weakening the hypothesis to
the condition that for any set S V(G) of odd size, there are at least k 1 edges
with endpoints in both S and V(G) S. (Cruse [1977])

2.1.81. (+) Let G be a 2n-vertex graph. Let P(c) be the condition that | N(S)|
c | S| for all S V(G) with | S| 2n/c. Let Q be the condition of having a 1-factor.
a) Prove that P(4/3) Q. (Hint: In proving that o(G S) | S| for all S,
consider the set T consisting of the vertices in all but one odd component of G S.
Comment: In fact , P(c) Q whenever c 4/3.))
b) Use K r (r + 2)K3 to prove that P(c) 6 Q when c < 4/3. (Anderson [1973])
2.1.82. Prove that every nontrivial vertex-transitive graph of even order has a
perfect matching.
2.1.83. Let G be a graph in which the subgraph induced by the vertices of maximum degree is bipartite. Prove that G has a matching that covers these vertices.
2.1.84. (Gallais Lemma). Prove the statements below without using the
GallaiEdmonds Structure Theorem.
a) If v is a vertex in a graph G of odd order, then G v has a 1-factor if and
only if G has no Tutte set containing v.
b) A connected graph is factor-critical if and only if is its only Tutte set.
c) A connected graph G is factor-critical if and only if no vertex belongs to
every maximum matching (so (G v) = (G) for all v V(G)). (Gallai [1963a])

2.1.85. (Stability Lemma) Let A , C, D and A , C , D be the sets in the Gallai


Edmonds Decompositions of G and G , respectively, where G = G u for some
vertex u in A. Prove that (G) = (G) 1, A = A u, C = C, and D = D.
(Comment: These statements can be proved from Theorem 2.1.32. They also can
be proved directly and used as a lemma in an inductive proof of Theorem 2.1.32
that also uses Exercise 2.1.84.)
2.1.86. Prove the BergeTutte Formula (Theorem 2.1.28) from Gallais Lemma
(Exercise 2.1.84)). (Hint: Show that def(G v) def(G) + 1 for each vertex v in
a graph G, where def(G) = max S V(G) def(S).)

2.1.87. Let v be a vertex in a factor-critical graph G. Let G be a connected graph


obtained from G by splitting v into two vertices whose neighborhoods partition
NG(v). Prove that G has a 1-factor. Show that the connectedness assumption for
G cannot be dropped. (Hint: Exercise 2.1.84 may be used or avoided.)
2.1.88. Let G be a connected graph such that every block of G is a triangle, and
every vertex of G has degree 2 or 4.
a) Prove that G is factor-critical.

Section 2.1: Existence of Matchings

144

b) Prove that for every odd subset S of the 2-valent vertices, G S has a
[1986, p89])
unique perfect matching. (LovaszPlummer

2.1.89. Prove Tuttes 1-Factor Theorem from the GallaiEdmonds Structure


Theorem.
2.1.90. Graphs with unique 1-factors.
a) Prove that every k-edge-connected graph having a 1-factor has at least k
1-factors.
b) Prove that the largest minimum degree of a 2n-vertex graph having exactly one 1-factor is lg(n + 1) . (Lovasz
[1972])
c) Prove that the maximum number of edges in a 2n-vertex graph having
exactly one 1-factor is n2 . (Hetyei, in Lovasz
[1972])

2.1.91. Use Theorem 2.1.45 to prove that every (2r + 1)-regular graph with n
vertices has matching number at least 2n 4(rrn
, and this is sharp.
+1)2

2.1.92. Prove that the graphs in H characterize equality in Theorem 2.1.45.


That is, prove that every graph with the smallest matching number among those
in Fn in fact lies in H . (OWest [2010])

2.1.93. (+) Prove that the graphs in family Fn of Definition 2.1.39 with the most
cut-edges are precisely those in H of Example 2.1.40. That is,
r(n2)2
a) Prove that every graph in Fn H has 2r
2 + 2r1 1 cut-edges.
b) For G Fn , prove that G has at least
only if G H . (OWest [2010])

r(n2)2
2r 2 +2r1

1 cut-edges, with equality

2.1.94. For m n/2, with n even, determine the n-vertex multigraph with m
edges that has the most perfect matchings. (HajekNarayanan [1994])
2.1.95. Find an exponential (in k) lower bound on the number of 1-factors in the
[19??])
k-dimensional cube Qk . (ClarkGeorgePorter [1997], LovaszPlummer

2.1.96. A {K 2 , K3 }-factor of a graph G is a partition of V(G) into cliques of sizes


2 and 3. Let o(H) be the number of triangle-free components of H that have an
odd number of vertices. Define def (S) = o(G S) | S| for S V(G), and let
def (G) = max S def (S). Let T be a maximal nonempty set that maximizes def .
Prove that def (G) = 0 is a necessary and sufficient condition for a graph G with
no chordless odd cycle of length at least 5 to have a {K 2 , K3 }-factor. It is helpful
to prove the following statements about a minimal counterexample. (Comment:
Prohibiting chordless odd cycles is necessary: find a graph G such that def (G) =
0 that has no {K 2 , K3 }-factor.) (CornuejolsHartvigsen [1986])
a) Every component of G T that contains a triangle has a {K 2 , K3 }-factor.
b) If | T | = 1 and o(G T) = 0, then G has a {K 2 , K3 }-factor.
c) If | T | > 1, v T , and H is a component of G T that contains a triangle,
then G[V(H) {v}] has a {K 2 , K3 }-factor.
d) Every triangle-free component of G T is a single vertex.
e) Every odd cycle C in G has a set X of three vertices such that G[X ] is a
triangle and C decomposes into three paths of even order with endpoints in X .

Das könnte Ihnen auch gefallen