Approximate counting using Taylor’s theorem:
a survey
Abstract
In this article we consider certain well-known polynomials associated with graphs including the independence polynomial and the chromatic polynomial. These polynomials count certain objects in graphs: independent sets in the case of the independence polynomial and proper colourings in the case of the chromatic polynomial. They also have interpretations as partition functions in statistical physics.
The algorithmic problem of (approximately) computing these types of polynomials has been studied for close to 50 years, especially using Markov chain techniques. Around eight years ago, Barvinok devised a new algorithmic approach based on Taylor’s theorem for computing the permanent of certain matrices, and the approach has been applied to various graph polynomials since then. This article is intended as a gentle introduction to the approach as well as a partial survey of associated techniques and results.
Keywords: approximate counting, independence polynomial, complex zeros, chromatic polynomial.
1 Introduction
Computational counting is an area of theoretical computer science, which, at its heart, is concerned with the computational problem of counting certain structures inside some combinatorial object given as input. Think of counting the number of satisfying assignments of some logical formula, or the number of independent sets in a graph. Often the structures to be counted have some natural weighting and one is interested in the weighted count.
In this article, we focus on graph counting problems and in particular on finding efficient algorithms for (approximately) counting objects of interest inside some input graph. The counting problems we consider here are ones where the number of objects to be counted is typically super-polynomial in the size of the graph and cannot be directly enumerated in polynomial time. For example, the number of independent sets of a graph can be exponentially large in the size of the graph333As a contrasting example the number of triangles of a graph is polynomial in the size of the graph and can be enumerated by brute force in polynomial time. Of course it is interesting to know whether there is an algorithm for counting triangles that is better than using brute force, but we do not pursue this here. and indeed, the problem of (approximately) counting independent sets of a graph is a rich area of research (here an independent set in a graph is a subset of vertices no two of which are adjacent). The problem of exact counting is often computationally hard (this is the case for independent sets [78, 86, 42]) so one is usually interested in approximation algorithms for counting problems. A notable exception is the problem of counting spanning trees of a graph. The number of spanning trees is typically exponential in the size of the graph, but spanning trees can be counted in polynomial time via the matrix tree theorem [62]. Throughout the article we use the example of counting independent sets in graphs to illustrate the various ideas we discuss. In fact the ideas apply more generally for counting many other graph theoretic objects including trees, matchings, cuts, and proper colourings (we discuss proper colourings towards the end of the article).
The basic combinatorial counting problems are often not treated directly, but are considered in more generality by examining their corresponding generating functions. For example, for independent sets, one is interested in the independence polynomial, which for a graph , is defined to be the polynomial
where is the number of independent sets of size in . This polynomial encodes a lot of information about the (sizes) of independent sets in . For example it is easy to see that gives the number of independent sets in and gives the average size of an independent set in . Knowing the value of for very large would allow one to extract the degree of the polynomial i.e. the size of the largest independent set (which is known to be -hard to compute and even to approximate within a constant factor). This already tells us we should not expect to be able to efficiently approximate the independence polynomial at all values of .
In this article, we describe a recent technique, the so-called Taylor polynomial interpolation method of Barvinok (first introduced in [7]), for designing approximation algorithms for computational counting problems. Our aim here is to introduce the reader to the ideas behind the method and to give a flavour of the mathematics involved. We do not intend to give a complete survey of results that use the technique and nor do we fully formalise all of the ideas we present. For the latter, we refer the reader to the excellent book of Barvinok [6] and to [72].
One distinguishing feature of the Taylor interpolation method is that, as well as its applications to ordinary counting problems, it also applies to evaluations of generating functions at negative and complex numbers. This is in contrast to earlier techniques. One motivation for understanding such complex evaluations is in quantum computing [90, 26, 70, 49], although we will not discuss this here. Another is that complex evaluations are sometimes useful for real counting problems (see e.g. [3]), and perhaps most importantly, broadening our perspective to the complex plane gives a deeper understanding of the underlying computational complexity of various counting problems (see Section 5 for more discussion on this).
Other techniques for designing approximate counting algorithms (which we will not discuss) include the Markov chain Monte Carlo method (see Jerrum [62] for an excellent introduction to the area) as well as the correlation decay method first introduced by Weitz [89] and Bandyopadhyay and Gamarnik [4] (see e.g. Chapters 5 and 6 of [6] for an introduction). A very recent technique, closely related to Barvinok’s interpolation method, is based on the cluster expansion from statistical physics and has been introduced by Jenssen, Keevash and Perkins [61]. We say a few words about this at the end of Section 4.
1.1 Connection to statistical physics
The generating functions for the counting problems we encounter are often studied in the statistical physics community (using different terminology). For example the independence polynomial is known as the partition function of the hard-core model in statistical physics. The hard-core model is a model for gases. Given a closed container of a gas at equilibrium consider examining the gas in a small region of space inside the container. The (discretised) space in the region is represented by a grid graph, where vertices of the graph represent points in space. Each such point can either be occupied or unoccupied by a gas molecule but adjacent points in space cannot both be occupied due to repulsive forces between the molecules. Therefore, at any moment in time, the gas molecules can only occupy an independent set in the grid. The probability that at any moment in time the occupied points form a particular independent set of the grid is proportional to , where is a temperature-like parameter often called the fugacity. A high temperature corresponds to a small value of , which, as we intuitively expect, makes it less likely that we see a large set of occupied points in our small region of space. Since , and , we see that . Here we see the independence polynomial (known here as the partition function of the hard-core model) appearing as the normalising constant in the probability. Again, this partition function is much more than just a normalising constant, and encodes a lot of physical information about the system. For example, by considering the limiting behaviour of and its derivatives for larger and larger graphs (usually grids), discontinuities of these limit functions give information about phase transitions in the system, that is, sharp changes in the physical parameters associated with the system indicating a qualitative change in the system. We direct the reader to [46] for a comprehensive and rigourous mathematical treatment of phase transitions for many models and to [81, 38, 53] for more on the hard-core model. We will not be concerned directly with the statistical physics, but some results originally proved by statistical physicists will be used in the algorithmic approach we describe.
1.2 Preliminaries
We have already mentioned the independence polynomial as an example of a graph polynomial that we may wish to approximate. The independence polynomial will serve as a running example throughout the article to illustrate various ideas. Here we mention a few basic properties of the independence polynomial to give the reader a feel for this object.
Recall that , where the sum is over all independent sets of . The first easy but important fact to note is that the empty set is an independent set, so (i.e. the constant term in the polynomial) is always . Another important fact is that the independence polynomial is multiplicative, that is , where we write for the disjoint union of the graphs and . This is because every independent set of can be written uniquely as , where is an independent set of . Therefore , which allows us to factorise the sum. Using this multiplicative property, we also see, for example, that the independence polynomial of isolated vertices is . One can also see directly that the complete graph on vertices has independence polynomial .
We now describe the type of algorithm we ideally wish to obtain for our graph counting problems. Suppose is a graph parameter, e.g. is the number of independent sets in , or for some fixed . Note that we allow to be a complex number. A fully polynomial-time approximation scheme (or FPTAS for short) for is an algorithm that takes as input a graph and an error tolerance and outputs a (complex) number such that for some with in time polynomial in (the number of vertices of ) and . Note that when is small, we have , so that is roughly within a distance of the true value of . For this reason we call such output a multiplicative -approximation (for ).444Note that this definition of FPTAS is consistent with the usual notion of FPTAS for real parameters. We also discuss algorithms that provide the same approximation as above but that run in time super-polynomial in .
2 Barvinok’s interpolation method
In this section we describe the Taylor polynomial interpolation method of Barvinok, a method that can be applied to a wide variety of counting problems. Consider some graph polynomial, that is, each graph has some associated polynomial . As with the independence polynomial, we should imagine that is not directly accessible, i.e. at least some of its coefficients are difficult to compute from . We will however assume that the degree of the polynomial is always bounded by a constant times ; this is certainly the case for the independence polynomial and is easy to verify for most graph polynomials one might consider. Our goal is to (efficiently) obtain a multiplicative -approximation for for .
The insight of Barvinok was to use Taylor’s theorem, about power series approximations of smooth functions, to obtain the desired approximation. At first sight we seem to gain nothing from Taylor’s theorem because the Taylor series of a polynomial is simply the polynomial itself. However, notice that the truncated Taylor series of a (non-polynomial) function gives an additive -approximation to the function, whereas we are interested in a multiplicative -approximation. Therefore, rather than considering the Taylor series of , we should in fact consider the Taylor series of and then take the exponential of the result to obtain the desired approximation.555In order for to be well-defined we need to fix a branch of the logarithm here; we say more below.
To this end, consider the Taylor series of about zero:
where denotes the th derivative of . Unfortunately, the Taylor series of a function does not usually converge for all . We will return shortly to the question of convergence, but let us assume for now that the Taylor series does converge to for a value of we are interested in. In that case, if we write for the first terms of the Taylor series of above, then for sufficiently large, we will have that , i.e. for some with . Taking the exponential of both sides of the equation, we obtain i.e. a multiplicative -approximation for .
This gives us the desired approximation, but several questions remain. Firstly, there is the question of convergence mentioned above. Secondly, if the Taylor series does converge, then how large does have to be to guarantee that ? Finally, how can we actually compute in order to compute our approximation for ? Note that we do not have direct access to the numbers ; these have to be computed in some way.
For the first question of convergence, Taylor’s theorem says that the Taylor series for converges inside the disk for any provided that is analytic inside . In our case, this holds provided for all .666Formally, to ensure is analytic, we fix , and take the branch of on given by . So the Taylor series will converge inside the largest disk that contains no roots of . Establishing such zero-freeness results for particular graph polynomials will be the subject of Section 4.
The second question concerns the rate of convergence of the Taylor series of . Here we take advantage of the particular form of as the logarithm of a polynomial. If are the (complex) roots777Again, we do not typically have access to the roots of ; we work with the roots only in the analysis of the algorithm. of then we can write , where is assumed to be non-zero. Then taking logarithms of both sides, we have
Using that the Taylor series of for , we obtain the Taylor series of as
for (precisely the condition of zero-freeness mentioned above). Assuming for some , this gives
In order to bound the last expression by , it is sufficient to take for some constant depending on . For such we have that is a multiplicative -approximation for .
The final question of actually computing is more subtle and will only be partially addressed here and in the next section. We will show that if we know the values of the first coefficients of then we can compute the derivatives in time . However, we do not typically have immediate access to the first coefficients of our graph polynomials. For example, in the case of the independence polynomial , the coefficient of is the number of independent sets of size in : computing this naively with a brute force approach of checking every -tuple of vertices takes time (where ) and so computing takes time (noting that the degree of i.e. the size of the largest independent set could be and often is linear in ). In the next section, we show how to compute in time and the idea turns out to generalise for many other graph polynomials of interest. For now, here is how to compute given the first coefficients of .
Suppose . We defined . We know . If we differentiate once and rearrange, we obtain . If we now repeatedly differentiate this expression, we obtain the following expressions:
Evaluating these expressions at zero, and noting that , we obtain
We see that if we know and we have computed , then we can use the th equation above to compute in time . Therefore given , we can compute in time.
The following summarises what we have shown in this section and is the essence of the Taylor polynomial interpolation method.
Theorem 2.1.
Suppose is an (infinite) set of graphs and for each , is a polynomial associated with , where
Suppose there exists and a function with the properties that
-
(i)
whenever for all graphs , and
-
(ii)
we are able to compute in time bounded by , where we assume for convenience that is non-decreasing in both arguments.
Then there is an algorithm, which, given input , , and with , computes a multiplicative -approximation of in time , where and (as defined earlier).
Some remarks are in order. The theorem is formulated for a general class of graphs rather than all graphs because often, we are only able to establish conditions (i) and (ii) effectively for certain types of graphs (typically bounded degree graphs). This is best illustrated by applying the result above to the independence polynomial.
For the independence polynomial, if we consider to be the set of all graphs, then there is no zero-free disk of positive radius888The -vertex complete graph has independence polynomial , so its roots tend to . so we can only take in condition (i). However, if we restrict to graphs of maximum degree , we will see in Section 4 that we can take . Similarly for condition (ii), if we take to be all graphs, then the brute force approach mentioned earlier is essentially the only way to compute coefficients of giving : overall this gives a super-polynomial running time of . Such a quasi-polynomial running time is already quite promising because it is significantly better than the exponential running time of a brute-force algorithm. However, in the next section we will see that for graphs of maximum degree at most , we can compute the coefficients much faster and take , thereby establishing an overall polynomial running time of . Combining the results from the next two sections will therefore give an FPTAS for computing on graphs of maximum degree at most provided .
Finally, we remark that one can in fact relax condition (i) to include regions that are not necessarily disks provided the region is “thick” in a certain sense and contains the point . Concretely one should think of a small neighbourhood of a real interval or a sector region. Relaxing condition (i) to non-disk regions is achieved by making suitable polynomial transformations of ; see Section 2.2.2 of [6] and [10] for details.
3 Polynomial running time for bounded degree graphs
In the last section we saw how we can use Taylor’s theorem to design algorithms to approximate graph polynomials. Let be a graph polynomial. Examining Theorem 2.1, we require two ingredients to establish an approximation algorithm to compute . First we need to establish a zero-free disk for ; this will be discussed in detail in the next section. Second, we need to be able to efficiently compute the first coefficients of , which we discuss in detail here. There is usually a straightforward, direct approach for computing these coefficients, which leads to quasi-polynomial time algorithms, but which is not fast enough for an FPTAS. We already saw this in the last section with the independence polynomial, where we saw that computing the coefficients naively leads to an -time algorithm.999Computing the coefficients naively often gives us quasi-polynomial time approximation algorithms as with the example of the independence polynomial. This is already very good because it is a significant improvement on the exponential time taken to enumerate independent sets in a graph. Achieving the polynomial runtime of an FPTAS is considered to be the gold standard in the area. In this section, we show how to compute the coefficients of the independence polynomial more efficiently for bounded degree graphs. The technique generalises to many other graph polynomials but all the key ideas are best understood through the concrete example of the independence polynomial. We give the statement for general graph polynomials at the end of the section.
It is worth noting that, barring a few exceptions, the setting of bounded degree graphs is often the setting of interest. For example, the problem of computing a multiplicative -approximation for is known to be computationally hard for all complex if we have no restriction on ; see [84, 51, 23].
3.1 Computing the coefficients of the independence polynomial efficiently
Recall that the independence polynomial is given by
where is the number of independent sets of size in . Throughout this section we focus on bounded degree graphs and write for the set of graphs of maximum degree at most . If we apply Theorem 2.1 to (with ), assuming we have some suitable zero-free disk containing , Theorem 2.1 gives us an algorithm to compute a multiplicative -approximation of in time , where is the time needed to compute for -vertex graphs and . We will sketch a proof of the following.
Theorem 3.1.
For , we can compute in time , i.e. for -vertex graphs of maximum degree at most , we can take .
Using the theorem above, Theorem 2.1 gives us an approximation algorithm for the independence polynomial with running time
We see that this running time is of the form required for a fully polynomial time approximation scheme. We now sketch the proof of Theorem 3.1.
Sketch proof of Theorem 3.1
We begin by generalising the algorithmic problem we are interested in. We are interested in computing , the number of independent sets of size in , when . Equivalently, is the number of induced copies of the graph in , where is the graph consisting of vertices and no edges. Generally for graphs and , write for the number of induced copies101010The number of induced copies of a graph in the graph is defined as the number of vertex subsets such that . of in . Then .
The first observation is that, while we do not know how to efficiently compute , it is not too hard to efficiently compute , when is connected.
Observation 3.1.
We can compute in time , where , and .
To see this, we first pick any spanning tree in (i.e. a subgraph of that is a tree and that uses all vertices of ). Such a spanning tree exists because is connected. The idea is to find all (not necessarily induced) copies of in and to check which of the copies of extend to an induced copy of . This accounts for all induced copies of because every induced copy of in contains a (not necessarily induced) copy of in .
There are only relatively few (not necessarily induced) copies of in . Indeed, first we enumerate the vertices of in a breadth-first ordering . We embed into one vertex at a time in order. There are choices of where to embed . Each subsequent vertex of has at most possibilities for its embedding into because when we come to embed , its parent in (say ) has already been embedded as some vertex in , so the embedding of must be a neighbour of in . Therefore altogether there are at most embeddings of in and each such embedding of is checked to see if it gives an induced copy of of .
From Observation 3.1, we see that we can compute , when is connected, but the graph we are interested in, namely , is very much disconnected. It would be useful if we could express in terms of for connected . A trivial case of this is the fact that , where is the graph on two vertices with an edge between them. This says nothing other than that the number of edges and non-edges in an -vertex graph sum to . With a little more work, we can express in terms of induced counts of connected graphs as follows. There are four graphs on three vertices, namely , the triangle denoted , the path on three vertices denoted and the disjoint union of an edge and a vertex denoted . By enumerating all induced subgraphs of on three vertices, we have
The only disconnected graph on the right hand side is , and by simple counting, it is not too hard to show that
Substituting the second formula into the first gives an expression for in terms of induced counts of connected graphs.
These calculations suggest that it is possible to express in terms of induced counts for connected graphs , but that the calculations and formulae will get cumbersome. A new idea is needed to approach the problem in a systematic and manageable way. The next observation is the key insight to overcoming this hurdle and is at the heart of the proof of Theorem 3.1. It was proved by Csikvári and Frenkel [36]; the proof is short and can also be found in [72].
Observation 3.2.
Suppose is an additive graph property, meaning that it satisfies the following two properties.
-
(i)
can be written as sum of products of induced graph counts, i.e. for all
where is a (finite) set of graphs and is a constant for each , and
-
(ii)
for all graphs and .
Then is in fact of a simpler form, namely, for all graphs , we have
where are connected graphs and .
The observation above says that every additive graph parameter is a linear combination of for connected , and so by Observation 3.1, such additive graph parameters can be computed efficiently.111111Actually efficient computation is not immediate because it depends on the number and size of the ; we address this later. Our task now is reduced to the task of expressing in terms of additive graph parameters. In order to do this, we now switch from the combinatorial to the polynomial perspective of .
Recall that the are the coefficients of the independence polynomial , i.e. . Suppose that are the roots of . Noting that the constant term is one, we can write . While we cannot compute the directly, we can relate them to the coefficients by expanding the product above. We see that the are the elementary symmetric polynomials in , namely
Another important class of symmetric polynomials are the power sums. Let us define the th power sum to be
It is well known that the power sums can be related to the elementary symmetric polynomials using the Newton identities. There are several short derivations of these identities. In the context of our problem, the Newton identities give the following expressions relating the and the .
From this it is easy to see that if we know the values of the then we can inductively compute the . Indeed, if we know the values of , and we also know (by induction) the values of then using the identity, we can compute . Thus the problem of efficiently computing the is reduced to that of efficiently computing the . It is possible to efficiently compute the power sums because, as the reader may have guessed, the power sums are additive graph parameters.
Observation 3.3.
The power sums as defined above have the property of being additive graph parameters.
It is easy to verify that satisfies the second property of an additive graph parameter, namely that for any graphs and . Indeed, since (see Section 1.2), if are the roots of of and are the roots of then are the roots of so that
For the first property, we use the Newton identities. Note that, since , we can rearrange the identity and express as a sum of products of and . We know that the are induced graph counts, and if we assume by induction that are also sums of products of induced graph counts, then we see that is also a sum of products of induced graph counts and so satisfies property (i) of an additive graph parameter.
We now have all the ingredients to explain how to compute the efficiently. We can compute the power sums efficiently. This is because the power sums are additive graph parameters (Observation 3.3) and they are therefore linear combinations of induced counts of connected graphs (Observation 3.2). Each induced graph count in this linear combination can be computed efficiently when is of bounded degree since is connected (Observation 3.1) thus allowing us to compute the power sums efficiently. Once we have computed the power sums , we can inductively compute the using the Newton identities.
This gives the main ideas of the argument although there are a few subtleties that we have glossed over. The main one is that it is not quite obvious that we can compute the power sums efficiently, i.e. in time . While the can be expressed as a linear combination of induced counts of connected graphs
we have not said how to find and . Conceivably, could be superexponential in or the could have size superlinear in ; in either case we would not automatically get the desired running time. However, by using the Newton identities more carefully, and using the fact that has bounded degree it is not too difficult to overcome these technical obstacles. All the details can be found in [72].
3.2 Computing the coefficients of other graph polynomials efficiently
In Section 3.1, we described the main idea of how we can efficiently compute the first coefficients of the independence polynomial for graphs of bounded degree. The ideas can be generalised to work for many other graph polynomials of interest.
What are the crucial properties of the independence polynomial that we use in the sketch proof of Theorem 3.1? The whole proof is based around manipulating induced graph counts, so we certainly need the coefficients of to be (functions of) induced graph counts. We also crucially need that is multiplicative, which allows us to conclude that the power sums are additive, therefore allowing us to compute them efficiently.
In [72], we show that if a graph polynomial satisfies certain properties given below, then its coefficients can be computed efficiently for bounded degree graphs i.e. the th coefficient of can be computed in time where is an -vertex graph of maximum degree at most . As with the independence polynomial, this is enough to use the Taylor polynomial interpolation method from Section 2 to give an approximation algorithm for computing (provided is in a suitable zero-free disk) with the required run time of an FPTAS.
Suppose is a graph polynomial given by . Suppose that satisfies the following properties for some fixed constant :
-
(i)
for each , the th coefficient of can be expressed as a “-bounded” linear combination of induced graph counts, that is, for all
where the sum is over graphs with at most vertices and are constants (independent of );
-
(ii)
in property (i), for each we can compute in time ; and
-
(iii)
is multiplicative, i.e. .
Then we can compute in time . Again, using the Taylor polynomial interpolation method, this leads to an FPTAS for approximating for , again provided we establish a suitable zero-free disk containing .
Note that in the case of the independence polynomial, properties (i) and (ii) are trivial and we saw it is easy to verify property (iii). These properties also hold for various other graph polynomials including the matching polynomial, the chromatic polynomial, and the Tutte polynomial.121212The Tutte polynomial is a polynomial in two variables, but the properties above hold if one of the variables is fixed We will not check these here, but refer the interested reader to [72]. It is also worth noting that the technique described in this section can be adapted and applied to polynomials beyond those satisfying properties (i)-(iii) above; see [68, 15, 70].
In Section 2 we explained how one can design algorithms for approximating graph polynomials using Taylor’s theorem. In this section, we showed how to make these algorithms efficient (having the running time of an FPTAS) for many graph polynomials provided we restrict attention to bounded degree graphs. We have seen in Section 2 that essential to all of these algorithms is to establish a suitable zero-free disk or zero-free region in the complex plane for the graph polynomial in question. Our discussion of algorithms ends at this point and in the next section, we turn our attention entirely to the independent problem of establishing these zero-free regions.
4 Techniques for proving absence of zeros
In the previous sections, we have sketched how the problem of approximately evaluating graph polynomials (particularly the independence polynomial) in a region of the complex plane is reduced to the problem of establishing that the polynomial has no zeros in that region. There is a long history of proving such results about the locations of zeros of graph polynomials and partition functions. The techniques used often have their origin in statistical physics but have now been picked up and extended by the theoretical computer science community. In this section we will discuss three different techniques.
4.1 Recursion and ratios
Many graph polynomials satisfy recursions in which the polynomial for a given graph can be expressed in terms of the polynomial for smaller graphs. Such recursions allow us to prove properties about the graph polynomial, such as absence of zeros, by induction. However, rather than working with the polynomials directly, it is often more productive to work instead with related quantities. We illustrate this approach through our running example of the independence polynomial and at the end of the section we direct the reader to further work in which this technique is employed.
Our aim is to sketch a proof of the following result due to Shearer [83], Dobrushin [38] and Scott and Sokal [81]:
Theorem 4.1.
Let be a graph with maximum degree and let satisfy . Then .
Let us briefly discuss this result before delving into the proof. First, recall that by the Taylor polynomial interpolation method (particularly Theorem 2.1 and Theorem 3.1), this result immediately implies an FPTAS for computing for inside the zero-free disk given by . Second, note that if we are only interested in zero-free disks, then one cannot improve Theorem 4.1 in the sense that we cannot increase the constant . Indeed, one can show that there is a sequence of graphs (in fact trees) of maximum degree and negative numbers such that and [81]. However there has been a lot of interest recently in establishing zero-freeness for non-disk regions. Most notably, it was shown recently [74] that whenever and where is an open set containing the interval and . One significance of is that it is an algorithmic threshold for real parameters : using the interpolation method, the result in [74] implies that there is an FPTAS131313In fact, an FPTAS was established earlier in [89] using the correlation decay method. to compute whenever and , while for , it is known that there is no such FPTAS unless [84, 51].
We now discuss the proof of Theorem 4.1. Let be a graph and fix a vertex . We can write down a recursion for by splitting the sum over those independent sets that do not contain and those that do to obtain
(1) |
where (resp. ) denote the graphs obtained from by removing (resp. and its neighbours in ). As mentioned earlier, rather than working directly with a recursion for , it turns out to be more useful to work with a recursion of a related quantity. Define the ratio, , by
(2) |
Observe that provided , we have if and only if (using (1)). So to prove absence of zeros it suffices to inductively show that the ratios avoid .
Next we establish a recursion for these ratios. Let be a graph with fixed vertex and let . Let be the neighbours of in (in any order). Set and define for , (so ). Suppose that for all . Then we use ‘telescoping’ to write
Applying (1) to each of the denominators and after some rearranging we end up with the following identity:
(3) |
The identity above captures all the relevant combinatorics of independent sets that we need and the rest of the proof essentially boils down to proving a property about the above recursion.
Proof of Theorem 4.1.
We may assume that is connected (if has connected components then and so it is sufficient to prove the theorem for each ).
Fix . We will show by induction that the following holds for all :
-
(i)
,
-
(ii)
if has a neighbour in , then .
Indeed if then this is trivially true, so suppose that . Then since is connected, there is that has a neighbour . Let us write and let be the neighbours of in . Let and for . Then, by induction and (since has a neighbour in , namely ). So we may use (3) to conclude that
(4) |
where we used that (since has a neighbour in ) and that . This shows (ii). Then, we also see that and so , showing (i). This completes the induction.
To conclude the proof of the theorem we apply the same trick once more to . From (4) we then obtain the bound since may have neighbours rather than . Again we have and so , as desired. ∎
The proof essentially consists of two steps. First express a suitably chosen ratio in terms of ratios of smaller graphs. Secondly, use this expression to inductively show that these ratios are ‘trapped’ in some suitable region of the complex plane (the open disk of radius in the proof above). Of course the real ingenuity comes in finding the right ‘trapping region’.
This approach can be traced back to work of Dobrushin [38] and possibly even earlier. Recent years have seen many variations and refinements of this approach resulting in significant extensions of Theorem 4.1 [74, 19, 21] and zero-free regions for permanents [7, 8, 11], for the graph homomorphism partition functions [17, 16], for the partition function of the Ising and Potts models [67, 69, 75, 13, 22, 35], for Holant problems [76] and for various other graph polynomials [5, 9, 15, 14, 12, 64].
4.2 Stability of multivariate polynomials
In this subsection we briefly mention the technique of polynomial stability without going into too much detail. The basic idea here is that there are certain operations on polynomials that preserve certain useful properties. If one can use these operations to construct some desired graph polynomial or partition function from “elementary” polynomials, we can establish useful properties of the graph polynomial / partition function. The method is often most effective for multivariate polynomials, and indeed many graph polynomials have multivariate counterparts.
For our running example, the independence polynomial, the multivariate counterpart is defined as follows. Let be a graph and associate to each vertex a variable . The multivariate independence polynomial is then defined as
where we use the shorthand notation . Note that if we set all the variables equal to then we recover the original (univariate) independence polynomial. The multivariate independence polynomial is a multi-affine polynomial meaning that it is affine in each variable (i.e. if we fix all but one variable it becomes a polynomial of degree in ). It is easy to see that any multi-affine polynomial (in the same variables ) can be written as for some constants .
For two multi-affine polynomials and , their Schur product, is defined as the multi-affine polynomial in which the coefficient of is i.e. . We can build up the polynomial using Schur product of simpler polynomials as follows. Suppose and are graphs on the same vertex set and is the union141414This is very different from the disjoint union of graphs that we made heavy use of in Section 3. of and (i.e. the edges of are precisely the edges of together with the edges of ). Then
This is easy to see since we know is an independent set of if and only if is an independent set of both and and the Schur product has the corresponding property that the coefficient of is in if and only if it is in both and in . For example the -cycle with vertex set and edges , , and is the union of two matchings with edges and with edges . Using the multiplicative property151515We showed this property for the univariate independence polynomial and it follows in the same way for the multivariate version of the independence polynomial, we know
and using the Schur product property, one can check
The Schur product corresponds beautifully well to taking unions of graphs for the independence polynomial, but does it preserve any useful properties? Writing for the open unit disk in , we say a multi-affine polynomial is -stable if whenever for all . It is well known (see [6]) that if and are -stable then so is . This seems promising for us, but unfortunately, the independence polynomial of a matching or indeed a single edge (out of which we build all other independence polynomials) is not -stable, e.g. . The independence polynomial of a matching is however non-zero if all the arguments are in an open disk of radius . Now, using the fact that every graph in is the union of at most matchings (Vizing’s theorem) and applying a simple scaling argument, one can still make use of the -stability of Schur products to show that is non-zero if all arguments are in a disk of radius smaller than , where .
This is a much weaker bound than Theorem 4.1 from the the previous subsection, but is given simply to illustrate the idea of stability. The idea of using multi-affine polynomials and operations preserving zero-freeness was pioneered by Asano [2] about fifty years ago to give a short and elegant proof of the famous Lee-Yang theorem (see also [6] for a proof using Schur products.) The theorem states that the partition function of the Ising model (in terms of vertex activities), which essentially is the generating function of the edge cuts in the graph, has all its zeros on the unit circle under suitable conditions; we choose not to introduce the relevant background here. By now there are several variations of the technique, some of which use the Grace-Szëgo-Walsh theorem, and they have been applied to partition functions of several models and graph polynomials [80, 80, 88, 54, 54, 20].
4.3 The polymer method
We introduced the multivariate independence polynomial in the last subsection to illustrate the idea of polynomial stability. It turns out that many other graph polynomials and partition functions can be expressed as evaluations of multivariate independence polynomials of a particular type. For this reason, there has been a lot of interest in understanding and proving conditions that guarantee zero-freeness of such multivariate independence polynomials. This idea of first rewriting a partition function/graph polynomial as an evaluation of a multivariate independence polynomial and then checking conditions from the literature known to guarantee that the latter evaluation is nonzero is a powerful technique originating in statistical physics. There, the multivariate independence polynomial is sometimes called the partition function of a polymer model, and the technique we describe is sometimes called the polymer method.
We will give an example of this idea applied to the chromatic polynomial, a graph polynomial used for counting proper colourings of a graph, which we will shortly introduce. We sketch a proof of a result of Férnandez and Procacci [44] and Jackson, Procacci and Sokal [59] about zero-freeness of the chromatic polynomial. At the end of the subsection, we list some recent results based on this technique and indicate how a variation of this technique can in fact be used directly to design efficient algorithms to approximate graph polynomials, without having to use the interpolation method.
4.3.1 The chromatic polynomial
For a graph and integer , a proper colouring of is an assignment of colours (usually labelled ) to the vertices such that adjacent vertices receive different colours. This means in particular that all vertices assigned some fixed colour form an independent set. The function counts the number of proper -colourings of , that is, for each , is defined to be the number of proper -colourings of . For example the number of proper -colourings of a triangle is since after ordering the vertices arbitrarily, the first vertex can receive any of the colours, the second vertex may receive any of the colours except the colour of the first vertex, and the third vertex may receive any colour except those of the first two vertices (which are different).161616Note that the formula is correct even when , i.e. when there are no proper -colourings of the triangle. More generally, the number of proper colourings of , the complete graph on vertices is , i.e. for every . For any tree on vertices, for all since if we colour the vertices in a breadth-first ordering, then the first vertex may receive any of the colours, while each subsequent vertex can receive any colour except that of its parent. Of course, it is not usually so easy to determine because it is NP-complete to decide if there is even one proper -colouring of , i.e. whether is positive or not. Nonetheless, as the examples above suggest, is always a polynomial in as we shall see shortly, and is called the chromatic polynomial of .
The chromatic polynomial was introduced in 1912 by Birkhoff in an attempt to prove the four colour theorem. It has a long history and has been studied from many perspectives together with its far-reaching generalisation, the Tutte polynomial (see [40, 43] for a comprehensive account).
We now establish a very useful formula for the chromatic polynomial called the random cluster model, due to Fortuin and Kasteleyn (see [45]); it is sometimes used as the definition of the chromatic polynomial. Formally, a proper -colouring of a graph is a function such that whenever . Then we can write
where is the indicator function that (so that the product is if and only if all edges are properly coloured). Replacing with and expanding, we obtain
The inner sum in the last expression is equal to , where is the number of components of the graph . The reason is that the product is for an assignment if and only if every edge of is monochromatic in , which means that must assign a single colour to each component of . There are precisely ways of doing this. Thus
(5) |
and so we see that is indeed a polynomial (although there are easier ways of showing this) and has degree .
Our goal will be to prove the following zero-freeness result for the chromatic polynomial.
Theorem 4.2 ([44, 59]).
Let be any graph. Then all the zeros of are contained in the disk of radius centered at in the complex plane.
It is likely that the constant can be improved, but it is not clear what the optimal value is likely to be; see [79, Footnote 4] for further discussion. By the Taylor polynomial interpolation method, Theorem 4.2 almost immediately implies an FPTAS for approximating whenever and . The trick is to apply the interpolation method to the polynomial , which has no zeros in the disk of radius . From the combinatorial perspective, this implies an FPTAS to count the number of proper -colourings of any graph whenever . It is believed that there is an FPTAS for counting proper -colourings whenever and this is an active area of research. By proving a zero-freeness result for a different polynomial (the partition function of the Potts model) Liu, Sinclair, and Srivastava [66] have shown that there is an FPTAS when , and this is currently the state of the art.171717There are improved bounds if we allow randomised algorithms based on the Markov chain Monte Carlo method [87, 33].
We now sketch the proof of Theorem 4.2. As mentioned, we will need to work again with the (multivariate) independence polynomial and to make use of a suitable zero-freeness result for it.
4.3.2 The chromatic polynomial as a multivariate independence polynomial
Our first lemma shows how to express the chromatic polynomial of a graph as an evaluation of the multivariate independence polynomial of an associated graph. For this we need some notation. Let be a graph. Define a new graph whose vertices are subsets of of size at least two. (In the context of the polymer method, these sets are called polymers.) Two of those sets are connected by an edge if and only if . Notice that the graph is independent of the edges of .
We now associate weights to vertices of as follows; these will depend on the edges of and on (the variable in the chromatic polynomial). For each vertex of , i.e. with , define
(6) |
Now the multivariate independence polynomial of with the (complex) vertex weights is given by
(7) |
Lemma 4.3.
With notation as above we have
Proof.
We start by expanding the left-hand side using (5)
Next, we break up the sum over in terms of the component structure of as follows. We sum over all that have exactly connected components with vertex sets and then we sum over all possible choices of and all possible choices of . In fact we can ignore the components that consist of a single vertex (and no edge) since they contribute a factor of to the product above. In this way (after exchanging a sum and product) we obtain
By construction any collection of sets contributing to this sum forms an independent set of size in the graph . The weights are constructed precisely so that the last expression is , as desired. ∎
4.3.3 Zero-freeness conditions and their verification
Here we present a result due to Biascot, Férnandez and Procacci [25] that provides useful conditions that guarantee that our multivariate independence polynomial (for graphs of the type ) does not evaluate to zero. We will then verify these conditions for our situation. Let and be as before.
Theorem 4.4 ([25]).
For any complex numbers and any , if, for each , it holds that
(8) |
then .
The theorem can be proved along the same lines as the proof of Theorem 4.1. See [25, Proposition 3.1] for a proof along these lines and a discussion of how this condition compares with other similar conditions including the Kotécky-Preis conditions [63] and Dobrushin’s conditions [38].
To verify the conditions in Theorem 4.4, we need a bound on the weights given in (6). Our first step in this direction is to get rid of the ‘alternating signs’ in (6). The lemma below can for example be proved using well-known properties of the Tutte polynomial; see e.g. [43] for these properties and see [73, 85] for a direct proof.
Lemma 4.5.
Let be a connected graph and denote by the number of spanning trees in . Then
For a graph , a vertex , and a variable we define the tree generating function by
We can now bound in terms of the tree generating function as follows:
(9) |
The next lemma shows how to bound the tree generating function. The proof we give is slightly shorter than the proof given in [59], and is new as far as we know.
Lemma 4.6 ([58]).
Let be a graph of maximum degree at most and let . Fix any . Then
Proof.
The proof is by induction on the number of vertices of . If , the statement is clearly true. Next assume that . Given a tree such that let be the set of neighbours of in . After removing from , the tree decomposes into the disjoint union of trees, each containing a unique vertex from . Therefore, writing , we have
which by induction is bounded by
This finishes the proof. ∎
We now combine all our ingredients to finish the proof of Theorem 4.2. Fix . For to be determined, define . Then if
we have for any graph of maximum degree at most . Indeed, for such a value of we have and therefore by (9) and the previous lemma
and so by Theorem 4.4 and Lemma 4.3 we have . In other words if we have . One can determine
where the minimum is attained at . This finishes the proof sketch of Theorem 4.2.
4.3.4 Recipe and relation to cluster expansion
The steps we took to prove Theroem 4.2 suggest a ‘recipe’ for proving absence of zeros using the polymer approach:
-
Express the graph polynomial as an evaluation of the multivariate independence polynomial of an associated graph.
-
Use the conditions from Theorem 4.4 (or other conditions) that guarantee the evaluation is nonzero.
-
Verify these conditions using combinatorial arguments.
Most combinatorial applications of this ‘recipe’ include various extensions and variations of the chromatic polynomial. See [85, 44, 39, 60, 59, 41, 36, 35] for some examples in this direction.
From a statistical physics perspective both Theorem 4.2 and Theorem 4.1 are statements about so-called high temperature models (in the case of Theorem 4.1, high temperature means small values of for the independence polynomial). Surprisingly, for some restricted families of graphs, the ‘recipe’ above can also sometimes be used at low temperature (see e.g. [28, 46] for this in statistical physics). For example, it has been used in combination with the interpolation method to design efficient approximation algorithms to approximate the independence polynomial at large on certain subgraphs of the integer lattice [57], but also on bipartite expander graphs [61]. In fact, [61] slightly modified the approach from [57]. The idea is to use conditions like those in Theorem 4.4 to show absolute convergence of the cluster expansion, a formal power series of the logarithm of , and to bound the remainder after truncating it at a suitable depth. This avoids the use of the interpolation method and may occasionally lead to faster algorithms, but other than that is quite similar in spirit. See [27, 30, 65, 55, 31, 71, 50, 47, 56, 32] for some results inspired by and based on this.
5 Concluding remarks
We have shown how absence of zeros allows one to design efficient algorithms to approximately compute evaluations of graph polynomials using Barvinok’s interpolation method. A key part of this method is establishing absence of zeros for the graph polynomials in question. A few natural questions that remain are: how do other approaches for approximate counting relate to absence of zeros, and what does presence of zeros mean for the possibility to design efficient approximation algorithms. In this section we will briefly address these two questions pointing the interested reader to the relevant literature.
5.1 Absence of zeros and other algorithm approaches
As mentioned in the introduction there are two other (and older) approaches for designing approximation algorithms to compute evaluations of graph polynomials: a Markov chain based sampling approach and the method of correlation decay. We will not discuss the workings of these approaches here, but we mention how these approaches relate to the interpolation method, or rather, how they relate to absence of zeros.
Recently it was shown that a standard technique for proving decay of correlations can be transformed to prove absence of zeros near the real axis [82, 66]. In the other direction, some results appeared indicating that absence of zeros can be used to establish some form of decay of correlations [52, 77]. Perhaps more surprisingly, in [1, 34] it was shown that if a multivariate version of the polynomial has no zeros near the positive real axis, then the associated Glauber dynamics (a local Markov chain often used in approximate counting and sampling) mixes rapidly. These results indicate that, while absence of complex zeros is vital for the interpolation method, it also plays a key role (albeit in disguise) in these two other approaches for approximate counting.
5.2 Presence of zeros
In this section we discuss how presence of zeros is related to hardness of approximation. We will again specialise the discussion to the independence polynomial and give some references to results on other polynomials at the end of this section. In what follows we shall see that presence of zeros implies hardness of approximating the independence polynomial.
Let us first state the precise algorithmic problem in question. Let (the set of complex numbers whose real and imaginary parts are both rational) and let . Consider the following computational problem.
-
Name
#Hard-CoreNorm(
-
Input
A graph of maximum degree at most .
-
Output
If the algorithm must output a rational number such that . If the algorithm may output any rational number.
It is easy to show that replacing the constant by any other constant does not change the complexity of the problem.181818 An algorithm that solves the problem above in polynomial time can also be used to solve the problem with replaced by by running the original algorithm on the disjoint union of two copies of the graph.
The typical notion of hardness one considers for computational counting problems is #P-completeness/hardness. We do not introduce the notion formally, but wish to impress only that one does not expect a polynomial-time algorithm for a #P-complete counting problem (just as one does not expect a polynomial-time algorithm for an NP-complete problem). For example, the problem of exactly counting the number of independent sets of a graph of maximum degree is known to be #P-complete [78, 86, 42] for any .
Returning to the problem #Hard-CoreNorm(), we define the sets
Building on [23], it was shown in [37] that the closure of the set is contained in the closure of the set , meaning that arbitrarily close to any zero there exists a parameter such that #Hard-CoreNorm( is #P-hard. (A similar result holds if instead of approximating the norm one wishes to approximate the argument of .) Recall that Theorem 4.1 gives a zero-free region for the independence polynomial that contains the point . If one can show that the maximal zero-free region of the independence polynomial for bounded degree graphs is connected, then this would result in an essentially complete understanding of the hardness of approximating the independence polynomial at complex parameters on bounded degree graphs [37]. We remark that quite recently it was shown that in the limit this is true [18], but unfortunately this does not give us information for any finite yet.
For some models/polynomials such as the matching polynomial [24] and the ferromagnetic Ising model (as a function of the external field) [29] we know that absence/presence of zeros on bounded degree graphs exactly corresponds to easiness/ hardness of approximation. For others such as the Ising model (as a function of edge interaction) [48] a partial correspondence has been established. This suggests a program of study to understand this connection for more models and also to understand the phenomenon in general.
The interpolation method is clearly a powerful technique for establishing fast approximation algorithms to evaluate graph polynomials at complex parameters, but more than that, it often seems to capture the dichotomy between parameters where approximate computation is easy and hard.
References
- [1] Yeganeh Alimohammadi, Nima Anari, Kirankumar Shiragur, and Thuy-Duong Vuong. Fractionally log-concave and sector-stable polynomials: counting planar matchings and more. Proceedings of the 53rd Annual ACM SIGACT Symposium on Theory of Computing, pages 433–446.
- [2] Taro Asano. Lee-Yang theorem and the Griffiths inequality for the anisotropic Heisenberg ferromagnet. Phys. Rev. Lett., 24:1409–1411, 1970.
- [3] Zonglei Bai, Yongzhi Cao, and Hanpin Wang. Zero-freeness and approximation of real Boolean Holant problems. Theoretical Computer Science, 917:12–30, 2022.
- [4] Antar Bandyopadhyay and David Gamarnik. Counting without sampling: asymptotics of the log-partition function for certain statistical physics models. Random Structures & Algorithms, 33(4):452–479, 2008.
- [5] Alexander Barvinok. Computing the partition function for cliques in a graph. Theory Comput., 11:339–355, 2015.
- [6] Alexander Barvinok. Combinatorics and Complexity of Partition Functions, volume 30 of Algorithms and combinatorics. Springer, 2016.
- [7] Alexander Barvinok. Computing the permanent of (some) complex matrices. Found. Comput. Math., 16(2):329–342, 2016.
- [8] Alexander Barvinok. Approximating permanents and hafnians. Discrete Anal., Paper No. 2, 34, 2017.
- [9] Alexander Barvinok. Computing the partition function of a polynomial on the Boolean cube. In A journey through discrete mathematics, pages 135–164, 2017.
- [10] Alexander Barvinok. Approximating real-rooted and stable polynomials, with combinatorial applications. Online J. Anal. Comb., (14):Paper No. 8, 13, 2019.
- [11] Alexander Barvinok. Computing permanents of complex diagonally dominant matrices and tensors. Israel J. Math., 232(2):931–945, 2019.
- [12] Alexander Barvinok. Stability and complexity of mixed discriminants. Math. Comp., 89(322):717–735, 2020.
- [13] Alexander Barvinok and Nicholas Barvinok. More on zeros and approximation of the Ising partition function. Forum Math. Sigma, 9: Paper No. e46, 18, 2021.
- [14] Alexander Barvinok and Anthony Della Pella. Testing for dense subsets in a graph via the partition function. SIAM J. Discrete Math., 34(1):308–327, 2020.
- [15] Alexander Barvinok and Guus Regts. Weighted counting of solutions to sparse systems of equations. Combin. Probab. Comput., 28(5):696–719, 2019.
- [16] Alexander Barvinok and Pablo Soberón. Computing the partition function for graph homomorphisms with multiplicities. J. Combin. Theory Ser. A, 137:1–26, 2016.
- [17] Alexander Barvinok and Pablo Soberón. Computing the partition function for graph homomorphisms. Combinatorica, 37(4):633–650, 2017.
- [18] Ferenc Bencs, Pjotr Buys, and Han Peters. The limit of the zero locus of the independence polynomial for bounded degree graphs. arXiv preprint arXiv:2111.06451, 2021.
- [19] Ferenc Bencs and Péter Csikvári. Note on the zero-free region of the hard-core model. arXiv preprint arXiv:1807.08963, 2018.
- [20] Ferenc Bencs, Péter Csikvári, and Guus Regts. Some applications of Wagner’s weighted subgraph counting polynomial. Electron. J. Combin., 28(4):Paper No. 4.14, 21, 2021.
- [21] Ferenc Bencs, Péter Csikvári, Piyush Srivastava, and Jan Vondrák. On complex roots of the independence polynomial. arXiv preprint arXiv:2204.04868, 2022.
- [22] Ferenc Bencs, Ewan Davies, Viresh Patel, and Guus Regts. On zero-free regions for the anti-ferromagnetic Potts model on bounded-degree graphs. Ann. Inst. Henri Poincaré D, 8(3):459–489, 2021.
- [23] Ivona Bezáková, Andreas Galanis, Leslie Ann Goldberg, and Daniel Štefankovič. Inapproximability of the independent set polynomial in the complex plane. SIAM J. Comput., 49(5):STOC18–395–STOC18–448, 2020.
- [24] Ivona Bezáková, Andreas Galanis, Leslie Ann Goldberg, and Daniel Štefankovič. The complexity of approximating the matching polynomial in the complex plane. ACM Trans. Comput. Theory, 13(2):Art. 13, 37, 2021.
- [25] Rodrigo Bissacot, Roberto Fernández, and Aldo Procacci. On the convergence of cluster expansions for polymer gases. J. Stat. Phys., 139(4):598–617, 2010.
- [26] Magnus Bordewich, Michael Freedman, Lázalo Lovász, and Dominic Welsh. Approximate counting and quantum computation. Combin. Probab. Comput., 14(5-6):737–754, 2005.
- [27] Christian Borgs, Jennifer Chayes, Tyler Helmuth, Will Perkins, and Prasad Tetali. Efficient sampling and counting algorithms for the Potts model on at all temperatures. Proceedings of the 52nd Annual ACM SIGACT Symposium on Theory of Computing, pages 738–751, 2020.
- [28] Christian Borgs and John Imbrie. A unified approach to phase diagrams in field theory and statistical mechanics. Comm. Math. Phys., 123(2):305–328, 1989.
- [29] Pjotr Buys, Andreas Galanis, Viresh Patel, and Guus Regts. Lee-Yang zeros and the complexity of the ferromagnetic Ising model on bounded-degree graphs. Forum Math. Sigma, 10:Paper No. e7, 43, 2022.
- [30] Sarah Cannon and Will Perkins. Counting independent sets in unbalanced bipartite graphs. In Proceedings of the 2020 ACM-SIAM Symposium on Discrete Algorithms, pages 1456–1466, 2020.
- [31] Charles Carlson, Ewan Davies, and Alexandra Kolla. Efficient algorithms for the Potts model on small-set expanders. arXiv preprint arXiv:2003.01154, 2020.
- [32] Katrin Casel, Philipp Fischbeck, Tobias Friedrich, Andreas Göbel, and J. A. Gregor Lagodzinski. Zeros and approximations of Holant polynomials on the complex plane. Comput. Complexity, 31(2):Paper No. 11, 2022.
- [33] Sitan Chen, Michelle Delcourt, Ankur Moitra, Guillem Perarnau, and Luke Postle. Improved bounds for randomly sampling colorings via linear programming. Proceedings of the Thirtieth Annual ACM-SIAM Symposium on Discrete Algorithms, pages 2216–2234, 2019.
- [34] Zongchen Chen, Kuikui Liu, and Eric Vigoda. Spectral independence via stability and applications to Holant-type problems. IEEE 62nd Annual Symposium on Foundations of Computer Science, pages 149–160, 2022.
- [35] Matthew Coulson, Ewan Davies, Alexandra Kolla, Viresh Patel, and Guus Regts. Statistical physics approaches to unique games. 35th Computational Complexity Conference, volume 169 of LIPIcs. Leibniz Int. Proc. Inform., Art. No. 13, 27. 2020.
- [36] Péter Csikvári and Péter Frenkel. Benjamini-Schramm continuity of root moments of graph polynomials. European J. Combin., 52(part B):302–320, 2016.
- [37] David de Boer, Pjotr Buys, Lorenzo Guerini, Han Peters, and Guus Regts. Zeros, chaotic ratios and the computational complexity of approximating the independence polynomial. arXiv preprint arXiv:2104.11615, 2021.
- [38] R. L. Dobrushin. Estimates of semi-invariants for the Ising model at low temperatures. In Topics in statistical and theoretical physics, volume 177 of Amer. Math. Soc. Transl. Ser. 2, pages 59–81, 1996.
- [39] F. M. Dong and K. M. Koh. Bounds for the real zeros of chromatic polynomials. Combin. Probab. Comput., 17(6):749–759, 2008.
- [40] F. M. Dong, K. M. Koh, and K. L. Teo. Chromatic polynomials and chromaticity of graphs. World Scientific Publishing Co. Pte. Ltd., Hackensack, NJ, 2005.
- [41] Fengming Dong and Xian’an Jin. Zeros of Jones polynomials of graphs. Electron. J. Combin., 22(3):Paper 3.23, 18, 2015.
- [42] Martin Dyer and Catherine Greenhill. On Markov chains for independent sets. J. Algorithms, 35(1):17–49, 2000.
- [43] Joanna A. Ellis-Monaghan and Iain Moffatt. Handbook of the Tutte Polynomial and Related Topics. CRC Press, 2022.
- [44] Roberto Fernández and Aldo Procacci. Regions without complex zeros for chromatic polynomials on graphs with bounded degree. Combin. Probab. Comput., 17(2):225–238, 2008.
- [45] C. M. Fortuin and P. W. Kasteleyn. On the random-cluster model. I. Introduction and relation to other models. Physica, 57:536–564, 1972.
- [46] S. Friedli and Y. Velenik. Statistical mechanics of lattice systems: a concrete mathematical introduction. Cambridge University Press, Cambridge, 2018.
- [47] Tobias Friedrich, Andreas Göbel, Martin S Krejca, and Marcus Pappik. Polymer dynamics via cliques: New conditions for approximations. arXiv preprint arXiv:2007.08293, 2020.
- [48] Andreas Galanis, Leslie Ann Goldberg, and Andrés Herrera-Poyatos. The complexity of approximating the complex-valued Ising model on bounded degree graphs. arXiv preprint arXiv:2105.00287, 2021.
- [49] Andreas Galanis, Leslie Ann Goldberg, and Andrés Herrera-Poyatos. The complexity of approximating the complex-valued Potts model. Comput. Complexity, 31(1):Paper No. 2, 94, 2022.
- [50] Andreas Galanis, Leslie Ann Goldberg, and James Stewart. Fast algorithms for general spin systems on bipartite expanders. ACM Trans. Comput. Theory, 13(4):Art. 25, 18, 2021.
- [51] Andreas Galanis, Daniel Štefankovič, and Eric Vigoda. Inapproximability of the partition function for the antiferromagnetic Ising and hard-core models. Combin. Probab. Comput., 25(4):500–559, 2016.
- [52] David Gamarnik. Correlation decay and the absence of zeros property of partition functions. Random Structures & Algorithms, 2022.
- [53] David Gaunt and Michael Fisher. Hard-sphere lattice gases. i. plane-square lattice. J. Chem. Phys., 43(8):2840–2863, 1965.
- [54] Heng Guo, Chao Liao, Pinyan Lu, and Chihao Zhang. Zeros of Holant problems: locations and algorithms. ACM Trans. Algorithms, 17(1):Art. 4, 25, 2021.
- [55] Tyler Helmuth, Matthew Jenssen, and Will Perkins. Finite-size scaling, phase coexistence, and algorithms for the random cluster model on random graphs. arXiv preprint arXiv:2006.11580, 2020.
- [56] Tyler Helmuth and Ryan L Mann. Efficient algorithms for approximating quantum partition functions at low temperature. arXiv preprint arXiv:2201.06533, 2022.
- [57] Tyler Helmuth, Will Perkins, and Guus Regts. Algorithmic Pirogov-Sinai theory. Probab. Theory Related Fields, 176(3-4):851–895, 2020.
- [58] Jeroen Huijben and Guus Regts. Private communication. 2021.
- [59] Bill Jackson, Aldo Procacci, and Alan D. Sokal. Complex zero-free regions at large for multivariate Tutte polynomials (alias Potts-model partition functions) with general complex edge weights. J. Combin. Theory Ser. B, 103(1):21–45, 2013.
- [60] Bill Jackson and Alan D. Sokal. Zero-free regions for multivariate Tutte polynomials (alias Potts-model partition functions) of graphs and matroids. J. Combin. Theory Ser. B, 99(6):869–903, 2009.
- [61] Matthew Jenssen, Peter Keevash, and Will Perkins. Algorithms for #BIS-hard problems on expander graphs. SIAM J. Comput., 49(4):681–710, 2020.
- [62] Mark Jerrum. Counting, sampling and integrating: algorithms and complexity. Lectures in Mathematics ETH Zürich. Birkhäuser Verlag, Basel, 2003.
- [63] R. Kotecký and D. Preiss. Cluster expansion for abstract polymer models. Comm. Math. Phys., 103(3):491–498, 1986.
- [64] Liang Li and Guangzeng Xie. Complex contraction on trees without proof of correlation decay. arXiv preprint arXiv:2112.15347, 2021.
- [65] Chao Liao, Jiabao Lin, Pinyan Lu, and Zhenyu Mao. An FPTAS for the hardcore model on random regular bipartite graphs. Theoretical Computer Science, 929:174–190, 2022.
- [66] Jingcheng Liu, Alistair Sinclair, and Piyush Srivastava. Correlation decay and partition function zeros: Algorithms and phase transitions. SIAM Journal on Computing, 0(0):FOCS19–200–FOCS19–252, 0.
- [67] Jingcheng Liu, Alistair Sinclair, and Piyush Srivastava. Fisher zeros and correlation decay in the Ising model. J. Math. Phys., 60(10):103304, 12, 2019.
- [68] Jingcheng Liu, Alistair Sinclair, and Piyush Srivastava. The Ising partition function: zeros and deterministic approximation. J. Stat. Phys., 174(2):287–315, 2019.
- [69] Jingcheng Liu, Alistair Sinclair, and Piyush Srivastava. A deterministic algorithm for counting colorings with colors. IEEE 60th Annual Symposium on Foundations of Computer Science, pages 1380–1404, 2019.
- [70] Ryan L. Mann and Michael J. Bremner. Approximation Algorithms for Complex-Valued Ising Models on Bounded Degree Graphs. Quantum, 3:162, July 2019.
- [71] Ryan L. Mann and Tyler Helmuth. Efficient algorithms for approximating quantum partition functions. J. Math. Phys., 62(2):Paper No. 022201, 7, 2021.
- [72] Viresh Patel and Guus Regts. Deterministic polynomial-time approximation algorithms for partition functions and graph polynomials. SIAM J. Comput., 46(6):1893–1919, 2017.
- [73] Oliver Penrose. Convergence of fugacity expansions for classical systems. Statistical mechanics: foundations and applications, page 101, 1967.
- [74] Han Peters and Guus Regts. On a conjecture of Sokal concerning roots of the independence polynomial. Michigan Math. J., 68(1):33–55, 2019.
- [75] Han Peters and Guus Regts. Location of zeros for the partition function of the Ising model on bounded degree graphs. J. Lond. Math. Soc. (2), 101(2):765–785, 2020.
- [76] Guus Regts. Zero-free regions of partition functions with applications to algorithms and graph limits. Combinatorica, 38(4):987–1015, 2018.
- [77] Guus Regts. Absence of zeros implies strong spatial mixing. arXiv preprint arXiv:2111.04809, 2021.
- [78] Dan Roth. On the hardness of approximate reasoning. Artificial Intelligence, 82(1-2):273–302, 1996.
- [79] Gordon F. Royle and Alan D. Sokal. Linear bound in terms of maxmaxflow for the chromatic roots of series-parallel graphs. SIAM J. Discrete Math., 29(4):2117–2159, 2015.
- [80] David Ruelle. Zeros of graph-counting polynomials. Comm. Math. Phys., 200(1):43–56, 1999.
- [81] Alexander D. Scott and Alan D. Sokal. The repulsive lattice gas, the independent-set polynomial, and the Lovász local lemma. J. Stat. Phys., 118(5-6):1151–1261, 2005.
- [82] Shuai Shao and Yuxin Sun. Contraction: a unified perspective of correlation decay and zero-freeness of 2-spin systems. J. Stat. Phys., 185(2):Paper No. 12, 25, 2021.
- [83] J. B. Shearer. On a problem of Spencer. Combinatorica, 5(3):241–245, 1985.
- [84] Allan Sly and Nike Sun. Counting in two-spin models on -regular graphs. Ann. Probab., 42(6):2383–2416, 2014.
- [85] Alan D. Sokal. Bounds on the complex zeros of (di)chromatic polynomials and Potts-model partition functions. Combin. Probab. Comput., 10(1):41–77, 2001.
- [86] Salil P. Vadhan. The complexity of counting in sparse, regular, and planar graphs. SIAM J. Comput., 31(2):398–427, 2001.
- [87] Eric Vigoda. Improved bounds for sampling colorings. J. Math. Phys., 41(3):1555–1569, 2000.
- [88] David G. Wagner. Weighted enumeration of spanning subgraphs with degree constraints. J. Combin. Theory Ser. B, 99(2):347–357, 2009.
- [89] Dror Weitz. Counting independent sets up to the tree threshold. Proceedings of the 38th Annual ACM Symposium on Theory of Computing, pages 140–149, 2006.
- [90] D. J. A. Welsh. Complexity: knots, colourings and counting, volume 186 of London Mathematical Society Lecture Note Series. Cambridge University Press, Cambridge, 1993.