On the number of matrices and a random matrix with prescribed row and column sums and 0-1 entries

Alexander Barvinok

Introduction and main results

Matrices with 0-1 entries and prescribed row and column sums is a classical object which appears in many branches of pure and applied mathematics. In combinatorics, such matrices encode hypergraphs with prescribed degrees of vertices and related structures, see, for example, [LW01]. In algebra, certain structural constants in the ring of symmetric functions and, consequently, in the representation theory of the symmetric and general linear groups are expressed as numbers of 0-1 matrices with prescribed row and column sums, see Chapter 1 of [Ma95]. In statistics, 0-1 matrices with prescribed row and column sums are known as binary contingency tables, see [C+05].

Let R=(r1,…,rm)R=\left(r_{1},\ldots,r_{m}\right) be a positive integer mm-vector and let C=(c1,…,cn)C=\left(c_{1},\ldots,c_{n}\right) be a positive integer nn-vector such that

Let Σ(R,C)\Sigma(R,C) be the set of all m×nm\times n matrices (binary contingency tables) D=(dij)D=\left(d_{ij}\right) such that

In words: Σ(R,C)\Sigma(R,C) is the set of 0-1 matrices with row sums RR and column sums CC. Vectors RR and CC are called margins of a matrix D∈Σ(R,C)D\in\Sigma(R,C).

Our first main result provides an estimate of the cardinality of Σ(R,C)\Sigma(R,C).

Then for the number ∣Σ(R,C)∣|\Sigma(R,C)| of m×nm\times n zero-one matrices with row sums RR and column sums CC we have

Let us estimate the ratio between the lower and the upper bounds for ∣Σ(R,C)∣|\Sigma(R,C)| using Stirling’s formula

the “ e−se^{-s} ” contributions from Stirling’s formula cancel each other out and we obtain

We note that in many interesting cases we have ∣Σ(R,C)∣=2Ω(mn)|\Sigma(R,C)|=2^{\Omega(mn)}, see also Section 3.1, in which case the estimate of Theorem 1.1 captures the logarithmic order of ∣Σ(R,C)∣|\Sigma(R,C)|.

Suppose that margins R,CR,C are such that the set Σ(R,C)\Sigma(R,C) is not empty and let us consider Σ(R,C)\Sigma(R,C) as a finite probability space with the uniform measure. Let us pick a random matrix D∈Σ(R,C)D\in\Sigma(R,C). What is DD likely to look like? This question is of some interest to statistics: a binary contingency table D=(dij)D=\left(d_{ij}\right) may represent certain statistical data (for example, dijd_{ij} may be equal to 1 or 0 depending on whether or not Darwin finches of the ii-th species can be found on the jj-th Galapagos island, as in [C+05]). One can condition on the row and column sums and ask what is special about a particular table D∈Σ(R,C)D\in\Sigma(R,C), considering all tables in Σ(R,C)\Sigma(R,C) as equiprobable, see [C+05]. To answer this question we need to know what a random table D∈Σ(R,C)D\in\Sigma(R,C) looks like.

We prove that with high probability DD is close to a particular matrix ZZ with row sums RR and column sums CC and entries between 0 and 1, which we call the maximum entropy matrix.

For 0≤x≤10\leq x\leq 1 let us consider the entropy function

As is known, HH is a strictly concave function with H(0)=H(1)=0H(0)=H(1)=0.

For an m×nm\times n matrix X=(xij)X=\left(x_{ij}\right) such that 0≤xij≤10\leq x_{ij}\leq 1 for all i,ji,j, we define

Assume that Σ(R,C)\Sigma(R,C) is non-empty. Let us consider the polytope \CalP(R,C)\Cal{P}(R,C) of matrices X=(xij)X=\left(x_{ij}\right) such that

Since H(X)H(X) is strictly concave, it attains a unique maximum Z=Z(R,C)Z=Z(R,C) on \CalP(R,C)\Cal{P}(R,C), which we call the maximum entropy matrix with margins (R,C)(R,C).

