Approximating permanents and hafnians

Alexander Barvinok

Main results: permanents

We discuss analytic methods of efficient approximation of permanents and hafnians of real and complex matrices as well as of their multi-dimensional versions, objects of considerable interest in connection with problems in combinatorics , , quantum physics , , and computational complexity , .

Let A=(aij)A=\left(a_{ij}\right) be an n×nn\times n real or complex matrix. The permanent of AA is defined as

where SnS_{n} is the symmetric group of permutations of the set {1,…,n}\{1,\ldots,n\}. It is a #P\#P-hard problem to compute the permanent of a given 0-1 matrix AA exactly , although a fully polynomial randomized approximation scheme is constructed for non-negative matrices . The permanent of an n×nn\times n non-negative matrix AA can be approximated within a factor of ene^{n} in deterministic polynomial time and the factor was improved to 2n2^{n} in (with a conjectured improvement to 2n/22^{n/2}). If one assumes that

More precisely, we prove the following result.

For any 0<δ≤10<\delta\leq 1 there exists γ=γ(δ)>0\gamma=\gamma(\delta)>0 such that for any positive integer nn and any 0<ϵ<10<\epsilon<1 there exists a polynomial p=pn,δ,ϵp=p_{n,\delta,\epsilon} in the entries aija_{ij} of an n×nn\times n matrix AA such that deg⁡p≤γ(ln⁡n−ln⁡ϵ)\deg p\leq\gamma\left(\ln n-\ln\epsilon\right) and

for all n×nn\times n real matrices A=(aij)A=\left(a_{ij}\right) satisfying

We show that the polynomial pp can be computed in quasi-polynomial time nO(ln⁡n−ln⁡ϵ)n^{O(\ln n-\ln\epsilon)}, where the implied constant in the “OO” notation depends on δ\delta alone.

Our approach continues a line of work started in and continued in , and . The main idea is to relate approximability of a polynomial with its complex zeros. For a complex number z=a+ibz=a+ib, we denote by ℜ z=a\Re\thinspace z=a and ℑ z=b\Im\thinspace z=b, the real and imaginary parts of zz correspondingly. In what follows, we always choose the standard branch of arcsin⁡x\arcsin x, arccos⁡x\arccos x and arctan⁡x\arctan x for real xx, so that

We deduce Theorem 1.1 from the following result.

Let Z=(zij)Z=\left(z_{ij}\right) be an n×nn\times n complex matrix such that

In this paper, we prove the following results.

Let Z=(zij)Z=\left(z_{ij}\right) be an n×nn\times n complex matrix such that

For every 0≤η<0.50\leq\eta<0.5 there exists a constant γ=γ(η)>0\gamma=\gamma(\eta)>0 such that for every positive integer nn and every real 0<ϵ<10<\epsilon<1 there exists a polynomial p=pn,η,ϵp=p_{n,\eta,\epsilon} in the entries of an n×nn\times n complex matrix A=(aij)A=\left(a_{ij}\right) such that deg⁡p≤γ(ln⁡n−ln⁡ϵ)\deg p\leq\gamma\left(\ln n-\ln\epsilon\right) and

for n×nn\times n complex matrices A=(aij)A=\left(a_{ij}\right) satisfying

Moreover, the polynomial pp can be computed in nO(ln⁡n−ln⁡ϵ)n^{O(\ln n-\ln\epsilon)} time, where the implied constant in the “OO” notation depends on η\eta alone.

A version of Theorem 1.3 with a weaker bound of 0.1950.195 instead of 0.50.5 and a more complicated proof was obtained in . Theorem 1.4 is also implicit in . We present its proof here since it serves as a stepping stone for the proof of Theorem 1.1.

It is not known whether the bound 0.50.5 in Theorems 1.3 and 1.4 can be increased, although one can show (see Section 4) that it cannot be increased to 2/2≈0.707\sqrt{2}/2\approx 0.707.

Let α≈0.278\alpha\approx 0.278 be the real solution of the equation αe1+α=1\alpha e^{1+\alpha}=1. Let Z=(zij)Z=\left(z_{ij}\right) be an n×nn\times n complex matrix such that

For every 0≤η<α/40\leq\eta<\alpha/4, where α≈0.278\alpha\approx 0.278 is the constant in Theorem 1.5, there exists a constant γ=γ(η)>0\gamma=\gamma(\eta)>0 such that for every positive integer nn and every real 0<ϵ<10<\epsilon<1 there exists a polynomial p=pn,η,ϵp=p_{n,\eta,\epsilon} in the entries of an n×nn\times n matrix A=(aij)A=\left(a_{ij}\right) such that deg⁡p≤γ(ln⁡n−ln⁡ϵ)\deg p\leq\gamma(\ln n-\ln\epsilon) and

for n×nn\times n complex matrices A=(aij)A=\left(a_{ij}\right) satisfying

Again, the polynomial pn,η,ϵp_{n,\eta,\epsilon} can be constructed in nO(ln⁡n−ln⁡ϵ)n^{O(\ln n-\ln\epsilon)} time, where the implied constant in the “OO” notation depends on η\eta only. Note that Theorem 1.6 is applicable to 0-1 matrices having not too many (not more than 7%7\%) zeros in every row and column as well as to real matrices with some positive and some negative entries. It is not known whether the bound in Theorems 1.5 and 1.6 are optimal.

Main results: hafnians

Some of our results immediately extend from permanents to hafnians.

Let A=(aij)A=\left(a_{ij}\right) be a 2n×2n2n\times 2n symmetric real or complex matrix. The hafnian of AA is defined as

