On an Algorithm of G. Birkhoff Concerning Doubly
Total Page:16
File Type:pdf, Size:1020Kb
ON AN ALGORITHM OF G. BIRKHOFF CONCERNING DOUBLY STOCHASTIC MATRICES Diane M. Johnson, A.L. Dulmage and N.S. Mendelsohn (received June 20, I960) In [1] G. Birkhoff stated an algorithm for expressing a doubly stochastic matrix as an average of permutation matrices. In this note we prove two graphical lemmas and use these to find an upper bound for the number of permutation matrices which the Birkhoff algorithm may use. A doubly stochastic matrix is a matrix of non-negative elements with row and column sums equal to unity and is there fore a square matrix. A permutation matrix is an n x n doubly stochastic matrix which has n^-n zeros and consequently has n ones, one in each row and one in each column. It has been shown by Birkhoff [1],Hoffman and Wielandt [5] and von Neumann [7] that the set of all doubly stochastic matrices, considered as a set of points in a space of n^ dimensions con stitute the convex hull of permutation matrices. In other words, any doubly stochastic matrix A is expressible as a linear combination cjA} + CZ-^Z + ••• + ct^t wnere tne Aj are permutation matrices and the c^ are ^ 0 with £3 c^ = 1. We say A is an average of Aj, A£, . .. , At. The graph of an m x n matrix A = (an) of non-negative elements is the bipartite graph K for which one vertex set is the set S=(sj, S2> •••> srn) of rows and the other vertex set is the set T = (t^, t£> . ••> tn) of columns* The unordered pair [S£, tj] is an edge of K if and only if a]j is greater than zero. The edges of K corresponding to the places where a 1 appears in a permutation matrix will be called a diagonal of edges of K. Research supported in part by the United States Air Force Office of Scientific Research under Contract AF49(638)-860. Canad. Math. Bull. vol. 3, no. 3, September I960 237 Downloaded from https://www.cambridge.org/core. 29 Sep 2021 at 10:55:44, subject to the Cambridge Core terms of use. In [3] and [4] the structure and canonical decomposition of a bipartite graph have been discussed and an irreducible graph has been defined in [4]. LEMMA 1. A bipartite graph K is the graph of some doubly stochastic matrix if and only if the canonical decompo sition of K is the disjoint union of irreducible subgraphs. Proof. Let A be an n X n doubly stochastic matrix and let K be its bipartite graph. Since a doubly stochastic matrix is an average A = c^A^ + c2"^2 + • • • + cf^t °^ Perma~ tation matrices, every non-zero element aii = cl e 1 + c2 e 2 + * • • + ct *~t w^ere £ i = 1 or 0 for all i and there exists at least one integer p, Upst, such that L p = 1. The presence of CpAp in the expression for A ensures that the edge [s^, tj] belongs to a diagonal of edges in K* Thus every edge of K is admissible [3.1 and the graph of K is identical with the first core of K. In the canonical decompo sition, as displayed in figure 1 of [4], there can be no rectan gular blocks such as Xj[ x W^ or U^ * V^ for each such block contains a subgraph of K which is the graph of a doubly stochastic submatrix of A and every doubly stochastic matrix is square. Thus the canonical decomposition of K consists of k disjoint irreducible subgraphs G± with vertex sets S^ and Conversely if K is the union of disjoint irreducible sub graphs, a doubly stochastic matrix A for which K is the graph can be constructed as follows. Let N be the number of edge s « There exists at least one diagonal containing each edge. Let A| be a pe-rmutation matrix the graph of which is a diagonal through the i th edge. The matrix 1 5T- n is a doubly stochastic matrix which has K as graph. In [3] the exterior dimension E(K) of a bipartite graph K is defined. LEMMA 2. Let K be an n x n bipartite graph which has a canonical decomposition consisting of k disjoint irredu cible subgraphs and let K1 be any proper subgraph of K which has a canonical decomposition consisting of k1 (k1 > k) disjoint irreducible subgraphs with E(K) = E(K!) = n. If p is the 238 Downloaded from https://www.cambridge.org/core. 29 Sep 2021 at 10:55:44, subject to the Cambridge Core terms of use. number of blocks of the core of the decomposition which have the same vertex sets in K and K!, and if N(K) and N(K!) are respectively the number of edges in K and K1 respectively, then N(K) - N(K!) > k« - p. Proof, Using the notation of [43 section 3, K is the union of k disjoint irreducible subgraphs G^ = (S^ x TjJ r\ K for i = 1, 2, . * , k. Let N(G|) = n^, nj -f n2 + . + n^ = N(K). K1 is the union of k! disjoint irreducible subgraphs 1 1 G'i = (S^ x T^) A K for i = 1, 2, .. , k . Let ! ! ! f ! NfG^) = n i, n x + n 2 + . + n k»= N(K ). We may index the blocks of the core so that we have G1^ C G^ for i = 1, 2, . .. , p. Thus n£ > n\ for i = 1, 2, . , p. There exist = k! qx > 1, q2 > 1, . , q^.p > 1, where <n + q2 + . + <lk-p " P> such that the union of the q^ disjoint irreducible subgraphs G!pfl> G,p+2> •••» G!pfqi îs a subgraph of Gj^i and, in general, the union of the qm disjoint irreducible subgraphs ! ! ! G , G „, . , G (h = q, + qo + . + q J ^m+1 hm+2 Vfe m l Z m'1 is a subgraph of G , m = 1, 2, . , k - p. ° p+ m Now consider the induced graph which results from the ï I 1 partitions Sp^l = S pfluS pf2 u ... uS ^^, ! G Tp+l = T p+x uT'p+2 u ... ^T'p+qx » pfl* Since ! (S'p+j x T p^j) n Gp^i is irreducible for j= 1, 2, ,.., qlt the induced qj X q^ bipartite graph I is irreducible by [4] theorem 3 and hence has at least 2q edges. Thus I has at ! least qx edges in addition to CS'^j, T ^.j ] , j = 1, 2, . • . , q1# It follows that Gp+i has at least q^ edges which are not edges of Glp+i uGlp+2 u ••• vGVqi* Thus qi n v n. + q pfi * Lj=1 Vj i and, similarly, V qm , p + m ^3=1 1^+j "m for m = 1, 2, ..., k-p. Thus k-p N(K) = I* ».+!*•* n + ^i=l i *~m=l p + m 239 Downloaded from https://www.cambridge.org/core. 29 Sep 2021 at 10:55:44, subject to the Cambridge Core terms of use. P n + k Pn + k > Z i=l i I '"r=l Vr Z rn=T l ** = N(Kf ) + k! - p. COROLLARY • Since p ék - 1, we have the weaker result N(K) - N(K') ^ (k« - k) + 1. Lemma 2 may be generalised as follows. If K is any n x n bipartite graph in which E(K) = n, and if K1 is any subgraph of K such that E(K!) = n, then the induced bipartite graph I con tains at least q^ edges at least one of which is not in G!p+1 u Glpf2 u • • • vjG,p+q' The rest of these ^1 edges are inadmissible in K1 and admissible in K. Accordingly, if u is the total number of inadmissible edges of K1 which are admis sible in K, N(K) - N(K!) + u > k1 - p. Let K be an n x n bipartite graph which is the union of disjoint irreducible subgraphs. Let t^ be the smallest integer such that every doubly stochastic matrix A for which K is the bipartite graph is expressible as an average of not more than t^ permutation matrices. It was mentioned in [2] that the algorithm described by Birkhoff [1] never requires more than n^ - n + 1 permutation matrices. It has been shown in [6] , using a dimen sional argument that tj^ ^ n2 - 2n + 2. However, this is an exis tence proof and does not show how to construct the average. The main result of this note is the following. THEOREM. Let A be an n x n doubly stochastic matrix with bipartite graph K. If N is the number of edges in K and k is the number of disjoint irreducible subgraphs in the canonical decomposition of K, then tk ^ N - 2n 4- k + 1, The Birkhoff algorithm expresses A as an average of at most t^ permutation matrices. Proof. The Birkhoff construction is as follows. Let ci be the smallest (possibly unique) non-zero element of A. There exists a diagonal of non-zeros of which c^ is the least. Let A^ be the permutation matrix with ones on this diagonal, and let 2 1 Ad) = A - cjAi. Repeating this process, let A< ) = A^ ) - c2A2. Continuing, there must exist an integer t such that A(t~^) = ^(t-2) . C£_j Afc_} and A'*"*) has a diagonal of n non-zero 240 Downloaded from https://www.cambridge.org/core. 29 Sep 2021 at 10:55:44, subject to the Cambridge Core terms of use. equal elements and n^ - n zeros. The integer t may vary depending on the choice of the diagonals, A^"*) = ctAt and A = c^Ai + C2A2 + • ' • + ctAf Denote A by A(°) and let K(i) be the graph of A^), i = 0, 1, 2, .