For example, if all rir_{i} are equal, then by the symmetry argument we must have Z=(zij)Z=\left(z_{ij}\right) where zij=cj/mz_{ij}=c_{j}/m for all i,ji,j.

The following observation characterizes the maximum entropy matrix as the solution to the problem that is convex dual to the optimization problem of Theorem 1.1.

The condition that the polytope \CalP(R,C)\Cal{P}(R,C) has a non-empty interior is equivalent to the requirement that for every choice of 1≤k≤m1\leq k\leq m and 1≤l≤n1\leq l\leq n there is a matrix D0∈Σ(R,C)D^{0}\in\Sigma(R,C), D0=(dij0)D^{0}=\left(d_{ij}^{0}\right), such that dkl0=0d_{kl}^{0}=0 and there is a matrix D1∈Σ(R,C)D^{1}\in\Sigma(R,C), D1=(dij1)D^{1}=\left(d_{ij}^{1}\right), such that dkl1=1d_{kl}^{1}=1. One can take YY to be the average of all matrices D∈Σ(R,C)D\in\Sigma(R,C). In other words, we require the set Σ(R,C)\Sigma(R,C) to be reasonably large. We also observe that if ricj<Nr_{i}c_{j}<N for all i,ji,j (recall that NN is the total sum of the matrix entries) one can choose yij=ricj/Ny_{ij}=r_{i}c_{j}/N.

We prove that with high probability a random matrix D∈Σ(R,C)D\in\Sigma(R,C) is close to the maximum entropy matrix ZZ as far as sums over subsets of entries are concerned.

and an m×nm\times n matrix A=(aij)A=\left(a_{ij}\right), let us denote

the sum of the entries of AA indexed by SS.

In what follows, we are interested in the case of the density N/mnN/mn separated from 0. Without loss of generality, we assume that n≥mn\geq m.

Let us fix numbers κ>0\kappa>0 and 0<δ<10<\delta<1. Then there exists a number q=q(κ,δ)q=q(\kappa,\delta) such that the following holds.

Let (R,C)(R,C) be margins such that n≥m>qn\geq m>q and the polytope \CalP(R,C)\Cal{P}(R,C) has a non-empty interior, and let Z∈\CalP(R,C)Z\in\Cal{P}(R,C) be the maximum entropy matrix. Let S\subset\bigl{\{}(i,j):\quad i=1,\ldots,m,\ j=1,\ldots,n\bigr{\}} be a subset such that σS(Z) ≥ δmn\sigma_{S}(Z)\ \geq\ \delta mn and let

The following interpretation of the maximum entropy matrix was suggested to the author by J.A. Hartigan, see [BH09].

Let Z=(zij)Z=\left(z_{ij}\right) be the m×nm\times n maximum entropy matrix with margins (R,C)(R,C) and let us suppose that the polytope \CalP(R,C)\Cal{P}(R,C) has a non-empty interior. Let X=(xij)X=\left(x_{ij}\right) be the random m×nm\times n matrix of independent Bernoulli random variables such that

The distribution of the random matrix XX in Theorem 1.5 can be characterized as the maximum entropy distribution in the class consisting of all probability distributions on the set {0,1}m×n\{0,1\}^{m\times n} of matrices with 0-1 entries whose expectations lie in the affine subspace consisting of the matrices with row sums RR and column sums CC, see [BH09].

Extensions and ramifications

Our results hold in a somewhat greater generality. Let us fix an m×nm\times n non-negative matrix W=(wij)W=\left(w_{ij}\right), which we call the matrix of weights. Let us consider the following partition function

