Dulmage–Mendelsohn Decomposition
   HOME

TheInfoList



OR:

In
graph theory In mathematics and computer science, graph theory is the study of ''graph (discrete mathematics), graphs'', which are mathematical structures used to model pairwise relations between objects. A graph in this context is made up of ''Vertex (graph ...
, the Dulmage–Mendelsohn decomposition is a partition of the vertices of a
bipartite graph In the mathematics, mathematical field of graph theory, a bipartite graph (or bigraph) is a Graph (discrete mathematics), graph whose vertex (graph theory), vertices can be divided into two disjoint sets, disjoint and Independent set (graph theo ...
into subsets, with the property that two adjacent vertices belong to the same subset if and only if they are paired with each other in a
perfect matching In graph theory, a perfect matching in a graph is a matching that covers every vertex of the graph. More formally, given a graph with edges and vertices , a perfect matching in is a subset of , such that every vertex in is adjacent to exact ...
of the graph. It is named after A. L. Dulmage and Nathan Mendelsohn, who published it in 1958. A generalization to any graph is the Edmonds–Gallai decomposition, using the
Blossom algorithm In graph theory, the blossom algorithm is an algorithm for constructing maximum matchings on Graph (discrete mathematics), graphs. The algorithm was developed by Jack Edmonds in 1961, and published in 1965. Given a general Graph (discrete mathema ...
.


Construction

The Dulmage-Mendelshon decomposition can be constructed as follows. (it is attributed to who in turn attribute it to ). Let ''G'' be a bipartite graph, ''M'' a maximum-cardinality matching in ''G'', and ''V''0 the set of vertices of ''G'' unmatched by ''M'' (the "free vertices"). Then ''G'' can be partitioned into three parts: * ''E'' - the ''even'' vertices - the vertices reachable from ''V''0 by an ''M''-alternating path of even length. * ''O'' - the ''odd'' vertices - the vertices reachable from ''V''0 by an ''M''-alternating path of odd length. * ''U'' - the ''unreachable'' vertices - the vertices unreachable from ''V''0 by an ''M''-alternating path. An illustration is shown on the left. The bold lines are the edges of ''M''. The weak lines are other edges of ''G''. The red dots are the vertices of ''V''0. Note that ''V''0 is contained in ''E'', since it is reachable from ''V''0 by a path of length 0. Based on this decomposition, the edges in G can be partitioned into six parts according to their endpoints: ''E-U, E-E, O-O, O-U, E-O, U-U''. This decomposition has the following properties: # The sets ''E'', ''O'', ''U'' are pairwise-disjoint. ''Proof'': ''U'' is disjoint from ''E'' and ''O'' by definition. To prove that ''E'' and ''O'' are disjoint, suppose that some vertex ''v'' has both an even-length alternating path to an unmatched vertex ''u1'', and an odd-length alternating path to an unmatched vertex ''u2''. Then, concatenating these two paths yields an augmenting path from ''u1'' through ''v'' to u2. But this contradicts the assumption that ''M'' is a maximum-cardinality matching. # The sets ''E'', ''O'', ''U'' do not depend on the maximum-cardinality matching ''M'' (i.e., any maximum-cardinality matching defines exactly the same decomposition). # G contains only ''O-O, O-U, E-O'' and ''U-U'' edges. # Any maximum-cardinality matching in ''G'' contains only ''E-O'' and ''U-U'' edges. # Any maximum-cardinality matching in ''G'' saturates all vertices in ''O'' and all vertices in ''U''. # The size of a maximum-cardinality matching in G is , ''O'', + , ''U'', / 2. # If G has a perfect matching, then all vertices of ''G'' are in ''U''.


Alternative definition


The coarse decomposition

Let ''G'' = (''X+Y'',''E'') be a bipartite graph, and let ''D'' be the set of vertices in ''G'' that are not matched in at least one
maximum matching Maximum cardinality matching is a fundamental problem in graph theory. We are given a graph , and the goal is to find a matching containing as many edges as possible; that is, a maximum cardinality subset of the edges such that each vertex is a ...
of ''G''. Then ''D'' is necessarily an independent set. So ''G'' can be partitioned into three parts: #The vertices in ''D'' ∩ ''X'' and their neighbors; #The vertices in ''D'' ∩ Y and their neighbors; #The remaining vertices. Every maximum matching in ''G'' consists of matchings in the first and second part that match all neighbors of ''D'', together with a
perfect matching In graph theory, a perfect matching in a graph is a matching that covers every vertex of the graph. More formally, given a graph with edges and vertices , a perfect matching in is a subset of , such that every vertex in is adjacent to exact ...
of the remaining vertices. If ''G'' has a perfect matching, then the third set contains ''all'' vertices of G.


The fine decomposition

The third set of vertices in the coarse decomposition (or all vertices in a graph with a perfect matching) may additionally be partitioned into subsets by the following steps: *Find a perfect matching of ''G''. *Form a directed graph ''H'' whose vertices are the matched edges in ''G''. For each unmatched edge (''x,y'') in ''G'', add a directed edge in ''H'' from the matched edge of ''x'' to the matched edge of ''y''. *Find the
strongly connected component In the mathematics, mathematical theory of directed graphs, a graph is said to be strongly connected if every vertex is reachability, reachable from every other vertex. The strongly connected components of a directed graph form a partition of a s ...
s of the resulting graph. *For each component of ''H'', form a subset of the Dulmage–Mendelsohn decomposition consisting of the vertices in ''G'' that are endpoints of edges in the component. To see that this subdivision into subsets characterizes the edges that belong to perfect matchings, suppose that two vertices ''x'' and ''y'' in ''G'' belong to the same subset of the decomposition, but are not already matched by the initial perfect matching. Then there exists a strongly connected component in ''H'' containing edge ''x,y''. This edge must belong to a
simple cycle In graph theory, a cycle in a graph is a non-empty trail in which only the first and last vertices are equal. A directed cycle in a directed graph is a non-empty directed trail in which only the first and last vertices are equal. A graph with ...
in ''H'' (by the definition of strong connectivity) which necessarily corresponds to an alternating cycle in ''G'' (a cycle whose edges alternate between matched and unmatched edges). This alternating cycle may be used to modify the initial perfect matching to produce a new matching containing edge ''x,y''. An edge ''x,y'' of the graph ''G'' belongs to all perfect matchings of ''G'', if and only if ''x'' and ''y'' are the only members of their set in the decomposition. Such an edge exists if and only if the
matching preclusion In graph theory, a branch of mathematics, the matching preclusion number of a graph ''G'' (denoted mp(''G'')) is the minimum number of edges whose deletion results in the elimination of all perfect matchings or near-perfect matchings (matchings tha ...
number of the graph is one.


Core

As another component of the Dulmage–Mendelsohn decomposition, Dulmage and Mendelsohn defined the ''core'' of a graph to be the union of its maximum matchings.. However, this concept should be distinguished from the
core Core or cores may refer to: Science and technology * Core (anatomy), everything except the appendages * Core (laboratory), a highly specialized shared research resource * Core (manufacturing), used in casting and molding * Core (optical fiber ...
in the sense of graph homomorphisms, and from the ''k''-core formed by the removal of low-degree vertices.


Applications

This decomposition has been used to partition meshes in
finite element analysis Finite element method (FEM) is a popular method for numerically solving differential equations arising in engineering and mathematical models, mathematical modeling. Typical problem areas of interest include the traditional fields of structural ...
, and to determine specified, underspecified and overspecified equations in systems of nonlinear equations. It was also used for an algorithm for
rank-maximal matching Rank-maximal (RM) allocation is a rule for fair division of indivisible items. Suppose we have to allocate some items among people. Each person can rank the items from best to worst. The RM rule says that we have to give as many people as possible ...
.


Asymmetric variant

In there is a different decomposition of a bipartite graph, which is asymmetric - it distinguishes between vertices in one side of the graph and the vertices on the other side. It can be used to find a maximum-cardinality
envy-free matching In economics and social choice theory, an envy-free matching (EFM) is a matching between people to "things", which is envy-free in the sense that no person would like to switch their "thing" with that of another person. This term has been used in ...
in an unweighted bipartite graph, as well as a minimum-cost maximum-cardinality matching in a weighted bipartite graph.


References


External links

*A good explanation of its application to systems of nonlinear equations is available in this paper

*An open source implementation of the algorithm is available as a part of the sparse-matrix library
SPOOLES
*Graph-theoretical aspects of constraint solving in the SST project

{{DEFAULTSORT:Dulmage-Mendelsohn decomposition Graph algorithms Matching (graph theory)