Setting

Configuration : A configuration of graph is a map such as:

Partition Function: For graph , define its partition function as

where is the number of edges between two vertices pinned to , is the number of vertices pinned to , and we sum over all possible configurations.

Initially, we wonder when there exsits a polynomial time algorithm to calculate the Partition Function of a given graph, but it’s proved that this is impossible for most cases. So we wonder when there exsits a polynonial time algorithm to calculate the -approximation of the Partition Function, and such algorithm are called FPTAS.

We are also interested in the following specific cases of the 2-Spin System:

Hardcore Model: (The partition function of which is exactly the independence polynomial)

Ising Model:

Weitz algorithm

Sub-configuration:A sub-configuration defined on is a map.

We can expand the defination of partition function to situation where some points are pinned by a sub-configuation:

Specially we use to represent the partition function where the vertex is pinned to . And we define marginal possibility of as follow(marginal distribution at vertex conditioning on ):

The possibility explanation of this ratio is the conditional probability of Gibbs distribution over all configurations in (Not important in this article):

It’s obvious that lies in when are real(and that’s directly by the possibility explanation). One wonder how is the calculation of helpful for , and the answer is: let and we can easily calculate the partition function if all vertices are pinned to . Then we multiply the marginal possibility times (pinning one more point each time) to get the partition function we want.

Now the problem is reduced to calculation of in polynomial time. The key here is the so-called Correlation Decay Method. The main property of decay of correlation is called Strong Spatial Mixing(SSM). The SSM at rate is defined as:

SSM means that marginal probabilities are well approximated by the local information. But even if for a graph that exhibits SSM it’s hard to calculate its local information, so we first study the special case of trees. In this case we can find the Tree Recurrence of .

For the hardcore model case we can establish Tree Recurrence for the probability but for the general case it’s hard to do so. So we first define Occupancy ratio:

Here comes the main trick of weitz algorithm: induction from general graphs to tree cases. We use the construction called Self-Avoiding Walk(SAW) Tree.

The main result is that the marginal possibility of a graph is equal to that of its SAW Tree’s.

Barvinok algorithm

The main trick is the truncation of Taylor series. First we consider the approximation of independence polynomial (hardcore model) .