In particular, if wij=1w_{ij}=1 for all i,ji,j then ∣Σ(R,C;W)∣=∣Σ(R,C)∣|\Sigma(R,C;W)|=|\Sigma(R,C)|. If wij∈{0,1}w_{ij}\in\{0,1\} then the partition function counts binary contingency tables with zeros assigned to some positions: the value of ∣Σ(R,C;W)∣|\Sigma(R,C;W)| is equal to the number of m×nm\times n matrices D=(dij)D=\left(d_{ij}\right) such that the row sums of DD are RR, the column sums of DD are CC, dij∈{0,1}d_{ij}\in\{0,1\} for all i,ji,j, and, additionally, dij=0d_{ij}=0 if wij=0w_{ij}=0. In combinatorial terms, the set Σ(R,C;W)\Sigma(R,C;W) can be interpreted as the set of all subgraphs with prescribed degrees of vertices of a given bipartite graph. Binary contingency tables with preassigned zeros are of interest in statistics, see [C+05].

Then for the partition function ∣Σ(R,C;W)∣|\Sigma(R,C;W)| we have

Let us assume now that wij∈{0,1}w_{ij}\in\{0,1\} for all (i,j)(i,j) and let us consider the set Σ(R,C;W)\Sigma(R,C;W) of all m×nm\times n binary contingency tables D=(dij)D=\left(d_{ij}\right) with the additional constraint that dij=0d_{ij}=0 if wij=0w_{ij}=0. Assuming that Σ(R,C;W)\Sigma(R,C;W) is not empty, we consider this set as a finite probability space with the uniform measure. We call matrix WW the pattern. We are interested in what a random table D∈Σ(R,C;W)D\in\Sigma(R,C;W) looks like. We define the maximum entropy matrix as before.

Suppose that the set Σ(R,C;W)\Sigma(R,C;W) is non-empty. Let us consider the polytope \CalP(R,C;W)\Cal{P}(R,C;W) of m×nm\times n matrices X=(xij)X=\left(x_{ij}\right) such that

Thus \CalP(R,C;W)\Cal{P}(R,C;W) is a face of polytope \CalP(R,C)\Cal{P}(R,C) of Section 1.2.

Let H(X)H(X) be the entropy function of Section 1.2. Since H(X)H(X) is strictly concave, it attains a unique maximum Z=Z(R,C;W)Z=Z(R,C;W) on polytope \CalP(R,C;W)\Cal{P}(R,C;W), which we call the maximum entropy matrix with margins (R,C)(R,C) and pattern WW.

For \CalP(R,C;W)\Cal{P}(R,C;W) to have a non-empty interior is equivalent to the requirement that for every pair k,lk,l such that wkl=1w_{kl}=1 there is a matrix D0∈Σ(R,C;W)D^{0}\in\Sigma(R,C;W), D0=(dij0)D^{0}=\left(d_{ij}^{0}\right), such that dkl0=0d_{kl}^{0}=0 and there is a matrix D1∈Σ(R,C;W)D^{1}\in\Sigma(R,C;W), D1=(dij1)D^{1}=\left(d_{ij}^{1}\right), such that dkl1=1d_{kl}^{1}=1. In other words, we require the set Σ(R,C;W)\Sigma(R,C;W) to be reasonably large.

We prove an analogue of Theorem 1.4. We consider subsets

As before, we denote by σS(A)\sigma_{S}(A) the sum of the entries of a matrix AA indexed by the subset SS.

Let us fix numbers κ>0\kappa>0 and 0<δ<10<\delta<1. Then there exists a number q=q(κ,δ)q=q(\kappa,\delta) such that the following holds.

Let (R,C)(R,C) be margins such that n≥m>qn\geq m>q and the polytope \CalP(R,C;W)\Cal{P}(R,C;W) has a non-empty interior, and let Z∈\CalP(R,C;W)Z\in\Cal{P}(R,C;W) be the maximum entropy matrix. Let S\subset\bigl{\{}(i,j):\quad w_{ij}=1\bigr{\}} be a subset such that σS(Z) ≥ δmn\sigma_{S}(Z)\ \geq\ \delta mn and let

