On the number of spanning trees a planar graph can have
OOn the Number of Spanning Trees a Planar Graph Can Have
Kevin Buchin ∗ Andr´e Schulz † October 23, 2018
Abstract
We prove that any planar graph on n vertices has less than O (5 . n ) spanning trees. Underthe restriction that the planar graph is 3-connected and contains no triangle and no quadrilateralthe number of its spanning trees is less than O (2 . n ). As a consequence of the latter the gridsize needed to realize a 3d polytope with integer coordinates can be bounded by O (147 . n ). Ourobservations imply improved upper bounds for related quantities: the number of cycle-free graphsin a planar graph is bounded by O (6 . n ), the number of plane spanning trees on a set of n points in the plane is bounded by O (158 . n ), and the number of plane cycle-free graphs on a setof n points in the plane is bounded by O (194 . n ). The number of spanning trees of a connected graph, also considered as the complexity of the graph,is an important graph invariant. Its importance largely stems from Kirchhoff’s seminal matrix treetheorem: The number of spanning trees equals the absolute value of any cofactor of the Laplacianmatrix of the graph. Furthermore, this number is the order of the Jacobian group of the graph,also known as critical group, or as sandpile model in theoretical physics [2, 3]. This group can berepresented as a chip firing game on the graph; in this context the number of spanning trees counts thenumber of the stable and recurrent configurations [4]. The number of spanning trees is also a measurefor the global reliability of a network. Upper bounds on the number of combinatorial structuresare often helpful to determine the (exponential) running time for exact algorithms of NP-completeproblems.Our motivation to study the number of spanning trees of planar graphs comes from an application ofKirchhoff’s matrix tree theorem. Instead of computing the number of spanning trees with Kirchhoff’stheorem one can use bounds on the number of spanning trees to obtain bounds for the cofactors ofthe Laplacian matrix. These cofactors appear in various settings. For example, Tutte’s famous springembedding is computed by solving a linear system that is based on the Laplacian matrix [20, 21]. As aconsequence of Cramer’s rule the cofactor of the Laplacian matrix is the denominator of all coordinatesin the embedding. Therefore, by multiplying with the number of spanning trees, we can scale to aninteger embedding. This idea finds applications in the grid embedding of 3d polytopes [14, 15]. Beforewe describe this application in more detail, we introduce some notation.Let G n be the set of all planar graphs with n vertices. For a graph G ∈ G n we denote the numberof its (labeled) spanning trees with t ( G ). For every G n let T ( n ) be the maximal number of spanningtrees a graph in this class can have, that is T ( n ) = max G ∈G n { t ( G ) } . We study the growth rate of thefunction T ( n ). Since it seems intractable to obtain an exact formula for T ( n ), we aim at finding avalue α such that T ( n ) ≤ α n for n large enough. Notice that the graph that realizes the maximum ∗ Department of Mathematics and Computer Science, Technical University of Eindhoven, [email protected] , sup-ported by the Netherlands Organisation for Scientific Research (NWO) under project no. 639.022.707 † Institut f¨ur Mathematsche Logik und Grundlagenforschung, Universit¨at M¨unster, [email protected] ,supported by the German Research Foundation (DFG) under grant SCHU 2458/1-1. a r X i v : . [ m a t h . C O ] S e p ( n ) has to be a triangulation. Hence, it suffices to look at the subclass of all planar triangulationswith n vertices instead of considering all graphs in G n .Furthermore, we are interested in the maximal number of spanning trees for planar graphs withspecial facial structure. In particular, we want to bound T ( n ) = max G ∈G n { t ( G ) | G is 3-connected and contains no triangle } ,T ( n ) = max G ∈G n { t ( G ) | G is 3-connected and contains no triangle or quadrilateral } . Notice that if a graph is planar and 3-connected its facial structure is uniquely determined [22].Let α n be an upper bound on T ( n ) and α n be an upper bound on T ( n ). We refer to the problem ofbounding α as the general problem , and to the problems of bounding α and α as restricted problems .For embedding 3d polytopes the necessary grid size (ignoring polynomial factors) can be expressedin terms of α , α and α . In this scenario we are dealing with 3-connected planar graphs since G isthe graph of a 3d polytope [18]. If the graph G contains a triangle the grid size is in O ( α n ), if G contains a quadrilateral the grid size is in O ( α n ). Due to Euler’s formula every (3-connected) planargraph contains a pentagon – in this case the grid size in O ( α n ). As a consequence better bounds on α , α and α directly imply a better bound on the grid size needed to realize a polytope with integercoordinates.Richter-Gebert used a bound on T ( n ) to bound the size of the grid embedding of a 3d polytope [15].By applying Hadamard’s inequality he showed that the cofactors of the Laplacian matrix of a planargraph are less than 6 . n . This bound can by easily improved to 6 n by noticing that the Laplacianmatrix is positive semi-definite, which allows the application of the stronger version of Hadamard’sinequality [10, page 477]. Both bounds do not rely on the planarity of G , but on the fact that thesum of the vertex degrees of G is below 6 n . Rib´o and Rote improved Richter-Gebert’s analysis andshowed that 5 . n ≤ T ( n ) ≤ . ¯3 n [13, 16]. The lower bound is realized on a wrapped up triangulargrid and was obtained by the transfer-matrix method. For the upper bound they count the numberof the spanning trees on the dual graph. This number coincides with the number of spanning treesin the original planar graph. Since the number of spanning trees is maximized by a triangulation,the dual graph is 3-regular. Applying a result of McKay [12], which bounds the number of spanningtrees on k -regular graphs, yields the bound of 5 . ¯3 n . Interestingly, this bound is not directly related tothe planarity of the graph. Therefore, Rib´o and Rote tried to improve the bound using the outgoingedge approach . The approach involves choosing a partial orientation of the graph and estimating theprobability of a cycle. To handle dependencies between cycles, Rib´o and Rote tried (1) selectingan independent subset of cycles, and (2) using Suen’s inequality [19]. However, they could onlyprove an upper bound of 5 . n for T ( n ), and they showed that their approach is not suitable tobreak the bound of 5 . ¯3 n . For the restricted problems they obtained the bounds T ( n ) ≤ . n and T ( n ) ≤ . n .Bounds for the number of spanning trees of general graphs are often expressed in terms of thevertex degree sequence of the graph. However, the main difficulty in obtaining good values for α liesin the fact that we do not know the degree sequence of the graph in advance. Therefore, these boundsare not directly applicable. If we would assume that almost every vertex degree is 6, which is truefor the best known lower bound example presented in [13], the bound of Grone and Merris [9] givesan upper bound for T ( n ) of ( n/ ( n − n − n − /n , whose asymptotic growth equals the growth rateobtained by Hadamard’s inequality. To apply the more involved bound of Lyons [11] one has to knowthe probabilities that a simple random walk returns to its start vertex after k steps (for every startvertex). Even under the assumption that every vertex has degree 6, it is difficult to express the returnprobabilities in terms of k to obtain an improvement over 6 n .Spanning trees are not the only interesting substructures that can be counted in planar graphs.Aichholzer et al. [1] list the known upper bounds for other subgraphs contained in a triangulation:Hamiltonian cycles, cycles, perfect matchings, connected graphs and so on. The bounds for Hamilto-nian cycles and cycles have been recently improved [5].2 verview. In Section 2 we bound the number of spanning trees by the number of outdegree-onegraphs , i.e., the number of directed graphs obtained by picking for each vertex one outgoing edge.Cycle-free outdegree-one graphs correspond to spanning trees. Therefore we next bound the proba-bility that a random outdegree-one graph has a cycle. For this we analyze the dependencies betweencycles. In contrast to Rib´o and Rote who showed how to avoid the dependencies in the analysis, weinstead make use of the dependencies. Since our method might also find application in analyzingsimilar dependency structures, we phrase our probabilistic lemma in a more general setting in Sec-tion 2.1. More specifically, we develop a framework to analyze a series of events for which dependentevents are mutually exclusive. In Section 2.2 we apply this framework to bound the probability of theoccurrence of a cycle. From this we derive in Sections 2.3 and 2.4 a linear program whose objectivefunction bounds (the logarithm of) the number of spanning trees. This linear program has infinitelymany variables, and we instead consider the dual program with infinitely many constraints and presenta solution in Section 3.
Results.
We improve the upper bounds for the number of spanning trees of planar graphs by showing: α ≤ . α ≤ . α ≤ . O (147 . n ) instead of O (188 n ). For gridembeddings of simplicial 3d polytopes our results yield a small improvement to O (27 . n ) over theold bound of O (28 . ¯4 n ). Our improved bound for α implies also an improved bound for the number ofedge-unfolding cut-trees of a polyhedron of n vertices [7].The maximal number of cycle-free graphs in a triangulation is another interesting quantity. Aich-holzer et al. [1] obtained an upper bound of 6 . n for this number. We show in this paper that theimproved bound for T ( n ) yields an improved upper bound of O (6 . n ).Multiplying α with the number of maximal number of triangulations a point set can have, givesan upper bound for the number of plane spanning trees on a point set. Using 30 n as an upper boundfor the number of triangulations of a point set (obtained by Sharir and Sheffer [17]) yields an upperbound of O (158 . n ) for the number of plane spanning trees on a point set. By the same constructionthe number of plane cycle-free graphs can be improved to O (194 . n ). To our knowledge both boundsare the currently best known bounds. Our results are obtained by the outgoing edge approach and its refinements. For this we considereach edge vw of G as a pair of directed arcs v → w and w → v . Let v be a designated vertex of G , and let v , . . . v n be the remaining vertices. A directed graph is called outdegree-one , if v hasno outgoing edge, and every remaining vertex is incident to exactly one outgoing edge. A spanningtree can be oriented as outdegree-one graphs by directing its edges towards v . This interpretationassociates every spanning tree with exactly one outdegree-one graph. As a consequence the numberof outdegree-one graphs contained in G exceeds t ( G ).We can obtain all outdegree-one graphs by selecting for every vertex (except v ) an edge as itsoutgoing edge. Let S be such a selection. We denote with d i the degree of the vertex v i . For everyvertex v i we have d i choices how to select its outgoing edge. This gives us in total (cid:81) ni =2 d i differentoutdegree-one graphs in G . Due to Euler’s formula the average vertex degree is less than 6, and hencewe have less than 6 n outdegree-one graphs of G by the geometric-arithmetic mean inequality. Thus,the outgoing edge approach gives the same bound as the strong Hadamard inequality by a very simpleargument.Outdegree-one graphs without cycles are exactly the (oriented) spanning trees of G . To improvethe bound of 6 n we try to remove all graphs with cycles from our counting scheme. Let us nowconsider a random selection S that picks the outgoing edge for every vertex uniformly at random.This implies that also the selected outdegree-one graph will be picked uniformly at random. Let P nc be the probability that the random graph selected by S contains no cycle. The exact number of3panning trees for any (not necessary planar) graph G is given by t ( G ) = (cid:32) n (cid:89) i =2 d i (cid:33) P nc . Assume that the t cycles contained in G are enumerated in some order. Notice that in an outdegree-one graph every cycle has to be directed. We consider the two orientations of a cycle with more thantwo vertices as one cycle. Let C i be the event that the i -th cycle occurs and let C ci be the event thatthe i -th cycle does not occur in a random outdegree-one graph. For events C i , C j we denote thatthey are dependent by C i ↔ C j and that they are independent by C i (cid:54)↔ C j . We say that cycles aredependent (independent) if the corresponding events are dependent (independent).Two cycles are independent if and only if they do not share a vertex. In turn, cycles that share avertex are not only dependent but mutually exclusive , i.e., they cannot occur both in an outdegree-one graph, since this would result in a vertex with two outgoing edges. This gives us the followingtwo properties of the events C i . We say events E , . . . , E l have mutually exclusive dependencies if E i ↔ E j implies Pr[ E i ∩ E j ] = 0. We say that events E , . . . , E l have union-closed independencies if E i (cid:54)↔ E i , . . . , E i (cid:54)↔ E i k implies E i (cid:54)↔ ( E i ∪ . . . ∪ E i k ). It is easy to see that the events C i havemutually exclusive dependencies and union-closed independencies. Lemma 1.
If events E , . . . , E l have mutually exclusive dependencies and union-closed independenciesthen for < k < l Pr[ l (cid:92) j = k E cj | k − (cid:92) i =1 E ci ] ≤ l (cid:89) j = k − Pr[ E j ] (cid:81) ≤ i Lemma 2. If events E , . . . , E l have mutually exclusive dependencies and union-closed independenciesthen Pr[ E cl | l − (cid:92) i =1 E ci ] ≤ − Pr[ E l ] / (cid:89) ≤ i We first prove Pr[ E cl | l − (cid:92) i =1 E ci ] = 1 − Pr[ E l ] / Pr[ (cid:92) ≤ i P r [ E l ∩ (cid:92) i =1 ,...,l − E i (cid:54)↔ E l E ci ] = Pr[ E l ] Pr[ (cid:92) i =1 ,...,l − E i (cid:54)↔ E l E ci ] , E cl | l − (cid:92) i =1 E ci ] ≤ − Pr[ E l ] = Pr[ E cl ] (2)It remains to prove that Pr[ (cid:92) ≤ i Proof of Lemma 1. After rewriting Pr[ (cid:84) lj = k E cj | (cid:84) k − i =1 E ci ] = Pr[ E l | (cid:84) l − i =1 E ci ] Pr[ (cid:84) l − j = k E cj | (cid:84) k − i =1 E ci ]we obtain by Lemma 2Pr[ l (cid:92) j = k E cj | k − (cid:92) i =1 E ci ] = l (cid:89) j = k − Pr[ E j ] (cid:81) ≤ i 2, i.e., the geometric mean of two positive numbers isat most the arithmetic mean, we get,(1 − a/b )(1 − a/c ) = 1 + a bc − a/b − a/c ≤ a bc − a/ √ bc = (1 − a/ √ bc ) . (cid:50) Before estimating the probability P nc in terms of the vertex degrees, we introduce some notation. Acycle of length k is called a k - cycle . The k - extension of a cycle is the union of a cycle with all itsdependent k -cycles. We say that the degree of a cycle is the ordered sequence of the degrees of itsvertices. Let C abc be a 3-cycle spanned by v a , v b , v c , and let the degree of C abc be ( d a , d b , d c ) = ( i, j, k ).We denote the degrees of the vertices adjacent to v a that are not part of C abc by the sequence A . In5he same fashion we denote the degrees of the vertices around v b by B and the around v c by C . Theordering in A, B, C respects the counter clockwise ordering of the vertices around v a , v b , v c in a planarembedding. Since G is planar and 3-connected the ordering of the sequences is uniquely determinedup to a global reflection [22]. Notice that a vertex might occur in two different sequences. We call thetuple ( i, j, k, A, B, C ), the signature of the 2-extension of C abc . Similarly, we define the signature of a2-extension of a 2-cycle C ab by the tuple ( i, j, A, B ). The naming convention is depicted in Figure 1. i = 5 j = 6 a = b a a a b b b b i = 5 j = 6 a = c a a = b b b k = 7 b = c c c c (5 , , ( a , . . . , a ) , ( b , . . . , b )) (5 , , , ( a , . . . , a ) , ( b , . . . , b ) , ( c , . . . , c ))Figure 1: Convention for naming the signatures of 2-extensions of 2-cycles (on the left) and 3-cycles(on the right).We can express P nc as Pr[ (cid:84) tj =1 C ci ]. Our goal is to apply Lemma 1 to bound this probability. Asa first step we discuss how to express the number of spanning trees t ( G ) when the distribution ofsignatures of G is known. Instead of t ( G ) we bound its logarithm, i.e.,log t ( G ) = n (cid:88) i =2 log d i + log Pr[ t (cid:92) j =1 C ci ] . (4)The probability that an event C i occurs can be expressed in terms of vertex degrees. In particular,Pr[ C i ] = 1 / ( d a d b ) the i -th cycle is a 2-cycle on the vertices v a v b ,Pr[ C j ] = 2 / (cid:81) a : v a ∈ Z d a the j -th cycle is at least a 3-cycle on the set Z .The way we proceed depends on whether we are addressing the general problem (i.e., we want tobound α ) or one of the restricted problems (i.e., we want to bound α or α ). In the latter case welimit our analysis to 2-cycles only. In the general case we consider all cycles of length 2 and cycles oflength 3 that are triangles in G .We start with the general problem. Assume that all cycles C are enumerated such that the first t cycles are the triangles in G , and the last t cycles are the 2-cycles of G . In total we consider t := t + t cycles. All remaining cycles are ignored. Discarding the larger cycles gives an upperbound on P nc and is therefore applicable. We apply Lemma 1 with k = 1 and l = t to boundPr[ (cid:84) t j =1 C cj ], which is the probability that no 3-cycle occurs. To take also the 2-cycles into accountwe consider the probability that no 2-cycle occurs under the condition that no triangle occurred as 3-cycle, which is Pr[ (cid:84) tj = t +1 C cj | (cid:84) t j =1 C cj ]. Notice that this probability has the form stated in Lemma 16or l = t and k = t + 1. Thus, we can bound log Pr[ (cid:84) tj =1 C cj ] from above by t (cid:88) j =1 log (cid:32) − Pr[ C j ] (cid:115) (cid:81) ≤ i ≤ t : Ci ↔ Cj Pr[ C ci ] (cid:33) + t (cid:88) j = t +1 log (cid:32) − Pr[ C j ] (cid:81) ≤ i 1) + (cid:88) b r ∈ B log b r b r ( j − (cid:17) ,D = µ (cid:88) i,j,k,A,B,C f ijk ( A, B, C ) (cid:16) log ii + log jj + log kk (cid:17) ,D = µ (cid:88) i,j,k,A,B,C f ijk ( A, B, C ) (cid:16) (cid:88) a r ∈ A log a r a r ( i − 1) + (cid:88) b r ∈ B log b r b r ( j − 1) + (cid:88) c r ∈ C log c r c r ( k − (cid:17) . (8)We can now express log P nc as sum over all signatures. This sum can be subdivided into one partthat contains the f ij variables and one part that contains the f ijk variables. The part that considersthe 2-cycles is given by D D (cid:88) i,j,A,B f ij ( A, B ) log P ij ( A, B ) , (G2)and the part that considers the 3-cycles is given by D D (cid:88) i,j,k,A,B,C f ijk ( A, B, C ) log P ijk ( A, B, C ) . (G3)For the restricted problems we only have 2-cycles. Using bound (7) and setting µ = µ = 0, we canbound the number of spanning trees by D D (cid:88) i,j,A,B f ij ( A, B ) log ˆ P ij ( A, B ) . (R2) In this section we construct necessary conditions for the f variables that have to hold for planargraphs with n vertices. We reuse the ideas from the charging scheme in Section 2.3. Instead of givingevery vertex log d i to distribute, we assign to every vertex an amount of 1. This gives us a total of n units. Following the construction of the equations of (8) we obtain (cid:88) i,j,A,B f ij ( A, B ) (cid:16) i + 1 j (cid:17) = n, (A2) (cid:88) i,j,k,A,B,C f ijk ( A, B, C ) (cid:16) i + 1 j + 1 k (cid:17) = n, (A3) (cid:88) i,j,A,B f ij ( A, B ) (cid:16) (cid:88) a r ∈ A a r ( i − 1) + (cid:88) b r ∈ B b r ( j − (cid:17) = n, (B2) (cid:88) i,j,k,A,B,C f ijk ( A, B, C ) (cid:16) (cid:88) a r ∈ A a r ( i − 1) + (cid:88) b r ∈ B b r ( j − 1) + (cid:88) c r ∈ C c r ( k − (cid:17) = n. (B3)8nother set of constraints is given by the number of 2-cycles and 3-cycles a planar graph can have,which is related to the number of edges and faces of G . Every 2-cycle is counted by some f ij variable,hence the sum over all f ij equals the number of edges, which we name m . Since we consider only3-cycles of triangles, the sum of the f ijk variables equals the number of triangles, which for a planargraph is at most 2 n . We obtain (cid:88) i,j,A,B f ij ( A, B ) ≤ m, (C2) (cid:88) i,j,k,A,B,C f ijk ( A, B, C ) ≤ n. (C3)For the general case we have m ≤ n , for the restricted case where quadrilaterals are allowed we have m ≤ n , and for the remaining case we have m ≤ n/ 3. All these bounds can be obtained by a simpledouble counting argument using Euler’s formula. As trivial condition we restrict the f variables tobe non-negative.The constraints so far might be fulfilled by a signature that does not come from a planar graph.In particular, the degree sequence of the graph induced by the cycles might be unrelated to the degreesequence of the graph induced by the 2-extensions. To overcome this ambiguity we consider thenumber of edges with vertex degree i at one vertex and degree j at the other. Let this number be n ij . Clearly, we have that n ij = (cid:80) A,B f ij ( A, B ), where the sum ranges about all feasible sequences A, B . On the other hand, n ij can be counted by its appearances in the 2-extensions of 2-cycles. Everyedge with degree ( i, j ) will show up in ( i − 1) + ( j − 1) 2-extensions. Let χ i ( X ) denote the number ofappearances of i in the sequence X . We can express (( i − 1) + ( j − n ij as (cid:80) k,A,B f ik ( A, B ) χ j ( A ) + (cid:80) k,A,B f kj ( A, B ) χ i ( B ) . This leads us to a new constraint of the form( i + j − (cid:88) A,B f ij ( A, B ) = (cid:88) k,A,B f ik ( A, B ) χ j ( A ) + (cid:88) k,A,B f kj ( A, B ) χ i ( B ) . (E ij )In the case where the smallest face of the graph is a pentagon, we were able to improve the solutionof the linear program by adding the constraint (E33). Other constraints of the form (E ij ) gave noimprovement. For the general case and a fixed n we can solve the problem of maximizing t ( G ) while fulfilling theconstraints of Section 2.4 by solving two linear programs. The first problem, which is derived fromthe 2-cycles, is given by the objective function (G2), and the constraints (A2-C2). The problemassociated with the 3-cycles consists of the objective function (G3), and the constraints (A3-C3). Ourgoal, however, is not to solve these problems for a fixed n , but to study the solution in terms of n .To get an expression in terms of n , we normalize the f variables. Instead of letting f count absolutenumbers, we consider f as ratio between these absolute numbers and n . This allows us to cancel n inevery constraint and objective function.By removing n we lost a natural bound on the largest vertex degree, which is n − 1. Moreover, wecannot bound the number of signatures and have to deal with infinitely many variables. To overcomethis difficulty we look at the dual program. The dual has up to four variables, which we name λ , λ , λ ,and λ . Since we cannot bound the number of variables in the primal, we have infinitely many dualconstraints. By the weak linear programming duality it suffices to find a point in the feasible area ofthe dual, because every such point is an upper bound for the primal solution. Appendix A lists allrelevant dual programs. Let Z be the LP solution for (G2) and Z be the LP solution for (G3). Thecombined bound for α can be computed by adding exp( Z ) and exp( Z ) . 9P instance µ values solution α general problem (2-cycles) µ = 0 . , µ = 0 . λ = 0 . . → max, s.t. (A2-C2), m = 3 λ = 0 . µ = 0 . , µ = 0 . λ = 0 . → max, s.t. (A3-C3) λ = 0 . λ = 0 . µ = 0 . , µ = 0 . λ = 0 . . → max, s.t. (A2-C2), m = 2restricted problem (no 3,4-gons) µ = 0 . , µ = 0 . λ = − . . → max, s.t. (A2-C2,E33) λ = 0 . m = 5 / λ = 0 . λ values are zero.We use a two step approach to find the solution of the dual programs. First we solve the dualprogram with a finite number of the constraints. We expect that the maximum number of spanningtrees will be realized on a graph with evenly distributed vertex degrees. Therefore, we expect in thegeneral case that the variables f ij , with i, j far away from 6 will be zero, and hence the correspondingdual constraints will not hold with equality. For the restricted problems we expect values for i, j around 3 and 4. We use these assumptions to construct (finite) linear programs that will most likelycontain the constraints that determine the dual solution. We prove later that the other constraintsare also fulfilled. The candidates for the dual solution that were obtained by the finite programs arelisted in Table 3. The table also lists our choice of µ values. We picked these particular numbersbecause they have been experimentally proven to be useful in the later analysis.The verifications of the LP solutions is tedious. We redirect the interested reader for a com-plete analysis to the Mathematica scripts, downloadable under . For the 2-cycle part of the general problem we present the generalidea behind the analysis in this place. Remarks for the analysis of the other programs can be foundin Appendix B. Lemma 3. For µ = 0 . , µ = 0 . and λ = 0 , λ = 0 . , λ = 0 . , and m = 3 all dualconstraints (A2-C2) for feasible signatures are fulfilled.Proof outline. The complete proof including technical details and algorithms for brute force testingof some cases can be found in the Mathematica scripts.We have to show that the left-hand side of (10) is negative. Let us ignore the log-term for now– it is negative, and therefore it suffices to show that (10) without the log-term is negative. Let a be some vertex degree stored in the sequences A or B . We notice that the “effect” of a in (10) is µ log( a ) / ( a ( i − − λ / ( a ( i − a = 6, and for a ≤ a ≥ a = 6 gives us µ (cid:32)(cid:88) a ∈ A log aa ( i − 1) + (cid:88) b ∈ B log bb ( j − (cid:33) − λ (cid:32)(cid:88) a ∈ A a ( i − 1) + (cid:88) b ∈ B b ( j − (cid:33) ≤ µ (log 6) / − λ / . (9)We know that λ = 0, and that (log j ) /j is maximized for integers at j = 3. Hence, if the expression µ ((log i ) /i + (log 3) / 3) + 2 µ (log 6) / − λ / − λ is negative, the dual constraint is fulfilled. Byconsidering the partial derivative in i , we see that this holds for all i ≥ 31 (and a symmetric argument10mplies the same for j ≥ ij we check the dual constraint by hand using againthe lower bound 6 for the entries of A and B . By this we can eliminate more cases and are left with83 tuples (see Appendix B).We will now consider the log-term of (10) again. Therefore, we have to obtain new upper andlower bounds for the entries of A and B . Let a be a vertex degree that is stored in A or B . It canbe observed that the log-term in terms of a is increasing. Since the function without log-term wasincreasing between 3 and 6 the function with log-term is increasing as well in this range and hencethe maximum has to be attained on a value larger than 6.To obtain an upper bound on the entries of A and B we argue as follows: We first assume that allentries of A and B equal 6, except for some a x ∈ A . We look at the derivative of the constraint (10)in a x and observe that the maximum is realized at some value a (cid:48) x . We study now what happens if wechange one of the values, say a y , which we assumed to be 6. Let g ( a x , a y ) be the dual constraint in a y and a x . It can be shown that ∂ g ( a x , a y ) /∂a x ∂a y is negative. Hence, for a y > < ∂g ( a x , ∂a x − ∂g ( a x , a y ) ∂a x = ( ∂g ( a x , − g ( a x , a y )) ∂a x . In other words, the differences between g ( a x , 6) and g ( a x , a y ) are increasing in a x . Let a (cid:48) y befixed and d = g ( a (cid:48) x , − g ( a (cid:48) x , a (cid:48) y ). Clearly the function h ( a x , a (cid:48) y ) := g ( a x , a (cid:48) y ) + d attains its extremaon the same positions as g ( a x , a (cid:48) y ) and its differences to g ( a x , 6) are also increasing in a x . Since h ( a (cid:48) x , a (cid:48) y ) = g ( a (cid:48) x , h ( a x , a (cid:48) y ) is always below g ( a x , 6) for a x > a (cid:48) x . Therefore, nomaximum can be attained on h ( a x , a (cid:48) y ) for a x > a (cid:48) x and hence the smallest upper bound is achievedfor a y = 6. Hence a (cid:48) x is a valid upper bound for a x . The computed bounds for every remaining pair ij can be found in Appendix B.As last step we check all possible signatures that are left to test. Notice that there are still manycases open. We observe that the ordering of the degrees in A and B does not matter, except for P ( i, A ) P ( j, B ) (cid:16) − ija (cid:17)(cid:16) − ijb (cid:17) . But this expression can be bounded by using the maximumin A for all a x , and the maximum in B for all b x . With this estimation we can try all sequenceswith sorted sequences A and B . This eliminates most of the cases. There are three pairs left to test,namely (6 , , , Theorem 1. Let G be a planar graph with n vertices. The number of spanning trees of G is at most O (5 . n ) . If G is 3-connected and contains no triangle, then the number of its spanning trees isbounded by O (3 . n ) . If G is 3-connected and contains no triangle and no quadrilateral, then thenumber of its spanning trees is bounded by O (2 . n ) . The results of Theorem 1 improve several related upper bounds. Using the observations by Rib´o etal. [14] we obtain the following bounds for grid embeddings of 3d polytopes. Corollary 1. Let G be the graph of a -polytope P with n vertices. P admits a realization ascombinatorial equivalent polytope with integer coordinates and1. no coordinate larger than O (147 . n ) ,2. no coordinate larger than O (39 . n ) , if G contains a quadrilateral,3. no coordinate larger than O (28 . n ) , if G contains a triangle. F ( n ) of cycle-free graphs in a planar graph with n vertices is bounded by the numberof selections of at most n − F ( n ) ≤ (cid:80) n − k =0 (cid:0) n − k (cid:1) . For 0 ≤ q ≤ / (cid:80) (cid:98) qm (cid:99) i =0 (cid:0) mqm (cid:1) < H ( q ) m , where H ( q ) := − log( q ) q − log(1 − q ) (1 − q ) is the binary entropy(see for example [8, page 427]). This shows that, F ( n ) < . n by setting m = 3 n and q = 1 / F ( n, k ) of forests in G n with k edges. On one hand, the above argument yields anupper bound of F ( n, k ) ≤ f ( k ) := (cid:0) n − k (cid:1) . On the other hand, every forest with k edges canbe constructed by selecting k edges from a spanning tree of G n . This gives as alternative bound F ( n, k ) ≤ f ( k ) =: (cid:0) n − k (cid:1) T ( n ). Now, the number of cycle-free graphs is bounded by F ( n ) = n − (cid:88) k =0 F ( n, k ) ≤ n max ≤ k The number of cycle-free graphs in a planar graph with n vertices is bounded by n · . n . The number of plane spanning trees on n planar points is in O (158 . n ) , the number ofcycle-free graphs in O (194 . n ) . We expect better bounds for the number of cycle-free graphs in a planar graph from a more directapplication of the outgoing edge approach. By adding a new vertex that is linked to a subset of theother vertices, every cycle-free graph can be turned into a spanning tree of the augmented graph.Without excluding any cycles we get a bound of 7 n . Under the assumption that almost every vertexhas degree 6, the refined outgoing edge method would yield a bound of 6 . n when excluding 2-cycles and of 6 . P nc bytaking also larger cycles into account. We do not expect to win anything by considering 3-cycles thatare not triangles, because in the lower bound example (the wrapped up triangular grid) all 3-cycles aretriangles. The analysis using larger cycles is more complicated and needs an extensive case distinction.Furthermore, we expect that there would be too many cases left for the brute force check. From ourperspective, the following refinement seems tractable: Beside the 2-cycles, and 3-cycles on triangles,we also analyze 4-cycles that belong to two triangles sharing an edge (the diagonal). The 4-cycles canbe analyzed by extending the events C i for the 2-cycles to the following event: the i -th 2-cycle occurs,or the corresponding 4-cycle, whose diagonal is associated with the i -th cycle occurs. Assuming thatthe solution of the corresponding linear program is given by having almost every vertex degree 6, thiswould lead to α = 5 . C i to avoid the influence of the ordering.An elaborated enumeration scheme of the events C i might give better bounds. Furthermore, we couldconsider “extension of extensions” to analyze larger locally connected pieces of the graph at once.This results in a powerful but very complicated incarnation of the outgoing edge approach.12he reader might think, that additional constraints in the linear programs might improve theoutcome of our analysis. However, we expect that the solutions of the dual programs give the correctdistribution of signatures. In particular, the solutions the dual programs match the candidates for thelower bound examples that were presented in [13]. Acknowledgements: We thank G¨unter Rote for suggesting this problem to us and for many inspiringand fruitful discussions on this subject. References [1] O. Aichholzer, T. Hackl, C. Huemer, F. Hurtado, H. Krasser, and B. Vogtenhuber. On thenumber of plane geometric graphs. Graph. Comb. , 23(1):67–84, 2007.[2] R. Bacher, P. de la Harpe, and T. Nagnibeda. The lattice of integral flows and the lattice ofintegral cuts on a finite graph. Bull. Soc. Math. de France , 125:167–198, 1997.[3] N. Biggs. Algebraic potential theory on graphs. Bull. London Math. Soc. , 29:641–682, 1997.[4] N. Biggs. Chip-firing and the critical group of a graph. J. Algebraic Combin. , 9:25–46, 1999.[5] K. Buchin, C. Knauer, K. Kriegel, A. Schulz, and R. Seidel. On the number of cycles in planargraphs. In G. Lin, editor, COCOON , volume 4598 of Lecture Notes in Computer Science , pages97–107. Springer, 2007.[6] T. H. Cormen, C. E. Leiserson, R. L. Rivest, and C. Stein. Introduction to Algorithms . MITPress, second edition, 2001.[7] E. D. Demaine, M. L. Demaine, A. Lubiw, and J. O’Rourke. Enumerating foldings and unfoldingsbetween polygons and polytopes. Graphs and Combinatorics , 18(1):93–104, 2002.[8] J. Flum and M. Grohe. Parameterized Complexity Theory . Springer, 2006.[9] R. Grone and R. Merris. A bound for the complexity of a simple graph. Discrete Mathematics ,69(1):97–99, 1988.[10] R. A. Horn and C. R. Johnson. Matrix Analysis . Cambridge University Press, 1985.[11] R. Lyons. Asymptotic enumeration of spanning trees. Combinatorics, Probability & Computing ,14(4):491–522, 2005.[12] B. D. McKay. Spanning trees in regular graphs. Euro. J. Combinatorics , 4:149–160, 1983.[13] A. Rib´o Mor. Realization and Counting Problems for Planar Structures: Trees and Linkages,Polytopes and Polyominoes . PhD thesis, Freie Universit¨at Berlin, 2006.[14] A. Rib´o Mor, G. Rote, and A. Schulz. Embedding 3-polytopes on a small grid. In J. Erickson,editor, Symposium on Computational Geometry , pages 112–118. ACM, 2007.[15] J. Richter-Gebert. Realization Spaces of Polytopes , volume 1643 of Lecture Notes in Mathematics .Springer, 1996.[16] G. Rote. The number of spanning trees in a planar graph. In Oberwolfach Reports , 2. EuropeanMathematical Society, Publishing House, 2005.[17] M. Sharir and A. Sheffer. Counting triangulations of planar point sets. Manuscript , 2010.1318] E. Steinitz. Encyclop¨adie der mathematischen Wissenschaften. In Polyeder und Raumteilungen ,pages 1–139. 1922.[19] S. Suen. A correlation inequality and a poisson limit theorem for nonoverlapping balanced sub-graphs of a random graph. Random Struct. Algorithms , 1(2):231–242, 1990.[20] W. T. Tutte. Convex representations of graphs. Proceedings London Mathematical Society ,10(38):304–320, 1960.[21] W. T. Tutte. How to draw a graph. Proceedings London Mathematical Society , 13(52):743–768,1963.[22] H. Whitney. A set of topological invariants for graphs. Amer. J. Math. , 55:235–321, 1933.14 ppendix A: Dual programs General Problem ( -cycle part): Minimize λ + λ + 3 λ , such that, λ ≥ 0, and for all signatures ( i, j, A, B ):log P ij ( A, B ) + µ (cid:16) log ii + log jj (cid:17) + µ (cid:16) (cid:88) a r ∈ A log a r a r ( i − 1) + (cid:88) b r ∈ B log b r b r ( j − (cid:17) − λ (cid:16) i + 1 j (cid:17) − λ (cid:16) (cid:88) a r ∈ A a r ( i − 1) + (cid:88) b r ∈ B b r ( j − (cid:17) − λ ≤ . (10) General Problem ( -cycle part): Minimize λ + λ + 2 λ , such that, λ ≥ 0, and for all signatures ( i, j, k, A, B, C ):log P ijk ( A, B, C ) + µ (cid:16) log ii + log jj + log kk (cid:17) + µ (cid:16) (cid:88) a r ∈ A log a r a r ( i − 1) + (cid:88) b r ∈ B log b r b r ( j − 1) + (cid:88) c r ∈ C log c r c r ( k − (cid:17) − λ (cid:16) i + 1 j + 1 k (cid:17) − λ (cid:16) (cid:88) a r ∈ A a r ( i − 1) + (cid:88) b r ∈ B b r ( j − 1) + (cid:88) c r ∈ C c r ( k − (cid:17) − λ ≤ Restricted Problem (no triangles): Minimize λ + λ + 2 λ , such that, λ ≥ 0, and for all signatures ( i, j, A, B ):log ˆ P ij ( A, B ) + µ (cid:16) log ii + log jj (cid:17) + µ (cid:16) (cid:88) a r ∈ A log a r a r ( i − 1) + (cid:88) b r ∈ B log b r b r ( j − (cid:17) − λ (cid:16) i + 1 j (cid:17) − λ (cid:16) (cid:88) a r ∈ A a r ( i − 1) + (cid:88) b r ∈ B b r ( j − (cid:17) − λ ≤ . Restricted Problem (no triangles, no quadrilaterals): Minimize λ + λ + 5 / λ , such that, λ ≥ 0, and for all signatures ( i, j, A, B ):log ˆ P ij ( A, B ) + µ (cid:16) log ii + log jj (cid:17) + µ (cid:16) (cid:88) a r ∈ A log a r a r ( i − 1) + (cid:88) b r ∈ B log b r b r ( j − (cid:17) − λ (cid:16) i + 1 j (cid:17) − λ (cid:16) (cid:88) a r ∈ A a r ( i − 1) + (cid:88) b r ∈ B b r ( j − (cid:17) − λ − λ E ij ( A, B ) ≤ , where E ij ( A, B ) = i ≥ , − χ ( A ) if i = 3 , j ≥ , − χ ( A ) − χ ( B ) if i = 3 , j = 3 . ppendix B: Verification of the solutions of the dual linearprograms We give in this place informations how the candidates for the dual solutions in Table 3 can bechecked. The complete analysis was computed by a series of Mathematica scripts, which can be found . These scripts also perform thenecessary brute force part of our analysis. We follow the general, more detailed, procedure of verifyingthe dual solutions presented in the proof of Lemma 3. We discuss the four linear programs one byone. General case ( -cycle part): This case is covered in detail in the proof of Lemma 3. We only list inTable 2 the intermediate results of the analysis, i.e., the cases which need to be checked brute force.The table contains also the upper bound for the entries of A and B for each case. Notice that thecalculations for the bounds of the first entry a of A and of the first entry b of B are slightly different.upper bounds for i j a /b a ∈ A b ∈ A i j a /b a ∈ A b ∈ B i j a /b a ∈ A b ∈ A eneral case ( -cycle part): The lower bound for the entries of the entries of A, B, C can be obtainedby maximizing ( µ log a − λ ) /a , which is maximized for integers at a = 6. To get an upper boundfor the i, j, k values compute first the maximum of µ log x/x − λ /x =: δ . Knowing δ and the lowerbound for for the entries of A, B, C , we are able to compute the the upper bound for the i, j, k valuesas the maximum of µ (log i/i + 2 log δ/δ ) + 3 µ log 6 / − λ (1 /i + 2 /δ ) − λ / − λ . This expressionis negative for all integers greater than 13, hence we have to test all remaining tuples for i, j, k ≤ i, j, k . For all i, j, k triplets we obtained that 7 is anupper bound for the entries in A, B, C . { (4 , , , (4 , , , (4 , , , (5 , , , (4 , , , (4 , , , (5 , , , (4 , , , (5 , , , (6 , , , (4 , , , (4 , , , (5 , , , (4 , , , (5 , , , (6 , , , (4 , , , (5 , , , (6 , , , (7 , , , (4 , , , (4 , , , (5 , , , (4 , , , (5 , , , (6 , , , (4 , , , (5 , , , (6 , , , (7 , , , (4 , , , (5 , , , (6 , , , (4 , , , (4 , , , (5 , , , (4 , , , (5 , , , (6 , , , (4 , , , (5 , , , (6 , , , (4 , , , (5 , , , (4 , , , (4 , , , (5 , , , (4 , , , (5 , , , (6 , , , (4 , , , (5 , , , (4 , , , (4 , , , (5 , , , (4 , , , (5 , , , (4 , , , (4 , , , (5 , , , (4 , , , (4 , , , (4 , , , (3 , , , (3 , , , (3 , , , (3 , , , (3 , , , (3 , , , (3 , , , (3 , , , (3 , , , (3 , , , (3 , , , (3 , , , (3 , , , (3 , , , (3 , , , (3 , , , (3 , , , (3 , , , (3 , , } (11) Restricted cases: For the restricted cases we use the natural lower bound of 3 for the entries of A and B . If the smallest face of G is a quadrilateral, an upper bound for i, j can be computed by maximizing µ ((log i ) /i +log(3) / µ (log 3) / − λ . This expression is maximized for integers when i = 10, andhence negative for i ≥ 10. If the smallest face of G is a pentagon, we have to compute the maximumof µ (log x ) /x − λ /x =: δ first. Using δ for j we can show that µ (log i ) /i + (log δ ) /δ ) + 2 µ (log 3) / − λ (1 /i + 1 /δ ) − λ / − λ is negative for all i ≥ 11 . Thus were are left with trying out all cases for i, j < 10 (if G contains no triangle) and i, j <