where the sum is taken over (2n)!/2nn!(2n)!/2^{n}n! unordered partitions of the set {1,…,2n}\{1,\ldots,2n\} into nn pairwise disjoint unordered pairs {i1,j1},…,{in,jn}\{i_{1},j_{1}\},\ldots,\{i_{n},j_{n}\}, see for example, Section 8.2 of . Just as the permanent of the biadjacency matrix of a bipartite graph enumerates the perfect matchings in the graph, the hafnian of the adjacency matrix of a graph enumerates the perfect matchings in the graph. In fact, for any n×nn\times n matrix AA we have

and hence computing the permanent of an n×nn\times n matrix reduces to computing the hafnian of a symmetric 2n×2n2n\times 2n matrix.

In this paper, we prove the following versions of Theorem 1.1 and 1.2.

For any 0<δ≤10<\delta\leq 1 there exists γ=γ(δ)>0\gamma=\gamma(\delta)>0 such that for any positive integer nn and any 0<ϵ<10<\epsilon<1 there exists a polynomial p=pn,δ,ϵp=p_{n,\delta,\epsilon} in the entries aija_{ij} of a 2n×2n2n\times 2n symmetric matrix AA such that deg⁡p≤γ(ln⁡n−ln⁡ϵ)\deg p\leq\gamma(\ln n-\ln\epsilon) and

for all 2n×2n2n\times 2n real symmetric matrices A=(aij)A=\left(a_{ij}\right) satisfying

The polynomial pn,δ,ϵp_{n,\delta,\epsilon} can be computed in nO(ln⁡n−ln⁡ϵ)n^{O(\ln n-\ln\epsilon)} time, where the implied constant in the “OO” notation depends on δ\delta alone. Consequently, we obtain a deterministic quasi-polynomial algorithm to approximate the hafnian of a positive matrix A=(aij)A=\left(a_{ij}\right) satisfying (1.1.1) within any given relative error ϵ>0\epsilon>0.

As is the case with permanents, we deduce Theorem 2.1 from a result on the complex zeros of the hafnian.

Let us fix a real 0≤η<10\leq\eta<1 and and let

Let Z=(zij)Z=\left(z_{ij}\right) be an 2n×2n2n\times 2n symmetric complex matrix such that

We also obtain the following versions of Theorems 1.3 and 1.4.

Let Z=(zij)Z=\left(z_{ij}\right) be an 2n×2n2n\times 2n symmetric complex matrix such that

For any 0≤η<0.50\leq\eta<0.5 there exists γ=γ(η)>0\gamma=\gamma(\eta)>0 and for any positive integer nn and real 0<ϵ<10<\epsilon<1 there exists a polynomial p=pn,η,ϵp=p_{n,\eta,\epsilon} in the entries of 2n×2n2n\times 2n complex symmetric matrix A=(aij)A=\left(a_{ij}\right) such that deg⁡p≤γ(ln⁡n−ln⁡ϵ)\deg p\leq\gamma(\ln n-\ln\epsilon) and

As before, the polynomial pn,η,ϵp_{n,\eta,\epsilon} can be computed in nO(ln⁡n−ln⁡ϵ)n^{O(\ln n-\ln\epsilon)} time, where the implied constant in the “OO” notation depends on η\eta alone.

Our approach can be extended to a variety of partition functions , . In Section 3, we show how to extend it to multi-dimensional permanents of tensors.

Main results: multi-dimensional permanents

Let A=(ai1…id)A=\left(a_{i_{1}\ldots i_{d}}\right) be a dd-dimensional n×…×nn\times\ldots\times n array (tensor) filled with ndn^{d} real or complex matrices. We define the permanent of AA by

We define a slice of AA as the array of nd−1n^{d-1} entries of AA with one of the indices i1,…,idi_{1},\ldots,i_{d} fixed to a particular value and the remaining (d−1)(d-1) indices varying arbitrarily. Hence AA has altogether ndnd slices. If d=2d=2 and AA is a matrix then a slice is a row or a column.

We note that for d>2d>2 there are several different notions of the permanent of a tensor, cf., for example, .

We obtain the following extension of Theorem 1.3.

for some θ=θd>0\theta=\theta_{d}>0 such that (d−1)θ < 2π/3(d-1)\theta\ <\ 2\pi/3. Hence 0<ηd<10<\eta_{d}<1 and we can choose η2=0.5\eta_{2}=0.5, η3=6/9≈0.272\eta_{3}=\sqrt{6}/9\approx 0.272, η4≈0.184\eta_{4}\approx 0.184 and ηd=Ω(1d)\eta_{d}=\Omega\left(\frac{1}{d}\right).

Let Z=(zi1…id)Z=\left(z_{i_{1}\ldots i_{d}}\right) be a dd-dimensional complex n×…×nn\times\ldots\times n array such that

A version of Theorem 3.1 with weaker bounds η2=0.195\eta_{2}=0.195, η3=0.125\eta_{3}=0.125 and η4=0.093\eta_{4}=0.093 and a more complicated proof was obtained in .

For an integer d≥2d\geq 2, let us choose 0≤η<ηd0\leq\eta<\eta_{d}, where ηd\eta_{d} is the constant in Theorem 3.1. Then there exists γ=γ(d,η)>0\gamma=\gamma(d,\eta)>0 and for every integer nn and real 0<ϵ<10<\epsilon<1 there exists a polynomial p=pd,η,ϵ,np=p_{d,\eta,\epsilon,n} in the entries of a dd-dimensional n×…×nn\times\ldots\times n complex tensor A=(ai1…id)A=\left(a_{i_{1}\ldots i_{d}}\right) such that deg⁡p≤γ(ln⁡n−ln⁡ϵ)\deg p\leq\gamma(\ln n-\ln\epsilon) and