The statement of the theorem is, of course, vacuous unless pattern WW contains Ω(mn)\Omega(mn) ones.

Suppose that the polytope \CalP(R,C;W)\Cal{P}(R,C;W) has a non-empty interior and let Z∈\CalP(R,C;W)Z\in\Cal{P}(R,C;W) be the maximum entropy matrix. Let X=(xij)X=\left(x_{ij}\right) be the random m×nm\times n matrix of independent Bernoulli random variables such that

Comparisons with the literature

There is a vast literature on 0-1 matrices with prescribed row and column sums and with or without zeros in prescribed positions, see for example, Chapter 16 of [LW01], [Ne69], [Be74], [GC77], recent [CM05], [G+06], [C+08], [GM09] and references therein. A simple and efficient criterion for the existence of a 0-1 matrix with prescribed row and column sums is given by the classical Gale-Ryser Theorem; in the case of enforced zeros, the question reduces to the existence of a network flow, see for example, Chapter 16 of [LW01]. Estimating the number of such matrices also attracted a lot of attention. Precise asymptotic formulas for the number of matrices were obtained in sparse cases for which ri≪nr_{i}\ll n and cj≪mc_{j}\ll m [Ne69], [Be74], [G+06], the regular case of all row sums rir_{i} equal and all column sums cjc_{j} equal [C+08] and cases close to regular [C+08], [GM09]. Formulas of Theorems 1.1 and 2.1 are not so precise but they are applicable to a wide class of margins (R,C)(R,C) and they uncover some interesting features of the numbers ∣Σ(R,C)∣|\Sigma(R,C)| and ∣Σ(R,C;W)∣|\Sigma(R,C;W)|.

The following construction provides some insight into the combinatorial interpretation of the number α(R,C)\alpha(R,C) from Theorem 1.1.

Let us fix some margins R,CR,C for which the set Σ(R,C)\Sigma(R,C) is not empty, and, moreover, the polytope \CalP(R,C)\Cal{P}(R,C) contains an interior point, so the conditions of Lemma 1.3 are satisfied. Let R=(r1,…,rm)R=\left(r_{1},\ldots,r_{m}\right) and C=(c1,…,cn)C=\left(c_{1},\ldots,c_{n}\right). For a positive integer kk, let us define the kmkm-vector

In other words, we obtain margins (Rk,Ck)\left(R_{k},C_{k}\right) if we choose a matrix Y∈\CalP(R,C)Y\in\Cal{P}(R,C) and then create a new block matrix YkY_{k} by arranging k2k^{2} copies of YY into a km×knkm\times kn matrix. Then RkR_{k} is the vector of row sums of YkY_{k} and CkC_{k} is the vector of column sums of YkY_{k}. Clearly, the conditions of Lemma 1.3 are satisfied for (Rk,Ck)(R_{k},C_{k}).

Indeed, the infimum α(R,C)\alpha(R,C) is attained at a certain point

It is not hard to see that the infimum α(Rk,Ck)\alpha\left(R_{k},C_{k}\right) is attained at

(3.2) Asymptotic repulsion in the space of matrices

A natural candidate for an approximation of ∣Σ(R,C)∣|\Sigma(R,C)| is the “independence estimate”

The intuitive meaning of (3.2.1) is as follows. Let us consider the set of all m×nm\times n matrices with 0-1 entries and with the total sum of entries equal to NN as a finite probability space with the uniform measure. Let us consider the two events in this space: the event \CalR\Cal{R} consisting of the matrices with row sums RR and the event \CalC\Cal{C} consisting of the matrices with column sums CC. One can see that

Thus the value of (3.2.1) equals ∣Σ(R,C)∣|\Sigma(R,C)| if the events \CalR\Cal{R} and \CalC\Cal{C} are independent. It turns out that (3.2.1) indeed approximates ∣Σ(R,C)∣|\Sigma(R,C)| reasonably well in the sparse and near-unform cases, see [G+06] and [C+08].

