Matching polytope


In graph theory, the matching polytope of a given graph is a geometric object representing the possible matchings in the graph. It is a convex polytope each of whose corners corresponds to a matching. It has great theoretical importance in the theory of matching.

Preliminaries

Incidence vectors and matrices

Let G = be a graph with n = |V| nodes and m = |E| edges.
For every subset U of vertices, its incidence vector 1U is a vector of size n, in which element v is 1 if node v is in U, and 0 otherwise. Similarly, for every subset F of edges, its incidence vector 1F is a vector of size m, in which element e is 1 if edge e is in F, and 0 otherwise.
For every node v in V, the set of edges in E adjacent to v is denoted by E. Therefore, each vector 1E is a 1-by-m vector in which element e is 1 if edge e is adjacent to v, and 0 otherwise. The incidence matrix of the graph, denoted by AG, is an n-by-m matrix in which each row v is the incidence vector 1E. In other words, each element v,''e in the matrix is 1 if node v'' is adjacent to edge e, and 0 otherwise.
Below are three examples of incidence matrices: the triangle graph, a square graph, and the complete graph on 4 vertices.

Linear programs

For every subset F of edges, the dot product 1E · 1F represents the number of edges in F that are adjacent to v. Therefore, the following statements are equivalent:
  • A subset F of edges represents a matching in G;
  • For every node v in V: 1E · 1F ≤ 1.AG · 1F 1V.
The cardinality of a set F of edges is the dot product 1E · 1F . Therefore, a maximum cardinality matching in G is given by the following integer linear program:
Maximize 1E · x
Subject to: x in m
__________ AG · x 1V.

Fractional matching polytope

The fractional matching polytope of a graph G, denoted FMP, is the polytope defined by the relaxation of the above linear program, in which each x may be a fraction and not just an integer:
Maximize 1E · x
Subject to: x0E
__________ AG · x 1V.
This is a linear program. It has m "at-least-0" constraints and n "less-than-one" constraints. The set of its feasible solutions is a convex polytope. Each point in this polytope is a fractional matching. For example, in the triangle graph there are 3 edges, and the corresponding linear program has the following 6 constraints:
Maximize x1+x2+x3
Subject to: x1≥0, x2≥0, x3≥0.
__________ x1+x2≤1, x2+x3≤1, x3+x1≤1.
This set of inequalities represents a polytope in R3 - the 3-dimensional Euclidean space.
The polytope has five corners. These are the points that attain equality in 3 out of the 6 defining inequalities. The corners are,,,, and. The first corner represents the trivial matching. The next three corners,, represent the three matchings of size 1. The fifth corner does not represent a matching - it represents a fractional matching in which each edge is "half in, half out". Note that this is the largest fractional matching in this graph - its weight is 3/2, in contrast to the three integral matchings whose size is only 1.
As another example, in the 4-cycle there are 4 edges. The corresponding LP has 4+4=8 constraints. The FMP is a convex polytope in R4. The corners of this polytope are,,,,,,. Each of the last 2 corners represents matching of size 2, which is a maximum matching. Note that in this case all corners have integer coordinates.

Integral matching polytope

The integral matching polytope of a graph G, denoted MP, is a polytope whose corners are the incidence vectors of the integral matchings in G.
MP is always contained in FMP. In the above examples:
  • The MP of the triangle graph is strictly contained in its FMP, since the MP does not contain the non-integral corner.
  • The MP of the 4-cycle graph is identical to its FMP, since all the corners of the FMP are integral.

The matching polytopes in a bipartite graph

The above example is a special case of the following general theorem:
G is a bipartite graph if-and-only-if MP = FMP if-and-only-if all corners of FMP have only integer coordinates.
This theorem can be proved in several ways.

Proof using matrices

When G is bipartite, its incidence matrix AG is totally unimodular - every square submatrix of it has determinant 0, +1 or −1. The proof is by induction on k - the size of the submatrix. The base k = 1 follows from the definition of AG - every element in it is either 0 or 1. For k>1 there are several cases:
  • If K has a column consisting only of zeros, then det K = 0.
  • If K has a column with a single 1, then det K can be expanded about this column and it equals either +1 or -1 times a determinant of a by matrix, which by the induction assumption is 0 or +1 or −1.
  • Otherwise, each column in K has two 1s. Since the graph is bipartite, the rows can be partitioned into two subsets, such that in each column, one 1 is in the top subset and the other 1 is in the bottom subset. This means that the sum of the top subset and the sum of the bottom subset are both equal to 1E minus a vector of |E| ones. This means that the rows of K are linearly dependent, so det K = 0.
As an example, in the 4-cycle, the det AG = 1. In contrast, in the 3-cycle, det AG = 2.
Each corner of FMP satisfies a set of m linearly-independent inequalities with equality. Therefore, to calculate the corner coordinates we have to solve a system of equations defined by a square submatrix of AG. By Cramer's rule, the solution is a rational number in which the denominator is the determinant of this submatrix. This determinant must by +1 or −1; therefore the solution is an integer vector. Therefore all corner coordinates are integers.
By the n "less-than-one" constraints, the corner coordinates are either 0 or 1; therefore each corner is the incidence vector of an integral matching in G. Hence FMP = MP.

The facets of the matching polytope

A facet of a polytope is the set of its points which satisfy an essential defining inequality of the polytope with equality. If the polytope is d-dimensional, then its facets are -dimensional. For any graph G, the facets of MP are given by the following inequalities:x0E1E · x ≤ 1 .1E · x ≤ /2

Perfect matching polytope

The perfect matching polytope of a graph G, denoted PMP, is a polytope whose corners are the incidence vectors of the integral perfect matchings in G. Obviously, PMP is contained in MP; In fact, PMP is the face of MP determined by the equality:
1E · x = n/2.
Edmonds proved that, for every graph G, PMP can be described by the following constraints:
1E · x = 1 for all v in V
1E · x ≥ 1 for every subset W of V with |W| odd. These constraints are called odd cut constraints.
x0E
Using this characterization and Farkas lemma, it is possible to obtain a good characterization of graphs having a perfect matching. By solving algorithmic problems on convex sets, one can find a minimum-weight perfect matching.