Improved Upper Bounds on the Growth Constants of Polyominoes and Polycubes
IImproved Upper Bounds on the Growth Constants of Polyominoes andPolycubes ∗ Gill Barequet † Mira Shalah ‡ Abstract A d -dimensional polycube is a facet-connected set of cells (cubes) on the d -dimensional cubicallattice Z d . Let A d ( n ) denote the number of d -dimensional polycubes (distinct up to translations) with n cubes, and λ d denote the limit of the ratio A d ( n +1) /A d ( n ) as n → ∞ . The exact value of λ d is stillunknown rigorously for any dimension d ≥
2; the asymptotics of λ d , as d → ∞ , also remained elusive asof today. In this paper, we revisit and extend the approach presented by Klarner and Rivest in 1973 tobound A ( n ) from above. Our contributions are: • Using available computing power, we prove that λ ≤ . λ in almost half a century; • We prove that λ d ≤ (2 d − e + o (1) for any value of d ≥
2, using a novel construction of a rationalgenerating function which dominates that of the sequence ( A d ( n )); • For d = 3, this provides a subtantial improvement of the upper bound on λ from 12.2071 to 9.8073; • However, we implement an iterative process in three dimensions, which improves further the upperbound on λ to 9 . ∗ Work on this paper by the two authors has been supported in part by Grant 575/15 from the Israel Science Foundation(ISF). † Center for Graphics and Geometric Computing, Computer Science Department, The Technion—Israel Institute of Tech-nology, Haifa 3200003, Israel. E-mail: [email protected] ‡ Computer Science Department, Stanford University, CA. E-mail: [email protected] a r X i v : . [ c s . D M ] J un Introduction
Polyominoes are edge-connected sets of squares on the square lattice. Figure 1: Polyominoes ofsizes 1 ≤ n ≤ polycubes arefacet-connected sets of d -dimensional unit cubes, where connectivity isthrough ( d − fixed polycubes are consideredidentical if one can be obtained by a translation of the other. In thispaper, we consider only fixed polycubes. Polyominoes and polycubes arespecific types of lattice animals , the term used in the statistical physicsliterature to refer to connected sets of cells on any lattice.The fundamental combinatorial problem concerning polycubes is “Howmany polycubes with n cubes are there?” This problem originated inparallel in the theory of percolation [14, 29], in the analysis of chemicalgraphs [10, 12, 20, 23], and in the graph-theoretic treatment of cell-growth problems [18] more than halfa century ago. However, despite much research in those areas, most of what is known relies primarilyon heuristics and empirical studies, and very little is known rigorously, even for the low-dimensional lat-tices in 2 ≤ d ≤ A d ( n ) (sequence A001168 in the On-line Encyclopedia of Integer Sequences [1]) denote the numberof polycubes of size n . Since no analytic formula for A d ( n ) is known for any dimension d>
1, many re-searchers have focused on efficient algorithms for counting polycubes by size, primarily the square lattice.These methods are based on either explicitly enumerating all polycubes (e.g., by an efficient back-trackingalgorithm [25, 28]), or on implicit enumeration (e.g., by a transfer-matrix algorithm [9, 16]). The se-quence A ( n ) has been determined so far up to n = 56 [16]. Enumerating polycubes in higher dimensionsis an even more elusive problem. Most notably, Aleksandrowicz and Barequet [3, 4] extended polycubecounting by efficiently generalizing Redelmeier’s algorithm [28] to higher dimensions. The statistical-physicsliterature provides extensive enumeration data of polycubes [14, 24, 23, 13], the most comprehensive beingby Luther and Mertens [21], in particular, listing A ( n ) up to n =19.One key fact that holds in all dimensions was discovered in 1967 by Klarner [18], showing that thelimit λ := lim n →∞ n (cid:112) A ( n ) exists. This is a straightforward consequence of the fact that the se-quence (log A ( n )) is supper-additive, i.e., A ( n ) A ( m ) ≤ A ( n + m ). Since then, λ has been called“Klarner’s constant.” Only in 1999, Madras [22] proved the existence of the asymptotic growth rate,namely, lim n →∞ A ( n + 1) /A ( n ), which clearly equals λ . Klerner’s and Madras’s results hold, in fact, inany dimension.A great deal of attention has been given to estimating the values of λ d , especially for d =2 ,
3. Theirexact values are not known and have remained elusive for many years. Based on interpolation methods,applied to the known values of the sequences ( A ( n )) and ( A ( n )), it is estimated (without a rigorousproof), that λ ≈ .
06 [16] and λ ≈ .
34 [15]. There have been several attempts to bound λ from below,with significant progress over the years [6, 7, 11, 17, 18, 26, 27], but almost nothing is known for higherdimensions. For d = 2, it has been proven that λ ≥ . d >
2, the only known way to set alower bound on λ d is by using the fact [18] that λ d = lim n →∞ n (cid:112) A d ( n ) = sup n ≥ n (cid:112) dA d ( n ). In particular,for d =3, the value A (19)=651 , , , ,
897 yields the lower bound λ ≥ (cid:112) A (19) ≈ . λ mentioned above.On the other hand, only one procedure (Eden [11]) is known for bounding λ d from above. This Another method for bounding λ from above was presented elsewhere [5], but G. Rote (personal communication) discovered λ ≤ . λ ≤ . λ d ≤ (2 d − e . It was shown in [8] that λ d ∼ ed − o ( d ) as d tends to infinity, and conjectured (based on anunproven assumption) that λ d is asymptotically equal to (2 d − e + O (1 /d ).As we detail in the next section, Klarner and Rivest [19] enhanced Eden’s method by using a moresophisticated system of “twigs,” proving that λ ≤ . g ( d ) ( x, y ) = ∞ (cid:88) n,m =0 l d ( n, m ) x n y m = ∞ (cid:88) n =0 xy n (cid:16) (1 + x ) d − + x (cid:17) n = x − y (cid:0) (1 + x ) d − + x (cid:1) , whose diagonal function (cid:80) ∞ n =0 l d ( n, n ) x n y n generates a sequence which dominates the sequence ( A d ( n )).Using elementary calculus, Klarner and Rivest [19] proved that for d = 2, l ( n, n ) ≤ . n . Similarly, weprove that for d = 3, we have that l ( n, n ) ≤ . n , giving the first nontrivial upper bound on λ . Finally,we prove that λ d ≤ (2 d − e + 1 / (2 d − l d ( n, n ) ≤ ((2 d − e + 1 / (2 d − n . To the bestof our knowledge, this is the first generalization of Klarner and Rivest’s method to higher dimensions, andthe first algorithmic approach for improving the upper bound on λ d for any value of d >
2. An importantresult of this enhancement for dimensions d ≥ n can be encoded with O (2 d − n ) bits.Lastly, we revisit the computer-assisted approach that Klarner and Rivest [19] used to further improvethe upper bound on λ to 4 . λ to 4.5252. Wealso extend the approach to d = 3, and prove that λ ≤ . For two d -dimensional cubes with centers c = e e e e e e e e x , . . . , x d ) and c = ( y , . . . , y d ), we say that c is lexicographically smaller than c if x i < y i forthe first value of i where they differ. Let P bean n -cell polycube in d dimensions. P can beuniquely encoded with a binary string W P of length(2 d − n − G be the cell-adjacency graph of P . (The vertices of G are thecenters of the cubes in P , and two vertices are con-nected by an edge if their corresponding cubes areadjacent.) Perform a breadth-first search on G , starting at cell 1 (the lexicographically smallest cell of P ).In the course of this procedure, every cell c ∈ P is reached through an incoming edge e since P is connected.(An imaginary edge incoming into cell 1 is fixed so as to supposedly originate from a cell that cannot belongto P .) Clearly, the cell c is connected by edges of G to at most 2 d − e . (For example, for polyominoes, the outgoing edges are traversed according to their clockwiseorder relative to e .) Then, if such an edge leads to a cell of P which has not been labeled yet, this cell isassigned the next unused number, and we update W P := W P ·
1, where “ · ” is the concatenation operator.Otherwise, if the cell does not belong to P , or it is already assigned a number, we set W P := W P ·
0. Sinceeach cell can be assigned a number only once, this procedure maps polycubes in a one-to-one manner into an error in the computations thereof. Fixing this error raised the obtained upper bound above the known bound [19]. n − d − n zeros. Hence, using Stirling’s formula, A d ( n ) ≤ (cid:18) (2 d − n − n − (cid:19) ≤ (cid:18) (2 d − d − (2 d − d − (cid:19) n . (1)For polyominoes, this procedure is equivalent to assigning an element of E = { e , . . . , e } (Figure 2) toeach square of P (in the same order).In three dimensions, one obtains that λ ≤ / ≤ . (2 d − d − (2 d − d − = (2 d − (cid:16) d − (cid:17) d − < (2 d − e , it follows that λ d ≤ (2 d − e . (In fact, a more thorough analysis of the lastrelation shows that λ d ≤ (2 d − . e .) (The latter value is also known as the “Bethe approximation” of λ d ;see Gaunt et al. [14, p. 1904, Eq. 3.9], and Gaunt and Peard [ ? , p. 7523, Eq. 4.9].)Now refer to Figure 3. Around any square u on the u ∗∗∗∗ ba b ∗ ∗∗∗ ua b ∗∗∗ ∗ au b ∗∗ ∗∗ u a (a) (b) (c) (d) ∗ uab ∗∗ ∗ b ∗ ∗∗ ua ∗ a ∗∗∗ ub ∗ a ∗∗∗ ub ∗ (e) (f) (g) (h)Figure 3: L -contexts of [19, Figure 6]square lattice, there are eight L -shaped 4-sets of squares,called the “ L -contexts” of u [19]. Let us use the term sta-tus of a cell to refer to whether or not the cell belongs to agiven polyomino. In their beautiful paper [19], Klarner andRivest designed a set of twigs L (see Figure 4), which is morecompact than E . They showed that similarly to e , . . . , e , L , . . . , L can serve as building blocks for polyominoes: Ev-ery n -cell polyomino P corresponds to a unique n -term se-quence of elements of L , however, not every such sequencerepresents a polyomino, immediately implying that λ < | L | = 5, which is already a substantial improvement over6.75.The key idea behind the design of L is that one can per- ∗∗∗ L ∗∗∗∗ L ∗∗∗∗ L ∗∗∗∗ L ∗∗∗∗ L ∗ Figure 4: Twig set L [19, Figure 7]form a breadth-first search on the cell-adjacency graph of apolyomino, such that at each step, each cell can be assignedone of the eight L -contexts shown in Figure 3, such that thestatuses of all cells in this L -context are already encoded.Therefore, while E encodes all 2 = 8 possible status config-urations of three neighbors at every step of the traversal, L encodes the statuses of just two neighbors at each step. The sequence L p , encoding a polyomino P , canbe constructed algorithmically as follows. Assume, w.l.o.g., that in the lexicographic order defined overthe cells of P , the cells are ordered first according to their y -coordinate, and secondly according to their x -coordinate. Maintain a queue (initially empty) of white (or open ) cells. White cells are cells that havenot yet been visited by the algorithm. Start from the lexicographically-smallest cell of P , and put it inthe queue. The L -context of this cell is the one shown in Figure 3(a), since, by definition, the cells in this L -context of the cell do not to belong to P . The addition of twigs to the configuration T constructed sofar proceeds as follows until the queue is empty. Let u be the oldest cell in the queue. Remove u from thequeue. Let a, b denote the cells connected to u (as shown in Figure 3), c ( (cid:54) = u ) denote the cell connectedto a, b , and (cid:96) denote the last label assigned to a cell of P (initially (cid:96) = 0). Refer to Figure 4. The twig L assigned to u is L if a, b, c / ∈ P ; L if b, c / ∈ P and a ∈ P ; L if b / ∈ P and a, c ∈ P ; L if a / ∈ P and b ∈ P ;or L if a, b ∈ P . A new configuration T ∗ L is then constructed as follows:1. The root cell of L (shown in black in Figure 4) is placed over u , such that the orientation ( L -context)of L and u coincide (this may require a reflection and/or rotation of L ).2. The white cell, where L has been added, is turned black ( dead ).3. The cells of L marked with an X (called forbidden ) become forbidden in T , namely, they will neverbecome cells of T .4. The white cells of L are added (in their indicated order) to the queue. Note that each white cell hasan assigned L -context (indicated by the shape L ), and that the statuses of all cells in this L -contextare known (and thus, already encoded).5. The white cell(s) of L are assigned the label (cid:96) +1 (or (cid:96) +1 and (cid:96) +2, in order).Note that when a ∈ P and b / ∈ P , it is necessary to encode whether or not c is in P (twigs L and L , resp.), so that when a is inserted to the queue, the statuses of all cells in its indicated L -context are encoded. Note also that the linear order of the white cells in L and L is necessary toensure the uniqueness of the construction. For the second white cell in either L or L , the statusesof all cells in its indicated L -context are known only after assigning a twig to the first open cell. Anexample of this process is shown in Fig. 5(b): Let u i be the cell visited at step i , and a i , b i be thecells connected to u i (Figure 3). The cell u is assigned the label 1 and the twig L since a , b ∈ P .In order to assign a twig L i ∈ L to u , L i is rotated by 90 ◦ and reflected around the x axis. Notethat a cell can be discovered and labeled only once. Therefore, u is assigned the twig L (not L )since the cell on its right was already discovered at the fourth iteration and assigned the label 8.
31 248 96 7 Figure 5: [19, Figure 8] L P = ( L , L , L , L , L , L , L , L , L , L ). Observation 2.1
Two different polyominoes are encodedwith different sequences of twigs.
With this construction, Klarner and Rivest reducedthe number of building blocks of polyominoes from 8to 5. It is natural to ask if a more compact set of buildingblocks exists. We can now answer this question on thenegative, since the existence of such set of size 4 wouldimply that λ ≤
4, while we already know that λ ≥ . The upper bound λ ≤ L , as follows. Each twig L ∈ L is assigned a weight w ( L ) = x a y b , where a denotes thenumber of cells in L minus 1, and b denotes the number of black cells in L . (Thus, w ( L ) = y , w ( L ) = xy , w ( L ) = x y , w ( L ) = xy , and w ( L ) = x y .) The weight of a sequence S = ( (cid:96) , . . . , (cid:96) k ) ∈ L k is defined as W ( S ) = x · w ( (cid:96) ) · . . . · w ( (cid:96) k ), and the weight of the empty sequence is defined to be x .Let P be a polyomino of size n , and let L p = { (cid:96) , . . . , (cid:96) n } ∈ L n denote the sequence of twigs encoding P .For each (cid:96) i ∈ L , we clearly have that w ( (cid:96) i ) = x a i y , such that a i ∈ { , , } equals the number of open cellsin (cid:96) i . Thus, w ( L p ) = x · x (cid:80) ni =1 a i y n . Moreover, (cid:80) ni =1 a i = n − P (other than thesmallest cell) becomes open only once, and is thus accounted for by some a j in the sum. The smallest cellis accounted for by the term x in w ( L p ). Corollary 2.2 w ( L p ) = x n y n . Now, let L k denote the set of all sequences of k ≥ L . The sum of weights of all finitesequences of elements of L is ∞ (cid:88) k =0 (cid:88) S ∈ L k W ( S ) = ∞ (cid:88) k =0 x (cid:32)(cid:88) (cid:96) ∈ L w ( (cid:96) ) (cid:33) k = x (cid:32) − (cid:88) (cid:96) ∈ L w ( (cid:96) ) (cid:33) − . (2)4learly, (cid:80) (cid:96) ∈ L w ( (cid:96) ) = y (2 x + 2 x + 1), thus, the generating function given by (2) is ∞ (cid:88) m,n =0 l ( m, n ) x m y n = x − y (2 x + 2 x + 1) = ∞ (cid:88) n =0 xy n (2 x + 2 x + 1) n , (3)where l ( m, n ) is the coefficient of the term x m y n .By Observation 2.1 and Corollary 2.2, there is an injection of the set of polyominoes of size n intothe set of finite sequences of elements of L having weight x n y n . Thus, the coefficient l ( n, n ) of x n y n inEquation (3) is an upper bound on A ( n ). In Section 3.3.1, we follow the proof of Klarner and Rivest [19]for showing that l ( n, n ) ≤ . n . In the next two sections, we extend the concept of “ L -context” tohigher dimensions. x x o x *** * * * Figure 6: The + L context (bold black lines) of a cell o on the 3D cubical latticeWe generalize the twigs idea to three dimensions as follows. Refer to Figure 6. Let o = (0 , ,
0) be thelexicographically-smallest cell of the polycube. Thus, by definition, all cubes that lie in the planes x = − x = 1 do not belong to the polycube. We define the “+ L -context” of o (this name indicates acomposition of a “Plus” and an “Ell”) to be the six cells around o shown in asterisks in Figure 6. Observethat the set of 2-dimensional twigs L (Figure 4) captures all possible occupancy configurations of theneighbors of o that lie in the x x plane. For the remaining neighbors of o (namely, cells (0 , , − , , = 4 possible encodings of whether or not they belong to the polycube. Thisyields the set L (3) of seventeen 3-dimensional twigs, shown in Figure 7. Similarly to two dimensions, thecells of a twig are either black or white, and the + L context and linear order of the open cells is indicated.Similarly to L , . . . , L (in Figure 2), it is easy to check that T , . . . , T (in Figure 4) serve as completebuilding blocks for polycubes since they cover all possible situations (a formal proof is given in the nextsection). Every n -cell polycube P corresponds to a unique n -term sequence of elements of L (3) , and differentpolycubes are assigned different sequences. The sequence corresponding to a polycube can be constructedalgorithmically by a breadth-first search as in two dimensions. Every twig is assigned a weight in the samemanner, and we get that (cid:88) (cid:96) ∈ L (3) w ( (cid:96) ) = y (1 + 4 x + 7 x + 4 x + x ) = y (cid:0) ( x + 1) + x (cid:1) . Thus, the generating function given by Eq. (2) is x − y (1 + 4 x + 7 x + 4 x + x ) = ∞ (cid:88) n =0 xy n (1 + 4 x + 7 x + 4 x + x ) n . (4)See Section 3.3 for the full analysis of this generating function.5 T T T T T T T T
123 132 T T T T
21 2 1 1 2 T T T T T Figure 7: 3-dimensional twigs d > Our construction in three dimensions can be applied inductively for d >
3. The base of the inductionis d =2, where we fix a square in the x x plane (as in Figure 6) together with its L -context. Going to d =3,the square gains two new neighbors in the third dimension x . In general, when we go from d − d dimensions, a cube gains two neighbors in the new dimension x d . Let o = (0 , , . . . ,
0) be a d -dimensionalcube ( d > d L -context of o in a recursive way. The base of the definition is + L := L and + L := + L , and the recursion is + d L := + d − L ∪{ c , c } , where c , = ( − , , . . . , , ± d L -context of o is an L-shape around o in the x x plane, which intersects d − x = − − , , . . . , L ( d ) (where L (2) = L ) is comprised of all 2 d − occupancy options for the cells neighbor-ing o (which are not in its + d L -context): In dimensions x , . . . , x d , the construction simply covers all 2 d − occupancy options for the two neighbors of o . In the x x plane, the occupancies of the neighbors of o arecaptured by L , as in Fig. 4, and the only “problematic” case is when the cube (1 , , . . . ,
0) is white and allother neighbors of o are not (as is the case with the twigs L , L in Figure 4, and T , T in Figure 7). Itis, thus, necessary to encode the status of the cell (1 , − , , . . . , d L context of the cell (1 , , . . . , d − · + 1 = 2 d − + 1 twigs, and comparesfavorably with the generalization of Eden’s construction, which contains about two times more (2 d − )twigs.In order to prove that our construction works better, all we need to show is that for any white cell u inevery twig in L ( d ) , there is a set of 4 + 2( d −
2) = 2 d cells around u , which can be completely ignored by the6onstruction when visiting u . Those cells can form its + d L -context. Note that except the second white cellin the problematics case mentioned above, all white cells are neighbors of o . In case a new neighbor of o ,namely, (0 , , . . . , , ± L -shape in its + d L -context is formed by c (or c ), ( − , , . . . , o ,and (1 , , . . . , d L -context are (0 , ± , , . . . , . . . , (0 , . . . , , ± ,
0) (that is,all coordinates are 0, except one coordinate in the range 2 , . . . , ( d − ± n = (0 , . . . , , ± , , . . . , o , + d L = + d − L ∪ (0 , . . . , , ±
1) since, by construction, o is where the ‘ L ’ and the ‘+’ in the + d − L -contextof n intersect. Thus, the union + d − L ∪ (0 , . . . , , ±
1) forms its + d L -context; The statuses of the cells inits + d − L -context and of (0 , . . . , , ±
1) are known by induction and construction, respectively. Finally, weneed to address the second white cell p = (1 , − , , . . . ,
0) in the problematic twig mentioned above. Thiscell will always be visited after the first open cell q = (0 , , . . . ,
0) of the twig is visited and assigned atwig. Once q is assigned a twig, the statuses of all its neighbors will be encoded. Then, it is easy to checkthat the cells (1 , , . . . , o , (0 , , . . . , , , . . . ,
0) form the L -shape in the neighborhood of p ,and together with the remaining 2( d −
1) neighbors of q , they form the + d L -context of p . The statuses ofthese cells are already encoded by construction.Finally, we need to compute the weight function W ( d ) ( x, y ) = (cid:80) t ∈ L ( d ) w ( t ). Since o has 2( d −
1) neigh-bors that are not in its + d L -context, there are (cid:0) d − i (cid:1) twigs in L ( d ) with exactly i white cells and oneblack cell ( o ), and the weight of each such twig is x i y . Recall the problematic case mentioned above, whichresults in an additional twig with three cells—1 black and 2 white—whose weight is therefore x y . Hence, W ( d ) ( x, y ) = (cid:88) t ∈ L ( d ) w ( t ) = d − (cid:88) i =0 (cid:20)(cid:18) d − i (cid:19) x i y (cid:21) + x y = y (( x + 1) d − + x ) . Substituting W ( d ) ( x, y ) in the generating function from Equation (2), we obtain g ( d ) ( x, y ) = l d ( n, m ) x m y n = ∞ (cid:88) n =0 xy n (cid:16) (1 + x ) d − + x (cid:17) n = x − y (cid:0) (1 + x ) d − + x (cid:1) , Similarly to polyominoes, polycubes of size n are mapped uniquely to sequences of elements of L ( d ) having weight x n y n . It can be easily observed that l d ( n, n ), the coefficient of x n y n in g ( d ) ( x, y ), is the coefficient of x n − in (cid:0) (1 + x ) d − + x (cid:1) n . We now show how to compute l d ( n, n ). Let h ( d ) ( x ) = (cid:0) (1 + x ) d − + x (cid:1) n . Westart with the simple cases of d = 2 ,
3, and then generalize the calculation to any value of d . d = 2 In two dimensions, h (2) ( x ) = (cid:0) (1 + x ) + x (cid:1) n = (1 + 2 x + 2 x ) n . By the Multinomial Theorem, we havethat (1 + 2 x + 2 x ) n = (cid:88) i ,i (cid:20)(cid:18) nn − i − i , i , i (cid:19) (2 x ) i (2 x ) i (cid:21) . x n − , we require that i +2 i = n −
1, i.e., i = n − i −
1. Thus, l ( n, n ) = (cid:88) i (cid:20)(cid:18) ni + 1 , n − i − , i (cid:19) n − i − (cid:21) = 2 n (cid:88) i (cid:34)(cid:18) ni + 1 , n − i − , i (cid:19) (cid:18) (cid:19) i (cid:35) =2 n √ (cid:88) i (cid:34)(cid:18) ni + 1 , n − i − , i (cid:19) (cid:18) √ (cid:19) i (cid:18) √ (cid:19) i +1 (cid:35) < ∗ n √ (cid:18) √ √ (cid:19) n = (cid:0) √ (cid:1) n √ . (The relation “ < ∗ ” is because the summation in its left-hand side contains only a subset of the terms whosesum is equal to the exponential term on the right-hand side.) Hence, λ ≤ √ ≈ . d = 3Theorem 3.1 λ ≤ . .Proof: We repeat the calculation in the same manner as above. h (3) ( x ) = (cid:0) (1 + x ) + x (cid:1) n = (1 + 4 x + 7 x + 4 x + x ) n = (cid:88) i ,i ,i ,i (cid:34)(cid:18) n ( n − (cid:80) j =1 i j ) , i , i , i , i (cid:19) i i i x i +2 i +3 i +4 i (cid:35) . Similarly to the 2-dimensional case, we require that i +2 i +3 i +4 i = n −
1, that is, i = n − − i − i − i . Substituting i in the right-hand side of the equality above, we obtain l ( n, n ) = (cid:88) (cid:20)(cid:18) ni + 2 i +3 i +1 , n − − i − i − i , i , i , i (cid:19) n − − i − i − i i i (cid:21) . Therefore, by the Multinomial Theorem, we have that l ( n, n ) = 4 n (cid:88) i ,i ,i (cid:34)(cid:18) ni + 2 i +3 i +1 , n − − i − i − i , i , i , i (cid:19) (cid:18) (cid:19) i (cid:18) (cid:19) i (cid:18) (cid:19) i (cid:35) < n (cid:18) + 14 + 14 + 1 + 1 (cid:19) n = 14 (cid:18) (cid:19) n . Thus, λ ≤ ≈ . λ ≤ . b > l ( n, n ) = 4 n (cid:88) i ,i ,i (cid:18) ni + 2 i +3 i +1 , n − − i − i − i , i , i , i (cid:19) (cid:32) (cid:0) b b (cid:1) (cid:33) i (cid:32) (cid:0) b b (cid:1) (cid:33) i (cid:32) (cid:0) b b (cid:1) (cid:33) i (cid:124) (cid:123)(cid:122) (cid:125) c ( b ) , and rearrange the three terms in c ( b ) as follows. 8 ( b ) = (cid:18) b (cid:19) i (cid:32) (cid:0) b (cid:1) (cid:33) i (cid:18) b (cid:19) i (cid:32) (cid:0) b (cid:1) (cid:33) i (cid:18) b (cid:19) i (cid:32) (cid:0) b (cid:1) (cid:33) i = (cid:18) b (cid:19) i (cid:18) b (cid:19) i (cid:32) (cid:0) b (cid:1) (cid:33) i (cid:18) b (cid:19) i (cid:18) b (cid:19) i (cid:32) (cid:0) b (cid:1) (cid:33) i (cid:18) b (cid:19) i (cid:18) b (cid:19) i (cid:32) (cid:0) b (cid:1) (cid:33) i = (cid:18) b (cid:19) i (cid:32) b (cid:33) i (cid:18) b (cid:19) i (cid:32) b (cid:33) i (cid:18) b (cid:19) i (cid:32) b (cid:33) i = (cid:18) b (cid:19) i +2 i +3 i (cid:32) b (cid:33) i (cid:32) b (cid:33) i (cid:32) b (cid:33) i . Thus, l ( n, n ) =4 n (cid:88) i ,i ,i (cid:18) ni +2 i +3 i +1 , n − − i − i − i , i , i , i (cid:19) (cid:18) b (cid:19) i +2 i +3 i (cid:32) b (cid:33) i (cid:32) b (cid:33) i (cid:32) b (cid:33) i < n (cid:18) b + 1 + 7 b
16 + b + b (cid:19) n , where the last relation is again due to the Multinomial Theorem and due to the partial summation.The heart of our trick is that the partial summation allows us to choose the value of b that minimizesthe sum of the chosen summands (by assigning appropriate weights to the five components). Define f ( b ) = 1 b + 1 + 7 b
16 + b + b . Our goal, then, is to choose b so as to minimize f ( b ). Elementary calculus shows that f ( b ) assumes itsminimum at b = 1 . f ( b ) = 2 . l ( n, n ) < n f n ( b ) for any b , inparticular, for b = b . Hence, finally, l ( n, n ) < n · . n = 9 . n . (Had we chosen b = 1, we would have obtained again the bound λ ≤ . (cid:3) d Theorem 3.2 λ d ≤ (2 d − e + 1 / (2 d − .Proof: The proof for a general value of d > d = 2 ,
3. For simplicity, let usfix a = 2( d − h ( d ) ( x ) = (cid:0) (1 + x ) a + x (cid:1) n = ax + (cid:18)(cid:18) a (cid:19) + 1 (cid:19) x + a (cid:88) j =3 (cid:18) aj (cid:19) x j n = (cid:88) i ,...,i a (cid:18) n ( n − (cid:80) aj =1 i j ) , i , . . . , i a (cid:19) a i (cid:18)(cid:18) a (cid:19) + 1 (cid:19) i a (cid:89) j =3 (cid:18) aj (cid:19) i j x i +2 i + ··· + ai a . Again, we require that i + 2 i + · · · + ai a = n −
1, that is, i = n − − (cid:80) aj =2 ( j · i j ). Thus,9 d ( n, n )= (cid:88) i ,...,i a (cid:18) n ( (cid:80) aj =2 ( j − i j +1) , ( n − − (cid:80) aj =2 ( j · i j )) , i , . . ., i a (cid:19) a n − − (cid:80) aj =2 ( j · i j ) (cid:18)(cid:18) a (cid:19) +1 (cid:19) i a (cid:89) j =3 (cid:18) aj (cid:19) i j . Therefore, l d ( n, n ) = a n a (cid:88) i ,...,i a (cid:18) n ( (cid:80) aj =2 ( j − i j +1) , ( n − − (cid:80) aj =2 ( j · i j )) , i , . . . , i a (cid:19) (cid:0)(cid:0) a (cid:1) + 1 (cid:1) i a i a (cid:89) j =3 (cid:0) aj (cid:1) i j a ji j = a n a (cid:88) i ,...,i a (cid:18) n ( (cid:80) aj =2 ( j − i j +1) , ( n − − (cid:80) aj =2 ( j · i j )) , i , . . . , i a (cid:19) (cid:32) (cid:0) a (cid:1) + 1 a (cid:33) i a (cid:89) j =3 (cid:32) (cid:0) aj (cid:1) a j (cid:33) i j . It is well-known that for all values of m and k , such that 1 ≤ k ≤ m , we have that (cid:0) mk (cid:1) ≤ m k k ! . Hence, for j = 3 , . . . , a , we have that ( aj ) a j ≤ j ! . It is also known that e = (cid:80) ∞ j =0 1 j ! . Therefore, l d ( n, n ) ≤ a n a (cid:88) i ,...,i a (cid:18) n ( (cid:80) aj =2 ( j − i j +1) , ( n − − (cid:80) aj =2 ( j · i j )) , i , . . . , i a (cid:19) (cid:18)
12 + 1 a (cid:19) i a (cid:89) j =3 (cid:18) j ! (cid:19) i j < a n (cid:18)
12 + 1 a (cid:19) + a (cid:88) j =3 j ! n = a n a + a (cid:88) j =0 j ! n < ( ae + 1 /a ) n (The relation “ < ” above is again because the summation in its left-hand side contains only a subset ofthe terms whose sum is equal to the exponential term on the right-hand side, and the factor 1 /a in itsleft-hand side.) Consequently, λ d ≤ (2 d − e + d − . (cid:3) This compares well with the conjecture that λ d ∼ (2 d − e [8], and improves upon Eden’s upper boundof (2 d − e (which can actually be shown to be (2 d − . e ; see Section 2). For example, for d = 4, weobtain λ ≤ . λ and λ ∗∗∗∗ Figure 8: A twig with one open cellKlarner and Rivest [19] developed their idea further, noting that it is possible to start with a con-figuration containing a single open cell (as shown in Figure 8), and keep adding twigs and updating theconfiguration, to construct from L increasingly larger sets C , C , C , . . . , where the set C i contains all pos-sible twigs with i black cells (and possibly some white cells) or less than i black cells (and no white cells).In particular, C = L . The process for building all twigs with i black cells is as follows:1. Set C i := ∅ , B := { ¯ s } (the twig shown in Figure 8, and W i ( x, y ) := 0;10. If B = ∅ , then output C i and halt;3. Remove some twig T from B ;4. If T contains no open cells or exactly i dead cells, then add T to C i , set W := W + w ( T ), and goto Step 2;5.
For j = 1 , . . . , do Set T j := T ∗ L j ; If T j meets condition ( ∗ ) below, then add T j to B ; od Goto
Step 2.
Condition ( ∗ ) : None of the cells of L i (except of the black cell) overlap with any of the cells (black orwhite) of T nor with any of the cells of T marked with X . Condition ( ∗ ) guarantees that adding a new twig to the configuration will not cause cells to overlap. Observation 4.1 A ( i ) ≤ | C i | Indeed, this relation is trivially justified by the facts that every polyomino of size i can be built with some sequence of i twigs, and the algorithm above constructs all valid sequences of i twigs.The algorithm above can be viewed as a T = L ∗∗∗∗ T , T , T , T , T , T , T , T , T , T , T , T , T , T , T , T , T , T , T , T T T , T T ∗∗∗∗ Figure 9: The tree modeling the algorithm thatgenerates C i . The root r is a twig with one open cell; its L -context is shown in Fig. 3(a). For i, j = 1 , . . . , T i = L i = r ∗ L i , and T i,j = T i ∗ L j . The twig T is aleaf because it has no open cells.breadth-first-search traversal on an infinite tree(see Figure 9) rooted at the twig ¯ s (Figure 8).All other vertices of the tree are twigs thatcan be “grown” from its root by repeatedly ap-plying the operation ‘ ∗ ’ (defined in Section 2).The tree contains an edge directed from a twig T to another twig T if T = T ∗ L i (for some L i ∈ L ). Hence, each vertex of the tree has at mostfive outgoing edges, and its leaves are all twigswhich have no open cells.The key idea is that, given a polyomino P ,it is possible to encode P with a sequence ofelements of C i , for any i ≥
1, and any such sequence can be converted into a sequence of elements of L . Observation 4.2
The set of converted sequences of elements of C i +1 is a proper subset of the set ofconverted sequences of elements of C i , since the former contains less invalid sequences (those that do notrepresent polyominoes) than the latter. Similarly to L , every twig T ∈ C i is assigned a weight w ( T ) := x a y b (where a denotes the num-ber of cells in T minus 1, and b denotes the number of black cells in T ), and, thus, it can be shownthat every polyomino of size n gives rise to a unique sequence of elements of C i of weight x n y n . Let-ting W i ( x, y ) = (cid:80) T ∈ C i w ( T ), we can plug W i ( x, y ) in the generating function in Equation (2) and ob-tain (cid:80) m,n c i ( m, n ) x m y n = x/ (1 − W i ( x, y )). Again, we are interested in the diagonal term c i ( n, n ) of theseries expansion (cid:80) m,n c i ( m, n ) x m y n . Due to Observation 4.2, the sets C , C , . . . yield a sequence of im-proving (decreasing) upper bounds on λ . Thus, as i increases, the upper bound decreases. Therefore,11he goal is to compute an upper bound on c i ( n, n ). The main computational challenge in this approach isto construct algorithmically the sets C i (in order to compute W i ( x, y )), as | C i | is increasing exponentiallywith i , like A ( i ) does. Klarner and Rivest carried their approach to the limit of the resources they hadavailable at the time, and computed C i up to i = 10. Their computations are summarized in Table 1. Theorem 4.3 λ ≤ . . We implemented the algorithm described in the previous section for constructing the sets C i in a parallelC++ program, using Maple (see Appendix D) to derive an upper bound on c i ( x, y ). Since the size of theset C i is growing exponentially with i , we did not keep it in memory. Instead, we accumulated the weightsof the twigs as in Step 4 in the algorithm. The “ for loop” in Step 5 can be run in parallel since there are nodependencies between the twigs T , . . . , T , as illustrated in Figure 9. We used OpenMP and
OpenMPI to runthe program in parallel on a high-performance computer cluster at the Technion. We used 33 computingnodes, each having 12 cores, for a total of 396 cores. The time for computing C was negligible evenwithout parallelizing the program. Results were systematically improved by increasing i , the number ofdead cells of the twigs. However, as the size of C i increases roughly by a factor of 4 as i is incrementedby 1, constructing C i +1 requires more than four times the computing power needed to construct C i . Theimproved upper bound λ ≤ . C tookroughly seven hours. Our results, alongside Klarner and Rivest’s results, are summarized in Table 1.The two sets of results differ for i = 6 , . . . ,
10. We address these differences in Section A. The weightfunctions W ( x, y ) , . . . , W ( x, y ) are provided in Appendix B.For i ≥
6, the number of twigs ( | C i | ) we found is slightly (but consistently) larger than the numberreported by Klarner and Rivest [19] (see Table 1). As a result, the value of the upper bound we computedfor C is slightly higher than the value they reported. Since they provided neither the computer programwhich generated the sets C i , nor the functions W ( x, y ) , . . . , W ( x, y ) which they obtained, we had nomeans for comparing our results to theirs. We applied the process described in the previous section to construct sets C , C , . . . of larger 3-dimensionaltwigs. Again, we began with a single open cell on the cubical lattice, and constructed all twigs with i deadcells or fewer dead cells and no open cells. We were able to reach twigs with i = 9 dead cells, obtaininga set of about 17 · twigs, by which we proved that λ ≤ . C took 3 hours on thesame cluster mentioned in Section 4.1. Our results (reported in Table 2), and W ( x, y ) = (cid:80) (cid:96) ∈ C w ( (cid:96) ) areprovided in Appendix C. Our code is available at https://github.com/mshalah/polyominoes_polycubes_upperbounds .12 eferences [1] The On-line Encyclopedia of Integer Sequences, published on-line at http://oeis.org .[2] The Open Problems Project, published on-line at http://cs.smith.edu/~jorourke/TOPP .[3] G. Aleksandrowicz and G. Barequet. Counting d -dimensional polycubes and nonrectangular planarpolyominoes. Int. J. of Computational Geometry and Applications , 19:215–229, 2009.[4] G. Aleksandrowicz and G. Barequet. Counting polycubes without the dimensionality curse.
DiscreteMathematics , 309:576–583, 2009.[5] G. Barequet and R. Barequet. An improved upper bound on the growth constant of polyominoes.
Electronic Notes in Discrete Mathematics , 49(Supplement C):167–172, 2015. The 8th European Conf.on Combinatorics, Graph Theory, and Applications.[6] G. Barequet, M. Moffie, A. Rib´o, and G. Rote. Counting polyominoes on twisted cylinders.
INTE-GERS: Electronic J. of Combinatorial Number Theory , 6, 2006.[7] G. Barequet, G. Rote, and M. Shalah. λ >
Comm. of the ACM , 59:88–95, July 2016.[8] R. Barequet, G. Barequet, and G. Rote. Formulae and growth rates of high-dimensional polycubes.
Combinatorica , 30:257–275, 2010.[9] A. Conway. Enumerating 2d percolation series by the finite-lattice method: Theory.
J. of Physics,A: Mathematical and General , 28:335–349, 1995.[10] B. Derrida and H.J. Herrmann. Collapse of branched polymers.
Le Journal de Physique , 44:1365–1376,1983.[11] M. Eden. A two-dimensional growth process. In
Proc. of the 4th Berkeley Symp. on MathematicalStatistics and Probability , volume 4, pages 223–239, Berkeley, CA, 1961.[12] S. Flesia, D.S. Gaunt, C.E. Soteros, and S.G. Whittington. Statistics of collapsing lattice animals.
J.of Physics, A: Mathematical and General , 27:5831–5846, 1994.[13] D.S. Gaunt. The critical dimension for lattice animals.
J. of Physics, A: Mathematical and General ,13:L97–L101, 1980.[14] D.S. Gaunt, M.F. Sykes, and H. Ruskin. Percolation processes in d -dimensions. J. of Physics A:Mathematical and General , 9:1899–1911, 1976.[15] A.J. Guttmann, editor.
Polygons, Polyominoes, and Polycubes , volume 775. Springer Netherlands,2009.[16] I. Jensen. Counting polyominoes: A parallel implementation for cluster computing. In
Proc. of theInt. Conf. on Computational Science, part III , volume 2659, pages 203–212. Springer, June 2003.[17] D.A. Klarner. Some results concerning polyominoes.
Fibonacci Quarterly , 3:9–20, 1965.[18] D.A. Klarner. Cell growth problems.
Canadian J. of Mathematics , 19:851–863, 1967.[19] D.A. Klarner and R.L. Rivest. A procedure for improving the upper bound for the number of n -ominoes. Canadian J. of Mathematics , 25:585–602, 1973.1320] T.C. Lubensky and J. Isaacson. Statistics of lattice animals and dilute branched polymers.
PhysicalReview A , 20:2130–2146, 1979.[21] S. Luther and S. Mertens. Counting lattice animals in high dimensions.
J. of Statistical Mechanics:Theory and Experiment , 9:546–565, 2011.[22] N. Madras. A pattern theorem for lattice clusters.
Annals of Combinatorics , 3:357–384, 1999.[23] N. Madras, C.E. Soteros, S.G. Whittington, J.L. Martin, M.F. Sykes, S. Flesia, and D.S. Gaunt. Thefree energy of a collapsing branched polymer.
J. of Physics, A: Mathematical and General , 23:5327–5350, 1990.[24] J.L. Martin. The impact of large-scale computing on lattice statistics.
J. of Statistical Physics ,58:749–774, 1990.[25] S. Mertens and M.E. Lautenbacher. Counting lattice animals: A parallel attack.
J. of StatisticalPhysics , 66:669–678, 1992.[26] B.M.I. Rands and D.J.A. Welsh. Animals, trees and renewal sequences.
IMA J. of Applied Mathe-mathics , 27:1–17, 1981.[27] R.C. Read. Contributions to the cell growth problem.
Canadian J. of Mathematics , 14:1–20, 1962.[28] D.H. Redelmeier. Counting polyominoes: Yet another attack.
Discrete Mathematics , 36:191–203,1981.[29] M.F. Sykes and M. Glen. Percolation processes in two dimensions: I. low-density series expansions.
J. of Physics, A: Mathematical and General , 9:87–95, 1976.14
Comparison of Results | C i | /σ i Time (Hours) i Ref. [19] Ours Ref. [19] Ours Ours1 5 5 4.828428 4.8284271242 21 21 4.828428 4.8284271243 93 93 4.828428 4.8284271244 409 409 4.796156 4.7961556405 1,803 1,803 4.765534 4.7655329966 7,929
10 2,821,227 d =2.In fact, Klarner and Rivest claim to have used the following version of condition ( ∗ ): Condition ( ∗ ) : • None of the cells of L i (except its root) overlap with any of the cells or forbidden cells of T ; and • None of the forbidden cells of L i overlap with any cells of T .However, although they did not state the following explicitly, they probably did not use the secondpart of condition ( ∗ ) in their program. We motivate this claim by the two arguments provided below,emphasizing that indeed using the second part of this condition as-is is incorrect, as we explain in thesecond argument. Still, our results agree with those of Klarner and Rivest’s only up to i = 5, and we wereunable to trace further the causes for the differences for i ≥ Argument 1
Consider the set C , which contains all twigs that have exactly 4 black cells, or fewer black cells and nowhite cells. Let us enumerate the twigs that have one, two, or three black cells and no open cells. We caneasily observe the following.1. There is only one twig ( L ∈ L , shown in Figure 4) with one dead cell and no open cells.15 ∗∗∗ ∗ ∗∗∗ L ∗ L L ∗ L Figure 10: The only two twigs with two dead cells and no open cells2. There are only two twigs (see Figure 10) with two dead cells and no open cells.3. There are only six twigs with three dead cells and no open cells. The sequences corresponding tothese six twigs are L ∗ L ∗ L , L ∗ L ∗ L , L ∗ L ∗ L , L ∗ L ∗ L , L ∗ L ∗ L , and L ∗ L ∗ L .We now show that there are 400 twigs with 4 dead cells. Each such twig T corresponds to a se-quence ( α, β, γ, δ ) of four elements of L (Figure 4), such that T = α ∗ β ∗ γ ∗ δ . Trivially, in total, thereare | L | = 5 = 625 sequences of four elements of L . However, some of these sequences are invalid,namely, they do not represent valid twigs. For example, the only valid sequence that starts with L isof length 1 since L has no open cells. It is easy to verify that the following sequences are exactly thosethat are invalid since their prefixes correspond to configurations with less than four dead cells and no opencells: S = ( L , β, γ, δ ), S = ( L , L , γ, δ ), S = ( L , L , γ, δ ), S = ( L , L , L , δ ), S = ( L , L , L , δ ), S = ( L , L , L , δ ), S = ( L , L , L , δ ), S = ( L , L , L , δ ), and S = ( L , L , L , δ ).Clearly, we have that | S | = 5 = 125, | S | = | S | = 5 = 25, and | S | = | S | = | S | = | S | = | S | = | S | = 5. There remain exactly twenty invalid sequences. Refer to Figure 4. The twigs L and L cannotbe concatenated to any of the configurations (a–j) (Figures 11 and 12) since this would violate the firstpart of condition ( ∗ ), that is, a cell of L or L would overlap with an occupied cell of the configurationor a cell marked as forbidden. This results in 2 ·
10 = 20 more invalid sequences. Thus, we obtain that thenumber of twigs with four dead cells is | L | − (cid:88) i =1 | S i | − ·
10 = 625 − − · − · −
20 = 400 . Hence, adding items (1–3) above, we obtain that | C | = 400+1+2+6 = 409, which is the number providedfor | C | by Klarner and Rivest as well (see Table 1). On the other hand, restricting the constructionof C further with the second part of condition ( ∗ ) would imply that, for example, concatenating L toconfiguration (d) is invalid, which would decrease the size of C . Therefore, we conclude that Klarner andRivest most probably did not use the second part of condition ( ∗ ). Argument 2
Consider the pentomino P shown in Figure 13. The spanning tree of P corresponds to the sequence L ∗ L ∗ L ∗ L ∗ L (which is equivalent to concatenating L twice to configuration (d) in Figure 11). In terms of elementsof C , this is a sequence of length two: its first element T is the twig corresponding to adding L toconfiguration (d), and its second element is L . By definition, the two twigs T and L belong to C .However, if we were to use the second part of condition ( ∗ ), T would be discarded as an element of C .In such a situation, C would not be a complete set of building blocks for polyominoes, and P would haveno corresponding sequence of weight x y of elements of C . Therefore, the method would have failed toprovide an upper bound on λ if the second part of condition ( ∗ ) had been used, as some polyominoes(such as P ) would be overlooked. 16 (a) L ∗ L ∗ L (b) L ∗ L ∗ L
21 2 1 31 2 L L ∗ L (c) L ∗ L ∗ L (d) = L ∗ L ∗ L
31 2 (e) L ∗ L ∗ L Figure 11: Concatenation of L and L .17 (f) L ∗ L ∗ L
32 1 (g) L ∗ L ∗ L
21 3 2 1 42 1 3 L L ∗ L (h) L ∗ L ∗ L
32 1 (i) L ∗ L ∗ L
42 1 3 (j) L ∗ L ∗ L Figure 12: Concatenation of L and L .Figure 13: A pentomino18 The Functions W i ( x, y ) Here are the weight functions W ( x, y ) , . . . , W ( x, y ): W ( x, y ) = 2 x y + 2 xy + yW ( x, y ) = 4 x y + 8 x y + 6 x y + 2 xy + yW ( x, y ) = 8 x y + 24 x y + 32 x y + 20 x y + 6 x y + 2 xy + yW ( x, y ) = 14 x y +58 x y +113 x y − x y +71 x y +20 x y +6 x y +2 xy + yW ( x, y ) = 24 x y + 124 x y + 317 x y + 494 x y + 483 x y + 261 x y + 71 x y +20 x y + 6 x y + 2 xy + yW ( x, y ) = 36 x y + 240 x y + 772 x y + 1550 x y + 2099 x y + 1895 x y +984 x y + 261 x y + 71 x y + 20 x y + 6 x y + 2 xy + yW ( x, y ) = 64 x y + 468 x y + 1750 x y + 4221 x y + 7177 x y + 8795 x y +7489 x y + 3775 x y + 984 x y + 261 x y + 71 x y + 20 x y + 6 x y + 2 xy + yW ( x, y ) = 88 x y +780 x y +3487 x y +10135 x y +20921 x y +32015 x y +36517 x y + 29738 x y + 14657 x y + 3775 x y + 984 x y + 261 x y + 71 x y +20 x y + 6 x y + 2 xy + yW ( x, y ) = 96 x y + 1092 x ∗ y + 6138 x y + 21679 x y + 53840 x y +99208 x y + 139805 x y + 150644 x y + 118455 x ∗ y + 57394 x y + 14657 x y +3775 x y + 984 x y + 261 x y + 71 x y + 20 x y + 6 x y + 2 xy + yW ( x, y ) = 64 x y + 1288 x y + 9620 x y + 41940 x y + 124236 x y +271585 x y + 455916 x y + 600672 x y + 618318 x y + 472966 x y +226165 x y + 57394 x y + 14657 x y + 3775 x y + 984 x y + 261 x y + 71 x y +20 x y + 6 x y + 2 xy + yW ( x, y ) = 32 x y + 1560 x y + 15116 x y + 77222 x y + 265528 x y +671900 x y + 1315757 x y + 2043184 x y + 2547938 x y + 2528282 x y +1892135 x y +895513 x y +226165 x y +57394 x y +14657 x y +3775 x y +984 x y + 261 x y + 71 x y + 20 x y + 6 x y + 2 xy + yW ( x, y ) = 32 x y + 2448 x y + 24984 x y + 140612 x y + 537148 x y +1535243 x y +3428784 x y +6148920 x y +8968766 x y +10700784 x y +10309921 x y + 7582080 x y + 3559132 x y + 895513 x y + 226165 x y +57394 x y + 14657 x y + 3775 x y + 984 x y + 261 x y + 71 x y + 20 x y + 6 x y +2 xy + yW ( x, y ) = 64 x y + 3376 x y + 39052 x y + 242230 x y + 1029746 x y +3276965 x y + 8225862 x y + 16714930 x y + 27959240 x y +38764654 x y + 44612842 x y + 41963681 x y + 30425691 x y +14187563 x y + 3559132 x y + 895513 x y + 226165 x y + 57394 x y +14657 x y + 3775 x y + 984 x y + 261 x y + 71 x y + 20 x y + 6 x y + 2 xy + y ( x, y ) = 3872 x y + 53860 x y + 388828 x y + 1856137 x y +6593524 x y + 18410515 x y + 41847658 x y + 78846479 x y +124566489 x y + 165600553 x y + 184977014 x y + 170581831 x y +122243680 x y + 56691193 x y + 14187563 x y + 3559132 x y +895513 x y + 226165 x y + 57394 x y + 14657 x y + 3775 x y + 984 x y +261 x y + 71 x y + 20 x y + 6 x y + 2 xy + yW ( x, y ) = 4400 x y + 74688 x y + 598128 x y + 3182157 x y +12522050 x y + 38772694 x y + 97650143 x y + 204840498 x y +362613604 x y + 546205155 x y + 701024617 x y + 763765263 x y +692808602 x y + 491675078 x y + 226975964 x y + 56691193 x y +14187563 x y + 3559132 x y + 895513 x y + 226165 x y + 57394 x y +14657 x y + 3775 x y + 984 x y + 261 x y + 71 x y + 20 x y + 6 x y + 2 xy + yW ( x, y ) = 6912 x y + 106640 x y + 902716 x y + 5194974 x y +22502316 x y + 76836395 x y + 213862804 x y + 495599251 x y +972881530 x y + 1634495588 x y + 2365001740 x y + 2946546711 x y +3143569000 x y + 2812205702 x y + 1979423214 x y + 910239465 x y +226975964 x y + 56691193 x y + 14187563 x y + 3559132 x y +895513 x y + 226165 x y + 57394 x y + 14657 x y + 3775 x y + 984 x y +261 x y + 71 x y + 20 x y + 6 x y + 2 xy + yW ( x, y ) = 7488 x y + 136064 x y + 1260248 x y + 8008422 x y +38155640 x y + 143730425 x y + 440598289 x y + 1124991218 x y +2431711692 x y + 4512423641 x y + 7250819239 x y + 10138105194 x y +12316094597 x y + 12907416312 x y + 11411126315 x y + 7975518589 x y +3655351652 x y + 910239465 x y + 226975964 x y + 56691193 x y +14187563 x y + 3559132 x y + 895513 x y + 226165 x y + 57394 x y +14657 x y + 3775 x y + 984 x y + 261 x y + 71 x y + 20 x y + 6 x y + 2 xy + yW ( x, y ) = 6656 x y + 144624 x y + 1596016 x y + 11499558 x y +61231243 x y + 254612673 x y + 859000063 x y + 2406743605 x y +5707780042 x y + 11616872329 x y + 20533746813 x y + 31753025591 x y +43111962291 x y +51254247441 x y +52900498537 x y +46293847405 x y +32158564611 x y + 14696358415 x y + 3655351652 x y + 910239465 x y +226975964 x y + 56691193 x y + 14187563 x y + 3559132 x y +895513 x y + 226165 x y + 57394 x y + 14657 x y + 3775 x y + 984 x y +261 x y + 71 x y + 20 x y + 6 x y + 2 xy + yW ( x, y ) = 4160 x y + 132864 x y + 1806784 x y + 15379120 x y +92764008 x y + 429323463 x y + 1592168897 x y + 4883567215 x y +12646494275 x y +28110031644 x y +54277687090 x y +91972916089 x y +137593335616 x y + 182153289931 x y + 212563199986 x y +216507646418 x y + 187791339852 x y + 129752205674 x y +59145846645 x y + 14696358415 x y + 3655351652 x y + 910239465 x y +226975964 x y + 56691193 x y + 14187563 x y + 3559132 x y +895513 x y + 226165 x y + 57394 x y + 14657 x y + 3775 x y + 984 x y +261 x y + 71 x y + 20 x y + 6 x y + 2 xy + y | C i | /σ i W ( x, y ) = 2176 x y + 105984 x y + 1912912 x y + 19332440 x y +133729026 x y + 690201840 x y + 2818499583 x y + 9436504653 x y +26597729598 x y + 64253320144 x y + 134933108961 x y +248868733815 x y + 406568926658 x y + 591104290770 x y +765646007641 x y + 879150587033 x y + 885155570880 x y +761751496919 x y + 523818188901 x y + 238239106019 x y +59145846645 x y + 14696358415 x y + 3655351652 x y + 910239465 x y +226975964 x y + 56691193 x y + 14187563 x y + 3559132 x y +895513 x y + 226165 x y + 57394 x y + 14657 x y + 3775 x y + 984 x y +261 x y + 71 x y + 20 x y + 6 x y + 2 xy + yW ( x, y ) = 1152 x y + 96256 x y + 2056288 x y + 24172920 x y +187337816 x y + 1070722580 x y + 4785628001 x y + 17443616434 x y +53301072439 x y + 139441849789 x y + 316994896043 x y +633630643451 x y + 1123186767205 x y + 1777867306642 x y +2521701005541 x y + 3204911295924 x y + 3628247213386 x y +3615763450791 x y + 3089960078272 x y + 2115755445262 x y +960344267887 x y + 238239106019 x y + 59145846645 x y +14696358415 x y + 3655351652 x y + 910239465 x y + 226975964 x y +56691193 x y + 14187563 x y + 3559132 x y + 895513 x y + 226165 x y +57394 x y + 14657 x y + 3775 x y + 984 x y + 261 x y + 71 x y + 20 x y +6 x y + 2 xy + y C Three Dimensions
The following is the weight function for i = 8, from which we computed the upper bound λ ≤ . W ( x, y ) = y + 4 xy + 23 x y + 150 x y + 1051 x y + 7661 x y + 57337 x y +437050 x y + 3376485 x y + 26352274 x y + 108757201 x y + 306714778 x y +674917794 x y + 1222175063 x y + 1866911075 x y + 2434995919 x y +2728046412 x y + 2631637304 x y + 2185885771 x y + 1560584567 x y +954538066 x y + 497886496 x y + 220105634 x y + 81810253 x y +25294655 x y + 6411687 x y + 1305352 x y + 207134 x y + 24462 x y +1992 x y + 97 x y + 2 x y ); 21 Maple Code
Let f(x,y) be a rational two-variable generating function. Klarner and Rivest [19, §
3] showed how toobtain the the radius of convergence of the diagonal of f(x,y) . This requires a change of variable in orderto apply the residue theorem. The diagonal function f D ( z ) = (cid:80) n l ( n, n ) z n could then be written as a sumof residues. The following is our Maple implementation of this method. g:=(x,y)->f(x,y)/x;par := g(s,z/s);d := denom(par);with(Physics):c := Coefficients(d,s,leading);div := Coefficients(c,z,leading);d := d / div;dis := discrim(d,s);sols := fsolve(dis=0,z);maxroot := max(sols);ub := evalf(1/maxroot);g:=(x,y)->f(x,y)/x;par := g(s,z/s);d := denom(par);with(Physics):c := Coefficients(d,s,leading);div := Coefficients(c,z,leading);d := d / div;dis := discrim(d,s);sols := fsolve(dis=0,z);maxroot := max(sols);ub := evalf(1/maxroot);