However, for generic RR and CC, the independence estimate I(R,C)I(R,C) overestimates ∣Σ(R,C)∣|\Sigma(R,C)| by a 2Ω(mn)2^{\Omega(mn)} factor. To see why, let us fix some margins R=(r1,…,rm)R=\left(r_{1},\ldots,r_{m}\right) and C=(c1,…,cn)C=\left(c_{1},\ldots,c_{n}\right) such that not all row sums rir_{i} are equal and not all column sums cjc_{j} are equal and the conditions of Lemma 1.3 are satisfied. Let us consider the cloned margins RkR_{k} and CkC_{k} as in Section 3.1.

where HH is the entropy function, see Section 1.2. To compare (3.2.2) and (3.1.1) we use Lemma 1.3 and the multivariate entropy function

On the other hand, applying Lemma 1.3, we can rewrite (3.1.1) as

where Z=(zij)Z=\left(z_{ij}\right) is the maximum entropy matrix for margins (R,C)(R,C).

We now use some classical entropy inequalities, see, for example, [Kh57]. Namely, by the inequality relating the entropies of two partitions of a probability space and the entropy of their intersection, we have

However, if we have both (3.2.3) and (3.2.4), we must have (rim−N)(cjn−N)=0(r_{i}m-N)(c_{j}n-N)=0, so unless all row sums rir_{i} are equal or all column sums cjc_{j} are equal, we have

Therefore, as kk grows, the independence estimate (3.2.1) overestimates the number of 0-1 matrices with row sums RkR_{k} and column sums CkC_{k} by a factor of 2Ω(k2)2^{\Omega(k^{2})}. In probabilistic terms, as kk grows, the event \CalRk\Cal{R}_{k} consisting of the 0-1 matrices with row sums RkR_{k} and the event \CalCk\Cal{C}_{k} consisting of the 0-1 matrices with column sums CkC_{k} repel each other (the events are negatively correlated) instead of being asymptotically independent.

The procedure of cloning described in Section 3.1 produces margins of increasing size with the following features: the density remains separated from 0 and 1, and if the margins were non-uniform initially, they stay away from uniform. One can show that for more general sequences of margins that share these two features, we have the asymptotic repulsion of the event consisting of the 0-1 matrices with prescribed row sums and the event consisting of the 0-1 matrices with prescribed column sums. This is in contrast to the case of contingency tables (non-negative integer matrices with prescribed row and column sums), where we have the asymptotic attraction of the events [Ba09].

(3.3) Randomized counting and sampling

Jerrum, Sinclair, and Vigoda [J+04] showed how to apply their algorithm for computing the permanent of a non-negative matrix to construct a fully polynomial randomized approximation scheme (FPRAS) to compute ∣Σ(R,C)∣|\Sigma(R,C)| and, more generally, ∣Σ(R,C;W)∣|\Sigma(R,C;W)|, where WW is a 0-1 pattern, see also [B+07]. Furthermore, they obtained a polynomial time algorithm for sampling a random D∈Σ(R,C)D\in\Sigma(R,C) and D∈Σ(R,C;W)D\in\Sigma(R,C;W) from a “nearly uniform” distribution. This problem arises naturally in statistics, see, for example, [C+05]. The estimates of Theorem 1.1 and Theorem 2.1 are not nearly as precise as those of [J+04], but they are deterministic, easily computable, and amenable to analysis. Similarly, we do not provide a sampling algorithm but show instead in Theorems 1.4 and 2.4 what a random matrix is likely to look like.

(3.4) An open question