The polynomial pd,η,ϵ,np_{d,\eta,\epsilon,n} can be computed in nO(ln⁡n−ln⁡ϵ)n^{O(\ln n-\ln\epsilon)} time, where the implied constant in the “OO” notation depends only on dd and η\eta.

While we were unable to obtain exact equivalents of Theorems 1.1 and 2.1, our approach produces the following approximation result for multi-dimensional permanents.

so that η2=1\eta_{2}=1, η3=2−1≈0.414\eta_{3}=\sqrt{2}-1\approx 0.414, η4=2−3≈0.268\eta_{4}=2-\sqrt{3}\approx 0.268, etc.

For any 0≤η<ηd0\leq\eta<\eta_{d} there is a constant γ=γ(d,η)\gamma=\gamma(d,\eta) and for any positive integer nn and real 0<ϵ<10<\epsilon<1 there is a polynomial p=pd,η,ϵ,np=p_{d,\eta,\epsilon,n} is the entries of a dd-dimensional n×⋯×nn\times\cdots\times n tensor such that deg⁡p≤γ(ln⁡n−ln⁡ϵ)\deg p\leq\gamma(\ln n-\ln\epsilon) and

for any dd-dimensional n×…×nn\times\ldots\times n real tensor A=(ai1…id)A=\left(a_{i_{1}\ldots i_{d}}\right) satisfying

For an integer d≥2d\geq 2, let ηd\eta_{d} be the constant of Theorem 3.3. Let us fix a real 0≤η<ηd0\leq\eta<\eta_{d} and let

Let Z=(zi1…id)Z=\left(z_{i_{1}\ldots i_{d}}\right) be a dd-dimensional tensor of complex numbers such that

for all 1≤i1,…,id≤n1\leq i_{1},\ldots,i_{d}\leq n.

Finally, we obtain multi-dimensional versions of Theorems 1.5 and 1.6.

Let α≈0.278\alpha\approx 0.278 be the real solution of the equation αe1+α=1\alpha e^{1+\alpha}=1. For an integer d≥2d\geq 2, let

Let Z=(zi1…id)Z=\left(z_{i_{1}\ldots i_{d}}\right) be a dd-dimensional complex n×…×nn\times\ldots\times n array such that the sum of ∣1−zi1…id∣\left|1-z_{i_{1}\ldots i_{d}}\right| over each slice of ZZ does not exceed ηdnd−1\eta_{d}n^{d-1}.

For every integer d≥2d\geq 2 and every 0 ≤ η < ηd0\ \leq\ \eta\ <\ \eta_{d}, where ηd\eta_{d} is the constant of Theorem 3.5, there exists a constant γ=γ(d,η)>0\gamma=\gamma(d,\eta)>0 such that for any positive integer nn and real 0<ϵ<10<\epsilon<1 there is a polynomial p=pd,η,ϵ,np=p_{d,\eta,\epsilon,n} in the entries of a dd-dimensional n×…×nn\times\ldots\times n tensor such that deg⁡p≤γ(ln⁡n−ln⁡ϵ)\deg p\leq\gamma(\ln n-\ln\epsilon) and

for any dd-dimensional n×…×nn\times\ldots\times n tensor A=(ai1…id)A=\left(a_{i_{1}\ldots i_{d}}\right) for which the sum of ∣1−ai1…id∣\left|1-a_{i_{1}\ldots i_{d}}\right| over each slice of AA does not exceed ηnd−1\eta n^{d-1}.

Again, the polynomial pd,η,ϵ,np_{d,\eta,\epsilon,n} can be computed in nO(ln⁡n−ln⁡ϵ)n^{O(\ln n-\ln\epsilon)} time, where the implied constant in the “OO” notation depends on dd and η\eta alone. Theorem 3.6 is applicable to 0-1 tensors AA, which contain a small (and exponentially decreasing with dd) fraction of 0s in each slice.

In Section 4, we prove Theorems 1.3, 2.3 and 3.1.

In Section 5, we prove Theorems 1.2, 2.2 and 3.3.

In Section 6, we prove Theorems 1.5 and 3.5.

In Section 7, we prove Theorems 1.4, 1.6, 2.4, 3.2 and 3.6.

In Section 8, we prove Theorems 1.1, 2.1 and 3.3.

Finally, in Section 9, we discuss possible ramifications and open questions.

Proofs of Theorems 1.3, 2.3 and 3.1

and by ∣⋅∣|\cdot| the corresponding Euclidean norm (the modulus of a complex number).

Let α1,…,αn\alpha_{1},\ldots,\alpha_{n} and β1,…,βn\beta_{1},\ldots,\beta_{n} be complex numbers such that

Then v≠0v\neq 0, w≠0w\neq 0 and the angle between vv and ww does not exceed

Let us consider the orthogonal projection of each vector uju_{j} onto the bisector of KK. Then the length of the projection of uju_{j} is at least ∣uj∣cos⁡(θ/2)|u_{j}|\cos(\theta/2) and hence the length of the orthogonal projection of uu onto the bisector of KK is at least

Since the length of uu is at least as large as the length of its orthogonal projection, the proof of Part (1) follows.

From Part (1), we conclude that ∣v−u∣<∣u∣|v-u|<|u|. Therefore, v=(v−u)+u≠0v=(v-u)+u\neq 0 and the angle between vv and uu does not exceed

Similarly, w=(w−u)+u≠0w=(w-u)+u\neq 0 and the angle between ww and uu does not exceed

