RUS  ENG
Full version
JOURNALS // Mathematical Physics and Computer Simulation // Archive

Vestnik Volgogradskogo gosudarstvennogo universiteta. Seriya 1. Mathematica. Physica, 2015 Issue 2(27), Pages 6–16 (Mi vvgum34)

This article is cited in 1 paper

Applied mathematics

On algorithm of numbering the spanning trees in a connected graph

V. V. Popov

Volgograd State University

Abstract: Let $G = (V, E)$ be a finite connected graph without multiple edges or loops. We consider the task about the numbering of all the spanning trees of $G$. In [2, p. 180, p. 191] described a method of solution of this task, based on the properties of minors of an incidence matrix of $G$. In the same place (p. 191–193) gave algorithm of four Japanese mathematicians (Kasahara Y., Tezuka K., Ling Shun Tong, Kitahashi T., [6]), reduced the task to removal of brackets in the product of formal sums of edges of $G$. Here we concider the method based on lexicographical order on the set of all sequences of edges of $G$.
We will remind that a spanning tree $T$ of the graph $G$ is a tree consisting of edges of $G$ and connecting all the vertices of $G$.
We shall assume that $V =\{ 1,2, \ldots, n\} $, where $n$ is a number of vertices of $G$. If $a, b \in V$, then $ (a, b) $ will be designated the edge with end-points $a$ and $b$.
Let $T$ be a spanning in $G$. Then the set of his edges can be written in the form
\begin{equation} (a_1, b_1), (a_2, b_2), \ldots, (a_ {n-1}, b_ {n-1}), \tag{A} \end{equation}
where
\begin{equation} a_i<a_{i+1} \ {\rm or} \ a_i=a_{i+1}\ \text{and} \ b_i<b_{i+1}, \ \text{where}\ i=1,2,\ldots, n-2. \tag{B} \end{equation}

On a set of sequences of in the form of (A) with the additional condition (B) we will consider a lexicographic order. The smallest (with respect to this order) spanning tree will be the tree $T_0$ with edges $ (1,2)$, $(1,3)$, $ (1,4)$, $\ldots$, $ (1, n) $ provided $(1,b) \in E$ for $b=2,3, \ldots, n$. The greatest spanning tree $T_1$ will be $ (1, n) $, $ (2, n) $, $ (3, n) $, $\ldots$, $ (n-1, n) $ under a similar condition. Touching all sequences of a look (A) in ascending order between $T_0$ and $T_1$ and checking lack of cycles at the corresponding sets of edges, we will be able to get a list of all spanning trees.
We will give results of work of the appropriate computer program.
Example 1. For complite graph $K_n$ on $n$ vertices for $n\leq 9$ the lists of all the spanning trees are obtained. Due to Kely theorem $K_n$ has $n^{n-2}$ spanning trees. For $n=9$ thos number is equal $4\,782\,969$.
Example 2. Let $G$ be a graph on $12$ vertices in figure 1 (in the left). Then $G$ has $2\,415$ spanning trees.
Let $P$ be a finite set of points in the plane $R^2$. Then $G = (V, E) $ is a plane geometrical graph on top of $P$, if $V\subset R^2$ and egdes of $G$ are stright-line segments with the end-points in $P$ and two edges of $G$ intersects only in points of $P$ [3]. If $G$ is a tree and $V=P$, then $G$ called a spanning tree on top of $P$.
Example 3. Let $P$ be a set of square tops, and also its center. Then there are $45$ spanning trees on top of $P$.
Example 4. Let $P$ consists of square tops, and also middle of its parties. Then there are $3\ 273$ spanning trees on top of $P$.
Example 7. We will consider a set $P=L_{n,m}$ consisting of $n\cdot m$ points on the plane:
$$L_ { n, m } = \{ (i, j): i=1,2, \ldots, n, j=1,2, \ldots, m\}, $$
where $n, m\geq of 1$ are integers. Thus, $L_ { n, m } $ is a uniform lattice which points lie on $n$ horizontal straight lines and for $m$ vertical straight lines. The numbers $St(P)$ of a spanning trees on top of this lattice for small $n$ and $m$ it is specified in the following table:
table1.png

At transfer the spanning trees it is possible to carry out a filtration. For example, it is possible to keep only those trees in the final list, which degrees of vertices not exceeded some number $r$. So, the complete graph on $8$ vertices has $8 ^6=262\,144$ spanning trees. Among them $201\ 600$ spanning trees which degree of vertices don't exceed $3 $, and $20\,160$ spanning trees with degree of vertices $\leq 2$.
Some modification of the main algorihm allows to receive the list of all crossing-free geometrical graph on top of $P$ [3]. For example, if $P$ consists of square tops, and also middle of its parties, the number of such a graph on top of $P$ is equal to $21\,795$ (this number included also the empty graph). If to add to $P$ the center of a square, this number will become to $167\,570$.
In work is considered also a task about creation of all triangulations of a finite set $P\subset R^2$. The algorithm of the solution of this task is available in [3]. The alternative description of algorithm of search is provided in this work.
Example 9. Let $P=L_{ n, m } $ be a uniform lattice on the plane (see example 7). Then the number $Tr(P)$ of triangulations of $L_{ n, m } $ for small $n$ and $m$ is specified in the following table:
table2.png


Keywords: connected graph, planar graph, spanning tree, the number of spanning trees, triangulation, the number of triangulations.

UDC: 517.518.85, 517.27
BBK: 22.144

DOI: 10.15688/jvolsu1.2015.2.1



© Steklov Math. Inst. of RAS, 2024