Theorem 1.5 allows us to interpret Theorem 1.4 as a law of large numbers for binary contingency tables: with respect to sums σS(D)\sigma_{S}(D) for sufficiently “heavy” sets SS of indices, a random binary contingency table D∈Σ(R,C)D\in\Sigma(R,C) behaves approximately as the matrix of independent Bernoulli random variables whose expectation is the maximum entropy matrix Z=(zij)Z=\left(z_{ij}\right). Similar concentration results can be obtained for other well-behaved functions on binary contingency tables. One can ask whether the distribution of a particular entry dijd_{ij} of a random table D∈Σ(R,C)D\in\Sigma(R,C) converges in distribution to the Bernoulli distribution with expectation zijz_{ij} as the dimensions mm and nn of the table grow in some regular way, for example, when the margins are cloned as in Section 3.1.

Our approach, based on estimating combinatorial quantities via solutions to optimization problems, reminds one of that of Gurvits [Gu08]. The appearance of entropy in combinatorial counting problems reminds one of recent papers of Cuckler and Kahn [CK09a], [CK09b], although methods and results seem to be quite different.

In the rest of the paper, we prove the results stated in Sections 1 and 2.

Preliminaries: permanents and scaling

Let A=(aij)A=\left(a_{ij}\right) be an n×nn\times n matrix. The permanent of AA is defined by the expression

where SnS_{n} is the symmetric group of all permutations of the set {1,…,n}\{1,\ldots,n\}. The relevance of permanents to us is that both values of ∣Σ(R,C)∣|\Sigma(R,C)| and ∣Σ(R,C;W)∣|\Sigma(R,C;W)| can be expressed as permanents of mn×mnmn\times mn matrices. This result is not new, for ∣Σ(R,C)∣|\Sigma(R,C)| it was observed, for example, in [JS90]. For ∣Σ(R,C;W)∣|\Sigma(R,C;W)|, where WW is a 0-1 pattern, a construction is presented in [J+04]. We give a general construction for ∣Σ(R,C;W)∣|\Sigma(R,C;W)|, where WW is an arbitrary matrix, which is slightly different from that of [J+04].

Let us choose margins R=(r1,…,rm)R=\left(r_{1},\ldots,r_{m}\right), C=(c1,…,cn)C=\left(c_{1},\ldots,c_{n}\right) and an m×nm\times n matrix W=(wij)W=\left(w_{ij}\right) of weights. Let us construct an mn×mnmn\times mn matrix A=A(R,C;W)A=A(R,C;W) as follows.

The rows of AA are split into disjoint mm blocks having n−r1,…,n−rmn-r_{1},\ldots,n-r_{m} rows respectively (blocks of type I)

nn blocks having c1,…,cnc_{1},\ldots,c_{n} rows respectively (blocks of type II). The columns of AA are split into mm disjoint blocks of nn columns in each. For i=1,…,mi=1,\ldots,m the entry of AA that lies in a row from the ii-th block of rows of type I and in a column from the ii-th block of columns is equal to 1.

For i=1,…,mi=1,\ldots,m and j=1,…,nj=1,\ldots,n the entry of AA that lies in a row from the jj-th block of rows of type II and the jj-th column from the ii-th block of columns is equal to wijw_{ij}.

First, we express ∣Σ(R,C;W)∣|\Sigma(R,C;W)| as a coefficient in a certain polynomial. Let x1,…,xnx_{1},\ldots,x_{n} be formal variables and let

be the elementary symmetric polynomial of degree rr. Thus er(x1,…,xn)e_{r}\left(x_{1},\ldots,x_{n}\right) is

Summarizing, we conclude that ∣Σ(R,C;W)∣|\Sigma(R,C;W)| is

To express the last coefficient as the permanent of a matrix, we use a convenient scalar product in the space of polynomials, see, for example, [Ba96] and [Ba07]. Namely, for monomials

Then, for polynomials ff and gg we have

where g‾\overline{g} is the complex conjugate of gg, see for example, Section 4 of [Ba07].

The convenient property of the scalar product is that if

where D=(dij)D=\left(d_{ij}\right) is the m×mm\times m matrix defined by

see Lemma 4.5 of [Ba07] or, for a more general identity, Theorem 3.8 of [Gu04]. Thus we may write