Therefore, the angle between vv and ww does not exceed

and the proof of Part (2) follows. \hfill□\hfill\square

For a positive integer nn, let Un\mathcal{U}_{n} be the set of n×nn\times n complex matrices Z=(zij)Z=\left(z_{ij}\right) such that

We prove by induction on nn the following statement:

The statement obviously holds for n=1n=1. Assuming that the statement holds for matrices in Un−1\mathcal{U}_{n-1} with n≥2n\geq 2, let us consider two matrices A,B∈UnA,B\in\mathcal{U}_{n} that differ in one row or in one column only. Since the permanent of a matrix does not change when the rows or columns of the matrix are permuted or when the matrix is transposed, without loss of generality we assume that BB is obtained from AA by replacing the entries a1ja_{1j} of the first row by complex numbers b1jb_{1j} for j=1,…,nj=1,\ldots,n. Let AjA_{j} be the (n−1)×(n−1)(n-1)\times(n-1) matrix obtained from AA by crossing out the first row and the jj-th column. Then

which concludes the induction step. □\square

One can observe that η=0.5\eta=0.5 is the largest value of η\eta for which the equation

has a solution θ<2π/3\theta<2\pi/3 and hence the induction in Section 4.1 can proceed. It is not known whether the constant 0.50.5 in Theorem 1.3 can be increased. Since

the value of 0.50.5 in Theorem 1.3 cannot be replaced by 2/2≈0.707\sqrt{2}/2\approx 0.707. Moreover, as Boris Bukh noticed , we have

where AA is a matrix as above, mm is odd and JmJ_{m} is an m×mm\times m matrix filled with 1s.

2 Proof of Theorem 2.3

The statement obviously holds for n=1n=1. Suppose that n>1n>1. Since the hafnian of the matrix does not change under a simultaneous permutation of rows and columns, without loss of generality we may assume that AA and BB differ in the first row and first column only. Instead of the Laplace expansion (4.1.2), we use the recurrence

where AjA_{j} is the (2n−2)×(2n−2)(2n-2)\times(2n-2) matrix obtained from AA by crossing out the first row and the first column and the jj-th row and the jj-th column. We observe that, up to a simultaneous permutation of rows and columns, any two matrices Aj1A_{j_{1}} and Aj2A_{j_{2}} differ only in the kk-th row and kk-th column for some kk and the induction proceeds as in Section 4.1. □\square

3 Proof of Theorem 3.1

By and large, the proof proceeds as in Section 4.1. For a positive integer nn, we define Un\mathcal{U}_{n} as the set of n×…×nn\times\ldots\times n complex arrays Z=(zi1…id)Z=\left(z_{i_{1}\ldots i_{d}}\right) such that

We prove by induction on nn the following statement:

and the statement holds. Assuming that n≥2n\geq 2, let us consider two tensors A,B∈UnA,B\in\mathcal{U}_{n} that differ in one slice only. Without loss of generality, we assume that BB is obtained from AA by replacing the “top slice” numbers a1i2…ida_{1i_{2}\ldots i_{d}} with numbers b1i2…idb_{1i_{2}\ldots i_{d}}. We use a dd-dimensional version of the Laplace expansion:

Proofs of Theorems 1.2, 2.2 and 3.4

As in Section 4, we start with a simple geometric lemma.

for some complex numbers α1,…,αn\alpha_{1},\ldots,\alpha_{n} and β1,…,βn\beta_{1},\ldots,\beta_{n}.

Suppose that α1,…,αn\alpha_{1},\ldots,\alpha_{n} are non-negative real and that β1,…,βn\beta_{1},\ldots,\beta_{n} are real such that

Suppose that α1,…,αn\alpha_{1},\ldots,\alpha_{n} and β1,…,βn\beta_{1},\ldots,\beta_{n} are real such that

for some 0≤η<10\leq\eta<1. Then v≠0v\neq 0, w≠0w\neq 0 and the angle between vv and ww does not exceed 2arctan⁡η2\arctan\eta.

for some 0≤η<10\leq\eta<1 and some 0≤τ<1−η0\leq\tau<1-\eta. Then v≠0v\neq 0, w≠0w\neq 0 and the angle between vv and ww does not exceed

It follows that v≠0v\neq 0, w≠0w\neq 0 and that the angle between vv and ww is

with the equality attained when ∣v∣2=∣w∣2=∣u∣2+∣x∣2|v|^{2}=|w|^{2}=|u|^{2}+|x|^{2} and xx is orthogonal to uu. Hence for given ∣u∣|u| and ∣x∣|x| the largest angle of

between vv and ww is attained when xx is orthogonal to uu and is equal to

By Part (2), v′≠0v^{\prime}\neq 0, w′≠0w^{\prime}\neq 0 and the angle between v′v^{\prime} and w′w^{\prime} does not exceed θ=2arctan⁡η\theta=2\arctan\eta. Since

Since 0≤τ<1−η0\leq\tau<1-\eta, we have v=v′+iv′′≠0v=v^{\prime}+iv^{\prime\prime}\neq 0, w=w′+iw′′≠0w=w^{\prime}+iw^{\prime\prime}\neq 0 and the angle between vv and v′v^{\prime} and the angle between ww and w′w^{\prime} do not exceed

Therefore the angle between vv and ww does not exceed θ+2ω\theta+2\omega and the proof of Part (3) follows. □\square

For a positive integer nn, let Un\mathcal{U}_{n} be the set of n×nn\times n complex matrices Z=(zij)Z=\left(z_{ij}\right) such that

