Percolation theory started in 1941 with the work of Flory on gelation Flory (1941) and its theoretical framework was formulated 1957 by Broadbent and Hammersley Broadbent and Hammersley (1957). Ever since then, it has been a very active field of research that has brought forth deep mathematical results Grimmett (1999) and clever algorithms like Hoshen and Kopelman (1976) and Newman and Ziff (2000); *newman:ziff:01
. In spite of its maturity, the study of percolation keeps providing us with new and surprising insights, even for simple systems. A recent example is the discovery of an equation that connects the average number of clusters and the wrapping probabilities for two-dimensional percolation in periodic lattices of any sizeMertens and Ziff (2016).
In this contribution, we discuss the parity of the total number of spanning configurations in various lattices. We were motivated by a startling pattern that we found empirically by exhaustive enumerating spanning configurations on small lattices.
Let denote the number of vertically spanning configurations with occupied sites in a lattice with rows and columns, i.e., where there is a path of occupied sites connecting the top row to the bottom row. We can define a bivariate generating function
In particular, is the difference between the number of spanning configurations with an even or odd number of occupied sites,
When we computed this difference explicitly for the square lattice and for small and , we found the pattern shown in Table 1. It coincides with
In other lattices such as the triangular lattice, the pattern is much more complicated, see Table 2. The result for the square lattice is remarkable since the fact that implies that the number of spanning configurations with even and odd is almost identical, and in particular that the total number of spanning configurations is always odd; to our knowledge, this was not known before. Last but not least, the pattern of ’s given by cries out for an explanation.
The paper is organized as follows. We start by proving (3a) and (3b). We then generalize this result to site percolation on the hypercube and more general on cartesian graph products. Then we present the most general form of our result in terms of percolation on graph stacks. Finally we discuss the computation of for pairs of matching lattices.
Ii The Square Lattice
We compute by constructing a partial matching on the set of spanning configurations: that is, for most spanning configurations we define a unique partner which is another spanning configuration, such that . Moreover, and have opposite parity, since they differ at a single site. As a result, the contribution of each matched pair cancels in the sum (2). The contribution of the remaining spanning configurations is simple enough that it can be written explicitly.
We number the rows from top to bottom, and the columns left to right. Let be a spanning configuration, and suppose that row is not entirely occupied. Then that row has a leftmost empty site for some . We define by flipping the site in the top row immediately above this empty site, occupying it if it is unoccupied in and vice versa.
Since was a spanning configuration, it has a path from the bottom row to the top row. This path arrives on the top row by passing through two adjacent occupied sites, and for some . But since is empty, , and this path still exists in . Thus is also a spanning configuration, and clearly as claimed.
Let us now assume that the second row of is completely occupied. Then we look for the topmost even-numbered row that is not completely occupied. We again find its leftmost empty site , and define by flipping the site in the odd-numbered row above it. As before, has a path from the bottom to row which passed through occupied sites and where , and this path still exists in . Moreover, once the path arrives on row , it can connect immediately to row above it since that row is completely occupied, and from there to the top of the lattice. Thus is again a spanning configuration, and as before.
This defines an opposite-parity partner for all spanning configurations except those where all even-numbered rows are fully occupied as shown in Fig. 1. Configurations of this type are spanning configurations if and only if no odd-numbered row is completely empty. If denotes the number of occupied sites in row , the total number of occupied sites is
since there are even-numbered rows and odd-numbered ones. The number of such configurations is
so (2) becomes
Iii Graph Products and Boundary Conditions
The square lattice with open boundary conditions can be written as the Cartesian graph product Harary (1969) where is the path with vertices. Let us now consider graphs of the form . Each row or “layer” is a copy of , where each vertex is connected to the corresponding vertices in the rows above and below it. For instance, if we use cylindrical boundary conditions in the horizontal direction, we obtain where is the cycle with vertices.
What properties of , if any, did we use in our proof of (3)? Suppose is the topmost even-numbered layer which is not fully occupied. Choosing the “leftmost” empty site in this layer can be replaced by choosing the first empty site in an arbitrary fixed ordering of the vertices of . When we defined by flipping the site above this empty site, we claimed that this cannot disrupt the way the spanning path in from the bottom of the lattice first arrives at layer , since that path must go through occupied sites and for some . As long as is connected, we can then reach any vertex in the fully occupied layer , and from there reach the top of the lattice where .
Thus for any connected graph , we have
where denotes the number of vertices of and where we define a spanning configuration as one with a path of occupied sites from the top layer to the bottom layer of the lattice. This includes the case where is the hypercubic lattice and , with any boundary conditions (open, cylindrical, toroidal, etc.). Thus (4) holds for the -dimensional hypercubic lattice with any boundary conditions that are open in the vertical direction . It also includes, for instance, the hexagonal crystal lattice in three dimensions where is a triangular lattice.
Iv Graph Stacks
The graph product consists of identical layers, each of which is a copy of . But in our proof of (3) we did not assume that the layers are identical. Hence (4) holds in an even more general setting, where the layers are arbitrary connected graphs, each with vertices labeled arbitrarily. The edges within each layer coincide with the edges of , and the edges between layers are for all .
Such graphs have been considered in the study of dynamic networks, e.g. Holme and Saramäki (2012); Ghasemian et al. (2016). Since there is no concept of time here, we prefer to call this construction a graph stack and notate it . We again define a spanning configuration as one with a path from the top layer to the bottom layer. Then
This seems to be the most general case for which (3) holds. Physically, it would hold, for instance, if each layer is a connected subgraph of some -lattice (perhaps with some edges removed by dilution) or if each layer has a different lattice structure entirely.
V Matching Lattices
For lattices outside the class described in the previous section, our method to compute does not work. Yet for some two-dimensional lattices we can get at least partial results. For that we need the idea of the matching graph. A pair of graphs on the same vertex set is called a matching pair if both and can be derived from an underlying planar graph in the following way. Let be the set of all faces of . Then for some subset , define (resp. ) as a copy of with additional edges such that each face in (resp. ) becomes a clique, i.e., a fully connected graph. Note that this definition is symmetric, so that is a matching pair if and only if is.
For example, by taking to be the square lattice and , we see that if is the simple square lattice then its matching graph is the square lattice with nearest and next-nearest neighbors (the Moore neighborhood). Similarly, the triangular lattice is self-matching: we can take , , and all to be the triangular lattice, since its faces are already cliques.
The crucial property of a matching pair of lattices is that a configuration with occupied sites in an lattice spans the -direction if and only if the complementary configuration consisting of the empty sites does not span the -direction in the matching lattice . This allows us to write
where and are the generating functions (1) for spanning configurations in and respectively. Along with the general relation
which also also holds for , we can then write
and in particular
Now for self-matching lattices like the triangular lattice, we can take off the hat to get
This tells us that if and is even, the balance between even and odd spanning configurations is perfect,
This pattern is visible in Table 2, where the diagonal entries with even are zero. For other values of , we only have the symmetry . This also shows in Tab. 2, but implies no constraint on the number of configurations.
If, on the other hand, we know for a lattice , we can use (9) to compute the corresponding function for the matching lattice. Our results on the square lattice imply that for the matching lattice with the Moore neighborhood, we have
which also implies that the total number of spanning configurations is odd for this lattice.
Although there is no simple pattern in , there appears to be an interesting pattern in the parity of the total number of spanning configurations, i.e., . Table 3 shows this pattern for . For it appears that
Proving this equation would require a different approach than the one used in this paper, but the self-matching property of the trangular lattice gives some information. Since the total number of spanning configurations is given by , we can use (9) and the self-matching property to get
This tells us, that for exactly half of the configurations are spanning, and that the parity matrix is symmetric. This is not sufficient to prove (13). We leave this as an open question.
In the theory of computational complexityMoore and Mertens (2011), counting problems—specifically, counting solutions to a problem where each solution can be verified in polynomial time—constitute the complexity class #P. Computing the coefficients of the generating function for a general graph falls into this class. For general graphs, the generating function is also known as the reliability polynomial, and its computation has been shown to be #P-complete Valiant (1979a), meaning that it is among the hardest counting problems in this class. As a result, we believe that any algorithm needs to perform some kind of explicit enumeration, and therefore requires exponential time. This is true even when is restricted to planar graphs with bounded degree Provan (1986).
Computing a generating function like at arbitrary values of and
is just as hard as computing its coefficients, since we can recover its coefficients by interpolation. However, many generating functions that are #P-complete to compute in general can be efficiently computed at specific points, such as the Tutte polynomialJaeger et al. (1990). Similarly, computing the parity of a counting problem may or may not be difficult. The permanent of a matrix with entries is #P-complete Valiant (1979b), but its parity is easy since the permanent and determinant are equivalent modulo . On the other hand, solving general counting problems mod is probably very difficult, since a polynomial-time algorithm with access to an oracle for such problems can solve any problem in the polynomial hierarchy, including problems well beyond NP-completeness Toda (1991).
In this contribution we have shown that for a large class of lattices we can compute , i.e., the difference between the number of spanning configurations with an even or odd number of occupied sites. In particular, we have shown that these sets of configurations are almost perfectly balanced. In addition to implying that the parity of the total number of spanning configurations is odd, this almost-perfect balance can be used as a sanity check for enumeration algorithms that compute the numbers for small values on and .
Acknowledgements.We are grateful to Bob Ziff and Alex Russell for their input, and to Andrea Wulf and Chaco Wolpert for their support. S.M. thanks the Santa Fe Institute, Tracy Conrad, and Rosemary Moore for their hospitality.
- Flory (1941) P. J. Flory, Journal of the American Chemical Society 63, 3083 (1941).
- Broadbent and Hammersley (1957) S. R. Broadbent and J. M. Hammersley, Mathematical Proceedings of the Cambridge Philosophical Society 53, 629 (1957).
- Grimmett (1999) G. R. Grimmett, Percolation, 2nd ed., Grundlehren der mathematischen Wissenschaften, Vol. 321 (Springer-Verlag, Berlin, 1999).
- Hoshen and Kopelman (1976) J. Hoshen and R. Kopelman, Physical Review B 14, 3438 (1976).
- Newman and Ziff (2000) M. E. J. Newman and R. M. Ziff, Physical Review Letters 85, 4104 (2000).
- Newman and Ziff (2001) M. E. J. Newman and R. M. Ziff, Physical Review E 64, 016706 (2001).
- Mertens and Ziff (2016) S. Mertens and R. M. Ziff, Physical Review E 94, 062152 (2016).
- Harary (1969) F. Harary, Graph Theory (Perseus Book Publishing, L.L.C., 1969).
- Holme and Saramäki (2012) P. Holme and J. Saramäki, Physics Reports 519, 97 (2012).
- Ghasemian et al. (2016) A. Ghasemian, P. Zhang, A. Clauset, C. Moore, and L. Peel, Physical Review E 6, 031005 (2016).
- Moore and Mertens (2011) C. Moore and S. Mertens, The Nature of Computation (Oxford University Press, 2011) www.nature-of-computation.org.
- Valiant (1979a) L. G. Valiant, SIAM Journal on Computing 8, 410 (1979a).
- Provan (1986) J. S. Provan, SIAM Journal on Computing 15, 694 (1986).
- Jaeger et al. (1990) F. Jaeger, D. Vertigan, and D. J. A. Welsh, Mathematical Proceedings of the Cambridge Philosophical Society 108, 35 (1990).
- Valiant (1979b) L. Valiant, Theor. Comp. Sci. 8, 189 (1979b).
- Toda (1991) S. Toda, SIAM Journal on Computing 20, 865 (1991).