Let B=(bij)B=\left(b_{ij}\right) be an n×nn\times n matrix. Matrix BB is called doubly stochastic if

The classical bound conjectured by van der Waerden and proved by Falikman and Egorychev, see Chapter 12 of [LW01] and also [Gu08] for exciting new developments, states that

Linial, Samorodnitsky, and Wigderson [L+00] introduced the following very useful scaling method of approximating permanents of non-negative matrices. Given a non-negative n×nn\times n matrix A=(aij)A=\left(a_{ij}\right) one finds non-negative numbers λ1,…,λn\lambda_{1},\ldots,\lambda_{n} and μ1,…,μn\mu_{1},\ldots,\mu_{n} and a doubly stochastic matrix B=(bij)B=\left(b_{ij}\right) such that

and an estimate of per⁡B\operatorname{per}B (such as the van der Waerden estimate) implies an estimate of per⁡A\operatorname{per}A. If AA is strictly positive, such doubly stochastic matrix BB and scaling factors λi\lambda_{i}, μj\mu_{j} always exist. In our situation, matrix AA constructed in Lemma 4.1 is only non-negative. We will not always be able to scale it to a doubly stochastic matrix BB exactly, but we will scale it approximately.

We restate a weaker form of Proposition 5.1 from [L+00] regarding almost doubly stochastic matrices.

For any nn there exists an ϵ0=ϵ0(n)>0\epsilon_{0}=\epsilon_{0}(n)>0 and a function ϕ(ϵ)\phi(\epsilon), 0<ϵ<ϵ00<\epsilon<\epsilon_{0}, such that

and for any n×nn\times n non-negative matrix B=(bij)B=\left(b_{ij}\right) such that

for some 0≤ϵ<ϵ00\leq\epsilon<\epsilon_{0}, we have

From [L+00], one can choose ϵ0=1/n\epsilon_{0}=1/n and ϕ(ϵ)=(1−ϵn)n\phi(\epsilon)=(1-\epsilon n)^{n}.

Proofs of Theorems 1.1 and 2.1

We prove Theorem 2.1 only since Theorem 1.1 is a particular case of Theorem 2.1. We start with a straightforward observation.

and the sum is taken over all margins R,CR,C.

Let W=(wij)W=\left(w_{ij}\right) be an m×nm\times n non-negative matrix such that

follows from Lemma 5.1. Let us prove the lower bound.

If α(R,C;W)=0\alpha(R,C;W)=0 then ∣Σ(R,C;W)∣=0|\Sigma(R,C;W)|=0 and the lower bound follows. Hence we assume that α(R,C;W)>0\alpha(R,C;W)>0.

For j=1,…,nj=1,\ldots,n we multiply every row of AA in the jj-th block of type II by

For i=1,…,mi=1,\ldots,m and j=1,…,nj=1,\ldots,n we multiply the jj-th column in the ii-th block of columns of AA by

Finally, we claim that B(ϵ)B(\epsilon) is close to a doubly stochastic matrix. Indeed, For i=1,…,mi=1,\ldots,m and j=1,…,nj=1,\ldots,n the entry of B(ϵ)B(\epsilon) that lies in a row from the ii-th block of rows of type I and in the jj-th column from the ii-th block of columns is equal to

For i=1,…,mi=1,\ldots,m and j=1,…,nj=1,\ldots,n the entry of B(ϵ)B(\epsilon) that lies in a row from the jj-th block of rows of type II and the jj-th column from the ii-th block of columns is equal to

All other entries of B(ϵ)B(\epsilon) are 0s. Let us compute the row sums of B(ϵ)B(\epsilon).

For a row in the ii-th block of rows of type I the sum equals

by the inequalities of Lemma 5.2, we have

For a row in the jj-th block of rows of type II the sum equals

By the inequalities of Lemma 5.2, we have