We prove by induction on nn the following statement:

2 Proof of Theorem 2.2

Since τ<1−η\tau<1-\eta, the statement holds for n=1n=1. Suppose that n>1n>1. As in Section 4.2, without loss of generality we assume that AA and BB differ in the first row and column only. Let AjA_{j} be the (2n−2)×(2n−2)(2n-2)\times(2n-2) matrix obtained from AA by crossing out the first row and the first column and the jj-th row and the jj-th column. As in Section 4.2, we observe that, up to a simultaneous permutation of rows and columns (which does not change the hafnian), any two matrices Aj1A_{j_{1}} and Aj2A_{j_{2}} differ only in the kk-th row and kk-th column for some kk. Using the expansion (4.2.1), we complete the induction as in Section 5.1. □\square

3 Proof of Theorem 3.4

By and large, the proof proceeds as in Section 5.1. For a positive integer nn, we define Un\mathcal{U}_{n} as the set of n×…×nn\times\ldots\times n complex arrays Z=(zi1…id)Z=\left(z_{i_{1}\ldots i_{d}}\right) such that

for all 1≤i1,…,id≤n1\leq i_{1},\ldots,i_{d}\leq n. We prove by induction on nn the following statement:

Proofs of Theorems 1.5 and 3.5

Since Theorem 1.5 is a particular case of Theorem 3.5 for d=2d=2, we prove the latter theorem. We use a combinatorial interpretation of the multi-dimensional permanent in terms of matchings in a hypergraph.

If ∣V∣<d|V|<d then HH has no edges and hence PH(w)=PH−v(w)=1P_{H}(w)=P_{H-v}(w)=1. Suppose now that ∣V∣≥d|V|\geq d. We observe the following recurrence:

where the PH−{v}(w)P_{H-\{v\}}(w) accounts for the matchings in HH not containing vv and the sum accounts for the matchings of HH containing vv. By the induction hypothesis, PH−{v}(w)≠0P_{H-\{v\}}(w)\neq 0, so we rewrite (6.1.2) as

If there are no edges ee containing vv then PH(w)=PH−{v}(w)P_{H}(w)=P_{H-\{v\}}(w) and (6.1.1) follows. Otherwise, let e={v,v2,…,vd}e=\{v,v_{2},\ldots,v_{d}\} be an edge containing vv. Telescoping, we obtain

By the induction hypothesis, each ratio in the right hand side of (6.1.4) does not exceed d/(d−1)d/(d-1) in the absolute value, and hence

from which it follows that PH(w)≠0P_{H}(w)\neq 0. Denoting

from (6.1.5) we have a chain of implications

The bound of Lemma 6.1 and to some extent its proof agrees with those of for the roots of the matching polynomial of a graph.

Next, we need a weaker version on an estimate from .

Let α≈0.278\alpha\approx 0.278 be the constant of Theorem 3.5, so that αe1+α=1\alpha e^{1+\alpha}=1. For a positive integer nn, let

Proof. We observe that if ∣z∣≤α|z|\leq\alpha then

Finally, we need a theorem of Szegő, see for example, Chapter IV of and also for generalizations.

be complex polynomials. We define the Schur product h=f∗gh=f\ast g by

Suppose that f(z)≠0f(z)\neq 0 whenever ∣z∣≤r1|z|\leq r_{1} and g(z)≠0g(z)\neq 0 whenever ∣z∣≤r2|z|\leq r_{2} for some r1,r2>0r_{1},r_{2}>0.

Then h(z)≠0h(z)\neq 0 whenever ∣z∣≤r1r2|z|\leq r_{1}r_{2}.

2 Proof of Theorem 3.5

Let HH be the complete dd-partite hypergraph with set VV of ndnd vertices, split into dd parts and vertices in each part numbered 11 through nn. Each edge of HH consist of exactly one vertex from each part and we let the weight of edge (i1,…,id)\left(i_{1},\ldots,i_{d}\right) equal to wi1…id=zi1…id−1w_{i_{1}\ldots i_{d}}=z_{i_{1}\ldots i_{d}}-1. For k=1,…,nk=1,\ldots,n, let WkW_{k} be the total weight of all matchings in HH consisting of exactly kk edges. We write

Then f(z)f(z) is the value of the matching polynomial PHP_{H} on the scaled weights zwi1…idzw_{i_{1}\ldots i_{d}} and from Lemma 6.1 we conclude that

Let pnp_{n} be the polynomial of Lemma 6.2. Applying Lemma 6.2 and Theorem 6.1 to the Schur product h=f∗pn∗⋯∗pnh=f\ast p_{n}\ast\cdots\ast p_{n} of ff and d−1d-1 polynomials pnp_{n}, we conclude from (6.2.1) that

Proofs of Theorems 1.4, 1.6, 2.4, 3.2 and 3.6

We need the following simple result first obtained in . For completeness, we give its proof here.

be the Taylor polynomial of f(z)f(z) of degree mm computed at z=0z=0. Then

Using the Taylor series expansion for the logarithm, we obtain

It follows from Lemma 7.1 that as long as the roots of a polynomial g(z)g(z) stay at distance at least β\beta away from for some fixed β>1\beta>1, then to approximate ln⁡g(1)\ln g(1) within an additive error ϵ\epsilon, we can use the Taylor polynomial of f(z)=ln⁡g(z)f(z)=\ln g(z) at z=0z=0 of degree m=O(ln⁡deg⁡g−ln⁡ϵ)m=O(\ln\deg g-\ln\epsilon), where the implied constant in the “OO” notation depends on β\beta only.

As is discussed in , the computation of the first mm derivatives f(1)(0),…,f(m)(0)f^{(1)}(0),\ldots,f^{(m)}(0) of f(z)=ln⁡g(z)f(z)=\ln g(z) reduces to the computation of the first mm derivatives g(1)(0),…,g(m)(0)g^{(1)}(0),\ldots,g^{(m)}(0) of gg. Indeed,

where g(0)(0)=g(0)≠0g^{(0)}(0)=g(0)\neq 0. Writing equations (7.1.1) for k=1,…,mk=1,\ldots,m we obtain a non-singular triangular system of linear equations in f(k)(0)f^{(k)}(0) with numbers g(0)≠0g(0)\neq 0 on the diagonal from which the values of f(1)(0),…,f(m)(0)f^{(1)}(0),\ldots,f^{(m)}(0) can be computed in O(m2)O(m^{2}) time from the values of g(0),g(1)(0),…,g(m)(0)g(0),g^{(1)}(0),\ldots,g^{(m)}(0). Thus

and, generally, f(k)(0)f^{(k)}(0) is a linear combination of expressions of the type

Note that computing f(k)(0)f^{(k)}(0) from g(k)(0)g^{(k)}(0) is akin to computing cumulants of a distribution from its moments.

2 Proof of Theorem 1.4

Let J=JnJ=J_{n} be the n×nn\times n matrix filled with 1s and let A=(aij)A=\left(a_{ij}\right) be an n×nn\times n complex matrix satisfying the conditions of the theorem. We define a univariate polynomial

be the Taylor polynomial of degree mm computed at z=0z=0. It follows from Lemma 7.1 that for some constant γ=γ(η)>0\gamma=\gamma(\eta)>0 and integer m≤γ(ln⁡n−ln⁡ϵ)m\leq\gamma(\ln n-\ln\epsilon) we have

It remains to show that Tm(1)T_{m}(1) is a polynomial pp in the entries aija_{ij} of the matrix AA of degree at most mm. In view of Section 7.1 and the fact that g(0)=n!g(0)=n!, it suffices to check that g(k)(0)g^{(k)}(0) is a polynomial in the entries aija_{ij} of the matrix AA of degree at most kk which can be computed in nO(k)n^{O(k)} time, where the implied constant in the “OO” notation is absolute. We have

where the last sum is taken over all ordered sets (i1,…,ik)(i_{1},\ldots,i_{k}) of distinct numbers between 11 and nn. By symmetry, we can further write

where the last sum is taken over all (n!/(n−k)!)2≤n2k(n!/(n-k)!)^{2}\leq n^{2k} pairs of ordered sets (i1,…,ik)(i_{1},\ldots,i_{k}) and (j1,…,jk)(j_{1},\ldots,j_{k}) of distinct numbers between 11 and nn. □\square

It follows that the polynomial pp of Theorem 1.4 can be computed in time nO(ln⁡n−ln⁡ϵ)n^{O(\ln n-\ln\epsilon)}, where the implied constant in the “OO” notation depends on η\eta alone.

3 Proof of Theorem 2.4

The proof is very similar to that of Section 7.2. Let J=J2nJ=J_{2n} be the 2n×2n2n\times 2n matrix filled with 1s and let A=(aij)A=\left(a_{ij}\right) be a 2n×2n2n\times 2n symmetric complex matrix satisfying the conditions of theorem. We define a univariate polynomial

where the sum is taken over all (2n)!/2nn!(2n)!/2^{n}n! unordered partitions of the set {1,2,…,2n}\{1,2,\ldots,2n\} into nn pairwise disjoint unordered pairs {i1,j1},…,{in,jn}\{i_{1},j_{1}\},\ldots,\{i_{n},j_{n}\}. Hence for k>0k>0 we have

where the sum is taken over all unordered collections {i1,j1},…,{ik,jk}\{i_{1},j_{1}\},\ldots,\{i_{k},j_{k}\} of pairwise disjoint unordered pairs.

The proof then proceeds as in Section 7.2. □\square

It follows that the polynomial pp of Theorem 2.4 can be computed in time nO(ln⁡n−ln⁡ϵ)n^{O(\ln n-\ln\epsilon)}, where the implied constant in the “OO” notation depends on η\eta alone.

4 Proof of Theorem 3.2

Let J=Jn,dJ=J_{n,d} be the dd-dimensional n×…×nn\times\ldots\times n tensor filled with 1s and let AA be the tensor satisfying the conditions of the theorem. We introduce a univariate polynomial

where the last sum is taken over all ordered kk-tuples (i1,…,ik)(i_{1},\ldots,i_{k}) of distinct indices 1≤ij≤n1\leq i_{j}\leq n. By symmetry we can write

where the last sum is taken over all (n!/(n−k)!)d≤nkd(n!/(n-k)!)^{d}\leq n^{kd} collections of dd ordered kk-tuples (i1j,…,ikj)\left(i_{1j},\ldots,i_{kj}\right) for j=1,…,dj=1,\ldots,d of distinct indices 1≤i1j,…,ikj≤n1\leq i_{1j},\ldots,i_{kj}\leq n. The proof then proceeds as in Section 7.2. □\square

The polynomial pp can be computed in nO(ln⁡n−ln⁡ϵ)n^{O(\ln n-\ln\epsilon)} time, where the implied constant in the “OO” notation depends on η\eta and dd only.

5 Proof of Theorems 1.6 and 3.6

As Theorem 1.6 is a particular case of Theorem 3.6, we prove the latter theorem only. As in Section 7.4, we define the univariate polynomial (7.4.1). By Theorem 3.5, we have