Let us compute the column sums of B(ϵ)B(\epsilon).

For the jj-th column from the ii-th block of columns the sum equals

Clearly, B(ϵ)B(\epsilon) is non-negative and hence by Lemma 4.3, we have

The proof now follows by (5.3.1) as ϵ⟶0+\epsilon\longrightarrow 0+. ∎

Proofs of Lemmas 1.3 and 2.3

We prove Lemma 2.3 only since Lemma 1.3 is a particular case of Lemma 2.3.

Since H′(x)=ln⁡(1−x)−ln⁡xH^{\prime}(x)=\ln(1-x)-\ln x, the value of the derivative at x=0x=0 is +∞+\infty (we consider the right derivative there), the value of the derivative at x=1x=1 is −∞-\infty (we consider the left derivative there) and the value of the derivative is finite for any 0<x<10<x<1. Suppose that for the maximum entropy matrix ZZ we have zij∈{0,1}z_{ij}\in\{0,1\} for some i,ji,j such that wij=1w_{ij}=1. If Y∈\CalP(R,C;W)Y\in\Cal{P}(R,C;W), Y=(yij)Y=\left(y_{ij}\right), is a matrix such that 0<yij<10<y_{ij}<1 whenever wij=1w_{ij}=1 then

which contradicts to the choice of ZZ. Hence

Therefore, the gradient of H(X)H(X) at X=ZX=Z is orthogonal to the affine subspace of matrices X=(xij)X=\left(x_{ij}\right) having row sums RR, column sums CC, and such that xij=0x_{ij}=0 whenever wij=0w_{ij}=0. Hence

and some λ1,…,λm\lambda_{1},\ldots,\lambda_{m} and μ1,…,μn\mu_{1},\ldots,\mu_{n}. Hence

and zij=0z_{ij}=0 when wij=0w_{ij}=0, we obtain a matrix Z∈\CalP(R,C;W)Z\in\Cal{P}(R,C;W). Moreover, the gradient of H(X)H(X) at X=ZX=Z satisfies (6.1) with λi=−ln⁡ξi\lambda_{i}=-\ln\xi_{i} and μj=−ln⁡ηj\mu_{j}=-\ln\eta_{j}, so ZZ is the maximum entropy matrix.

Proofs of Theorems 1.5 and 2.5

We prove Theorem 2.5 only, since Theorem 1.5 is a particular case of Theorem 2.5.

and some λ1,…,λm\lambda_{1},\ldots,\lambda_{m} and μ1,…,μn\mu_{1},\ldots,\mu_{n}. Then, for all i,ji,j such that wij=1w_{ij}=1 and any dij∈{0,1}d_{ij}\in\{0,1\}, we have

Consequently, for any D∈Σ(R,C;W)D\in\Sigma(R,C;W), D=(dij)D=\left(d_{ij}\right), we have

Proofs of Theorems 1.4 and 2.4

We prove Theorem 2.4 only since Theorem 1.4 is a particular case of Theorem 2.4.

We will use standard large deviation inequalities for bounded random variables, see, for example, Corollary 5.2 of [Mc89].

By Theorem 2.5, Lemma 2.3 and Theorem 2.1, we get

Combining (8.2.1)–(8.2.3), we conclude that for any κ>0\kappa>0 and all sufficiently large n≥m>q(κ,δ)n\geq m>q(\kappa,\delta) we have

Acknowledgment

I am grateful to Alex Samorodnitsky for emphasizing the importance of matrix scaling in permanent computations during many enlightening conversations. I benefitted from conversations with Catherine Greenhill about asymptotic enumeration during the 2008 Schloss Dagstuhl meeting on design and analysis of randomized and approximation algorithms. After the first version of this paper was written, John Hartigan pointed out to connections with the maximum entropy principle and suggested Theorem 1.5 to me (cf. [BH09]), which led to a substantial simplification of the original proof and some strengthening of Theorems 1.4 and 2.4.