and the proof follows as in Section 7.4. □\square

Proofs of Theorems 1.1, 2.1 and 3.3

Lemma 7.1 allows us to approximate the value of ln⁡g(1)\ln g(1) by a low degree Taylor polynomial of ln⁡g(z)\ln g(z) at z=0z=0 provided the polynomial g(z)g(z) does not have zeros in a disc of radius β>1\beta>1 centered at z=0z=0. In view of Theorems 1.2, 2.2 and 3.4, we would like to construct a similar approximation under a weaker assumption that g(z)≠0g(z)\neq 0 for zz in some neighborhood of the interval $inthecomplexplane.Toachievethat,wefirstconstructapolynomialin the complex plane. To achieve that, we first construct a polynomial\phisuchthatsuch that\phi(0)=0,,\phi(1)=1andsuchthatand such that\phimapsthediscmaps the disc|z|\leq\betaforsomefor some\beta>1insidetheneighborhood.WethenapplyLemma7.1tothecompositioninside the neighborhood. We then apply Lemma 7.1 to the compositiong(\phi(z)).Thefollowinglemmaprovidesanexplicitconstructionofsuchapolynomial. The following lemma provides an explicit construction of such a polynomial\phi$.

Then ϕ(z)\phi(z) is a polynomial of degree NN such that ϕ(0)=0\phi(0)=0, ϕ(1)=1\phi(1)=1,

Proof. Clearly, ϕ(z)\phi(z) is a polynomial of degree NN such that ϕ(0)=0\phi(0)=0 and ϕ(1)=1\phi(1)=1. It remains to prove that ϕ\phi maps the disc ∣z∣≤β|z|\leq\beta into the strip −ρ≤ℜ z≤1+2ρ-\rho\leq\Re\thinspace z\leq 1+2\rho, ∣ℑ z∣≤2ρ\left|\Im\thinspace z\right|\leq 2\rho.

the function Fρ(z)F_{\rho}(z) is well-defined by the choice of a branch of the logarithm, which we choose so that

Combining (8.0.1), (8.0.2) and (8.0.3), we conclude that for ∣z∣≤β|z|\leq\beta we have

Substituting z=1z=1 in (8.0.3) and using (8.0.2), we conclude that

where ρPN(α)\rho P_{N}(\alpha) is positive real, which by (8.0.5) satisfies

Let A=(aij)A=\left(a_{ij}\right) be an n×nn\times n real matrix satisfying the conditions of the theorem and let J=JnJ=J_{n} be the n×nn\times n matrix filled with 1s. As in Section 7.2, we define a univariate polynomial

for some ξ>0\xi>0 and ζ>0\zeta>0. Then the entries bijb_{ij} of the matrix B=J+z(A−J)B=J+z(A-J) satisfy

and then choose ζ=ζ(δ)>0\zeta=\zeta(\delta)>0 such that

By Theorem 1.2, we have r(z)≠0r(z)\neq 0 for zz satisfying (8.1.1).

Using Lemma 8.1, we construct a univariate polynomial ϕ\phi of some degree N=N(δ)N=N(\delta) such that ϕ(0)=0\phi(0)=0, ϕ(1)=1\phi(1)=1 and ϕ\phi maps the disc {z: ∣z∣≤β}\{z:\ |z|\leq\beta\} inside the strip (8.1.1), where β=β(δ)>1\beta=\beta(\delta)>1. Let

Then g(z)g(z) is a univariate polynomial such that deg⁡g ≤ Nn\deg g\ \leq\ Nn,

where we chose the branch of the logarithm such that f(0)=ln⁡n!f(0)=\ln n! is real. Let Tm(z)T_{m}(z) be the Taylor polynomial of f(z)f(z) of degree mm computed at z=0z=0. By Lemma 7.1, we have

for some m≤γ(ln⁡n−ln⁡ϵ)m\leq\gamma(\ln n-\ln\epsilon) where γ=γ(δ)>0\gamma=\gamma(\delta)>0 is a constant depending on δ\delta alone. It remains to show that Tm(1)T_{m}(1) is a polynomial in the entries of AA of degree not exceeding mm.

For a univariate polynomial p(z)p(z), let p[m]p_{[m]} be the polynomial obtained from pp by discarding all monomials of degree higher than mm. Since ϕ(0)=0\phi(0)=0, the constant term of of ϕ\phi is and therefore

In words: to compute the polynomial g[m]g_{[m]} obtained from gg by discarding the monomials of degree higher than mm, it suffices to compute the polynomials r[m]r_{[m]} and ϕ[m]\phi_{[m]} obtained from rr and ϕ\phi respectively by discarding the monomials of degree higher than mm, and then discard the monomials of degree higher than mm in the composition r[m](ϕ[m])r_{[m]}(\phi_{[m]}).

From Section 7.2, it follows that r(k)(0)r^{(k)}(0) is a polynomial of degree kk in the entries of the matrix AA. It follows then that g(k)(0)g^{(k)}(0) is a polynomial in the entries of AA of degree at most kk that can be computed in nO(k)n^{O(k)} time (the implied constant in the “OO” notation is absolute). From Section 7.1 it follows then that f(k)(0)f^{(k)}(0) is a polynomial in the entries of AA of degree at most kk, which completes the proof. □\square

2 Proof of Theorem 2.1

Given a 2n×2n2n\times 2n real symmetric matrix AA satisfying the conditions of the theorem, we define the univariate polynomial r(z)r(z) by

where J=J2nJ=J_{2n} is the 2n×2n2n\times 2n matrix filled with 1s and the proof then proceeds as in Section 8.1, only that the reference to Theorem 1.2 is replaced by the reference to Theorem 2.2 and the reference to Section 7.2 is replaced by the reference to Section 7.3. □\square

3 Proof of Theorem 3.3

Given a dd-dimensional n×…×nn\times\ldots\times n tensor AA satisfying the conditions of the theorem, we define the univariate polynomial r(z)r(z) by

where J=Jd,nJ=J_{d,n} is the dd-dimensional n×…×nn\times\ldots\times n tensor filled with 1s. Suppose that (8.1.1) holds for some ξ>0\xi>0 and ζ>0\zeta>0. Then the entries bi1…idb_{i_{1}\ldots i_{d}} of the tensor B=J+z(A−J)B=J+z(A-J) satisfy

and then choose ζ=ζ(η)>0\zeta=\zeta(\eta)>0 such that

By Theorem 3.4, we have r(z)≠0r(z)\neq 0 for zz satisfying (8.1.1) with ξ\xi and ζ\zeta so chosen. The proof then proceeds as in Section 8.1, only that the reference to Section 7.2 is replaced by the reference to Section 7.4. □\square

Concluding remarks

2 Connections to the Szegő curve

Kontorovich and Wu noticed that the location of the complex zeros of r(z)r(z), which is crucial for our analysis of the approximation of the permanent, for A=nIA=nI can be determined from a result of Szegő, who showed in 1922 that as n⟶∞n\longrightarrow\infty, the zeros of the polynomial

3 Connections to the mixed characteristic polynomial

In their solution of the Kadison - Singer problem, Marcus, Spielman and Srivastava introduced and studied the mixed characteristic polynomial of nn Hermitian n×nn\times n matrices Q1,…,QnQ_{1},\ldots,Q_{n},

where Wk(A)W_{k}(A) is the sum of permanents of the k×kk\times k submatrices of AA, so up to a sign and a substitution x⟼−1/xx\longmapsto-1/x, the polynomial pAp_{A} is the matching polynomial of Section 6 (and the fact that the roots of pAp_{A} are non-negative real is a particular case of the Heilmann - Lieb Theorem ). On the other hand,

The relation between pp and rr is essentially used in the proof of Theorem 3.5, which was absent in the version of the paper the referee commented on, but was obtained before the author received the comment.

On the other hand, the general mixed characteristic polynomial may appear useful for approximating the mixed discriminant of Q1,…,QnQ_{1},\ldots,Q_{n}, which, up to a sign is just the constant term of pQ1,…,Qnp_{Q_{1},\ldots,Q_{n}}.

4 Approximation of general polynomials

As another example, we consider the independence polynomial of graph. Let G=(V,E)G=(V,E) be a graph (undirected, without loops or multiple edges) with set VV of vertices and set EE of edges. A set S⊂VS\subset V is called independent if no two vertices in SS span an edge of GG (the empty set S=∅S=\emptyset is considered independent). The independence polynomial of GG is defined as

Then pG(1)p_{G}(1) is the number of all independent sets in GG, a quantity of considerable combinatorial interest. On the other hand, the value of the derivative pG(k)(0)p_{G}^{(k)}(0) can be computed in ∣V∣O(k)|V|^{O(k)} time by a direct inspection of all kk-subsets S⊂VS\subset V.

Suppose we know that pG(z)≠0p_{G}(z)\neq 0 provided ∣z∣≤β|z|\leq\beta for some β>0\beta>0 (for example, β\beta can be the Dobrushin bound, see and ). Lemma 7.1 then implies that for any 0≤λ<10\leq\lambda<1, fixed in advance, the value of pG(z)p_{G}(z) can be approximated within a relative error 0<ϵ<10<\epsilon<1 in quasi-polynomial time ∣V∣O(ln⁡∣V∣−ln⁡ϵ)|V|^{O(\ln|V|-\ln\epsilon)} provided ∣z∣≤λβ|z|\leq\lambda\beta, see for many examples of this nature and also and for algorithms based on the “correlation decay” idea.

On the other hand, for a general graph GG there cannot be such a sleeve SS unless NP-complete problems admit a quasi-polynomial time algorithm. Indeed, generally, it is an NP-hard problem to approximate pG(z)p_{G}(z) for a real z>λβz>\lambda\beta, where λ>0\lambda>0 is some absolute constant and β\beta is the Dobrushin lower bound on the absolute value of the roots of pG(z)p_{G}(z) . This means that for a general graph GG one can expect the complex roots of pG(z)p_{G}(z) to “surround” the origin, so that there is no possibility to squeeze a sleeve between them to connect 0 and 1.

Since the first version of this paper appeared as a preprint, this general direction was pursued further in .

5 Approximating multi-dimensional permanents better

It would be interesting to extend the class of polynomials for which a version of Theorems 1.1 and 2.1 can be obtained. While we failed to obtain such a version for the multi-dimensional permanent (see Section 3), there does not seem to be a computational complexity obstacle for such an extension to exist. In it is shown that the dd-dimensional permanent of a n×…×nn\times\ldots\times n tensor with positive entries between an arbitrarily small δ>0\delta>0, fixed in advance, and 1 can be approximated within an nO(1)n^{O(1)} factor in polynomial time, where the implicit constant in the “OO” notation depends only on dd and δ\delta, which can be viewed as an indirect evidence that Theorem 1.1 can indeed be extended to multi-dimensional permanents.

Acknowledgments

I am grateful to anonymous referees for their careful reading of the paper and suggestions and to Max Kontorovich and Han Wu for conducting numerical experiments on the approximation of permanents and pointing out to connections with the Szegő curve.

References