Abstract
Full Text
F. Ya. VETUKHNOVSKII
ON COVERINGS OF A GRAPH BY A SYSTEM OF NEIGHBORHOODS OF ITS VERTICES
(Presented by Academician P. S. Novikov on 17 IV 1964)
1. Questions connected with the metric properties of a graph are considered. For various classes of graphs the problem is posed of finding such a set \(\Sigma\) of vertices of the graph that every vertex of the graph is, in some sense, “close” to at least one vertex of the set \(\Sigma\). In §§ 2 and 3, for directed and undirected graphs, it is shown that in a certain respect this problem reduces to the same problem for trees. In § 4 a covering with a minimal sum of radii is found. In §§ 5 and 6 coverings by neighborhoods of equal radius are considered. For the case of trees, an algorithm is obtained for constructing a minimal covering, using local operations. §§ 7 and 8 contain estimates of the complexity of minimal coverings for various classes of coverings and various definitions of complexity.
2. Let each arc \(u\) of a finite directed graph \(G\) be assigned some positive number \(l_u\), called the length of the arc \(u\). The sum of the lengths of the arcs of some path \([\alpha,\beta]\) will be called the length \(l_{[\alpha,\beta]}\) of this path.
Definition. For pairs of vertices \(\alpha,\beta\) for which there exists in the graph \(G\) a path \([\alpha,\beta]\), we shall call the deviation of the vertex \(\beta\) from the vertex \(\alpha\) the number
\[
\rho_G(\alpha,\beta)=\min_{[\alpha,\beta]\in G} l_{[\alpha,\beta]},
\]
where the minimum is taken over all paths \([\alpha,\beta]\). We shall then say that the vertex \(\beta\) is remote in the graph \(G\) from the vertex \(\alpha\) by \(\rho_G(\alpha,\beta)\) (cf. \((^1)\), p. 131).

Fig. 1. The numbers denote the radii of neighborhoods of a point (line) covering; the desired spanning tree is marked; the spanning tree shown by the dotted line is not suitable
Definition. The spherical neighborhood of radius \(r\) of a given vertex \(\alpha\) of a graph \(G\) is the subgraph formed by all arcs of the graph \(G\) that connect pairs of vertices whose distance from the vertex \(\alpha\) is not more than \(r\). In what follows, a spherical neighborhood will simply be called a neighborhood.
Definition. A graph is called pointwise (respectively, linearly) covered by a system \(\Sigma\) of neighborhoods of some set of its vertices if each of its vertices (respectively, arcs) belongs to some neighborhood of the system \(\Sigma\). The radii of the neighborhoods of different vertices may be different (see Fig. 1).
Every covering of a graph consists of coverings of each of its connected components. It is known that every connected graph has a spanning tree, i.e., a subgraph containing all vertices of the graph and being a tree*.
Let us call the centrality index of a vertex \(\alpha\in G\) with respect to a system of neighborhoods \(\Sigma\) the number
\[
c_{\alpha,\Sigma}=\max_{B\in\Sigma}\bigl(r_B-\rho_G(\beta_B,\alpha)\bigr),
\]
where the maximum is taken over all neighborhoods \(B\in\Sigma\), \(r_B\) is the radius, and \(\beta_B\) the center of the neighborhood \(B\). Obviously, \(c_{\alpha,\Sigma}\ge 0\) for all vertices \(\alpha\in G\) if and only if \(\Sigma\) pointwise covers the graph \(G\).
* A tree is a connected graph without cycles. Two other equivalent definitions are: 1) a connected graph with \(n\) vertices and \((n-1)\) edges (arcs); 2) every pair of vertices of an (undirected) graph is connected by exactly one chain.
Theorem 1. Let the system \(\Sigma_0\) (\(\Sigma_1\)) pointwise (linearly) cover a connected graph \(G\). Then there exists a spanning tree \(D_0\) (\(D_1\)) of the graph \(G\) such that the system \(\Sigma_0\) (\(\Sigma_1\)), i.e., the system of neighborhoods of the same vertices with the same radii, considered in the subgraph \(D_0\) (\(D_1\)), pointwise (linearly) covers the spanning tree \(D_0\) (\(D_1\)).
The plan of the proof of the theorem consists in constructing, from the given covering of the graph, the required spanning tree. Starting from the set of isolated vertices—the centers of the neighborhoods of the system \(\Sigma_i\) \((i=0,1)\), an increasing (by inclusion) sequence of graphs is constructed, so that each graph is obtained from the preceding one by adjoining one arc “attaching” to the already constructed graph a vertex having maximal centrality index with respect to the system \(\Sigma_i\) among all vertices of the graph \(G\) not yet “attached.” When all vertices have thus been exhausted, it remains to add to the resulting graph several arcs to make it connected.
Remark. Not every spanning tree of a graph has the required property (see Fig. 1).
- On the set of vertices of an undirected connected graph \(G\), to each edge of which a positive length is assigned, one can define distance as the minimum (over all chains connecting the given pair of vertices) of the sum of the lengths of the edges. With this distance the vertices of the graph form a metric space. A direct chain between vertices \(\alpha\) and \(\beta\) of the graph \(G\) will mean a chain whose length, i.e., the sum of the lengths of the edges of the chain, is equal to the distance \(\rho_G(\alpha,\beta)\) between \(\alpha\) and \(\beta\). For undirected graphs the concepts of a spherical neighborhood, as well as of pointwise and linear coverings, are defined in the same way as for directed graphs.
Theorem 2. For undirected graphs the assertions of Theorem 1 are valid.
Let \(\Phi\) be an arbitrary function defined on all finite unordered sets of positive numbers. Denote by \(\Phi(\mathfrak{G})\) the set of values taken by the function \(\Phi\) on the sets of radii of coverings of the class \(\mathfrak{G}\) of graphs. From Theorems 1 and 2 it follows directly that
Theorem 3. Let \(\mathfrak{G}\) be some class of connected graphs, containing together with each graph also all its spanning trees\(^*\), and let \(\mathfrak{D}\) be the class of all trees of the class \(\mathfrak{G}\). Then \(\Phi(\mathfrak{G})=\Phi(\mathfrak{D})\), in particular
\[
\min \Phi(\mathfrak{G})=\min \Phi(\mathfrak{D}), \qquad
\max \Phi(\mathfrak{G})=\max \Phi(\mathfrak{D}).
\]
- In what follows undirected graphs with edges of unit length are considered. Let
\[ N_\Sigma(G)=\sum_{B\in\Sigma} r_B, \]
where \(\Sigma=\{B\}\) is a covering of the connected graph \(G\). Also let
\[ N^i(G)=\min_{\{\Sigma\}} N_\Sigma(G), \]
where the minimum is taken over all coverings (for \(i=0\), pointwise; for \(i=1\), linear) of the graph \(G\)\(^{**}\). It is clear that \(N^0(G)=0\), if neighborhoods of zero radius are allowed.
Theorem 4. \(N^1(G)=R_G\), where \(R_G\) is the radius of the graph \(G\)\(^{***}\).
The proof is based on Theorem 3, on the fact that every edge of a diameter of the graph belongs to some neighborhood, and also on the equality
\[
R_D=\left] d_D/2 \right[
\]
\({}^{****}\) (\(d_D\) is the diameter of the tree \(D\)), valid for trees.
- A covering \(\Sigma\) of a graph \(G\) is called homogeneous if all neighborhoods entering it have the same radius. Let \(F_G^i(r)\) be the smallest number such that there exist \(F_G^i(r)\) vertices of the graph \(G\) whose neighborhoods of radius \(r\) cover the graph \(G\) (for \(i=0\), pointwise; for \(i=1\), linearly).
\[
\text{* Such are, for example, the class of connected graphs with } n \text{ vertices, the class of connected}
\]
graphs with at most \(m\) edges (only for plane graphs), etc.
\[ \text{** Coverings } \Sigma \text{ for which } N_\Sigma(G)=N^i(G) \text{ will be called minimal.} \]
\[
\text{*** } R_G=\min_{\alpha\in G}\max_{\beta\in G}\rho_G(\alpha,\beta);
\]
a diameter is a direct chain of maximum length and, at the same time, the length of this chain (cf. the use of this term in geometry).
\[ \text{**** } ]x[ \text{ denotes the smallest integer greater than or equal to } x. \]
It follows from Theorem 3 that \(F_G^i(r)=F_{D_i}^i(r)\), where \(D_i\) is some spanning tree of the graph \(G\). In view of this, in what follows the search for minimal coverings will be carried out for trees. Let us consider one special representation of a tree \(D\) with respect to some diameter \([\alpha,\beta]\). To each vertex \(\gamma\in D\) we assign an ordered pair of coordinates \((a_\gamma,b_\gamma)\)*, where
\[ a_\gamma=\tfrac12(\rho(\alpha,\gamma)+\rho(\alpha,\beta)-\rho(\beta,\gamma));\qquad b_\gamma=\tfrac12(\rho(\alpha,\gamma)-\rho(\alpha,\beta)+\rho(\beta,\gamma)). \]
The geometric meaning of the coordinates is as follows: \(b_\gamma=\rho_D(\gamma,[\alpha,\beta])\). The straight chain on which this distance is attained goes from the vertex \(\gamma\) to the vertex (unique) with coordinates \((a_\gamma,0)\), lying on the diameter, which it is natural to call the projection of the vertex \(\gamma\) onto the diameter \([\alpha,\beta]\). The first coordinate \(a_\gamma\) is equal to the distance from this projection to the vertex \(\alpha\).
Fig. 2
The distance between arbitrary vertices \(\gamma\) and \(\delta\) depends on their coordinates as follows:
\[ \rho_D(\gamma,\delta)=b_\gamma+b_\delta+|a_\gamma-a_\delta|, \quad\text{if } a_\gamma\ne a_\delta; \]
\[ \rho_D(\gamma,\delta)\le b_\gamma+b_\delta, \quad\text{if } a_\gamma=a_\delta, \]
which follows easily from the uniqueness of the chain \([\gamma,\delta]\). The following relations hold:
\[ b_\gamma\le \rho(\alpha,\beta)-a_\gamma;\qquad b_\gamma\le a_\gamma;\qquad b_\gamma\le d_D/2. \]
Figure 2 depicts a tree whose vertices have all admissible pairs of coordinates.
We now describe an algorithm for constructing a minimal homogeneous point (linear) covering \(\Sigma_0\) (\(\Sigma_1\)) of a tree \(D\). It consists in partitioning the tree \(D\) into two subtrees \(D_\gamma^i\) and \(\bar D_\gamma^i\) such that
\[ F_D^i(r)=F_{D_\gamma^i}^i(r)+F_{\bar D_\gamma^i}^i(r). \]
The partition is carried out as follows: 1) if \(R_D\le r\), then \(D_\gamma^i=D\), while \(\bar D_\gamma^i\) is empty; 2) if \(R_D>r\), then assign to the tree \(D_\gamma^i\) all vertices with coordinates \((a,b)\) such that, for every \(c\le a\) and for every \(d\), all vertices with coordinates \((c,d)\) belong to the neighborhood of radius \(r\) of the vertex \(\gamma\) with coordinates \((r,0)\); the remaining vertices are assigned to the tree \(\bar D_\gamma^i\). If, in addition, the vertex with coordinates \((2r,0)\) belongs to the tree \(D_\gamma^1\), then we also assign it to the tree \(\bar D_\gamma^1\). The edges of the subtree \(D_\gamma^i\) (\(\bar D_\gamma^i\)) are all edges of the tree \(D\) connecting pairs of vertices assigned to the subtree \(D_\gamma^i\) (\(\bar D_\gamma^i\)) (see Fig. 3). The desired covering \(\Sigma_i\) consists of the covering of the subtree \(D_\gamma^i\) (one neighborhood with center at the vertex \(\gamma\)) and a minimal covering of the subtree \(\bar D_\gamma^i\), which may be regarded as constructed by this algorithm, since the tree \(\bar D_\gamma^i\) contains fewer vertices than \(D\).
Fig. 3
Definition. A set of vertices of a graph \(G\) is called an \(r\)-code if all pairwise distances between them are greater than \(2r\); an \(r\)-code is called maximal if it contains the greatest possible number (denote it by \(K_G(r)\)) of vertices among all \(r\)-codes of the graph \(G\).
Theorem 5. For a tree \(D\),
\[ F_D^0(r)=K_D(r). \]
Theorem 6. The point covering \(\Sigma_0\) is minimal.
Theorem 7. The linear covering \(\Sigma_1\) is minimal.
The proof of Theorems 6 and 7 is as follows. Every minimal covering \(\Sigma_i\) can be transformed into a minimal covering \(\Sigma_i'\) containing the neighborhood of the vertex \(\gamma\) (see the algorithm), by replacing only one neighborhood.
\[ \text{* Different vertices may have identical pairs of coordinates.} \]
The cover \(\Sigma_i'\) can be transformed into a minimal cover \(\Sigma_i''\), which, even without the neighborhood of the vertex \(\gamma\), covers the intersection of the subtree \(\overline D_\gamma^{\,i}\) with the neighborhood of the vertex \(\gamma\). Thus the cover \(\Sigma_i''\) is divided into two subsystems: 1) one neighborhood of the vertex \(\gamma\), covering the subtree \(D_\gamma^{\,i}\); 2) all the remaining neighborhoods of the system \(\Sigma_i''\), covering (together) the subtree \(\overline D_\gamma^{\,i}\).
Theorem 5 and the algorithm for constructing the cover \(\Sigma_0\) give an algorithm for constructing a maximal \(r\)-code.
- In the algorithm described above, only the condition \(b_\delta \leq a_\delta\) is used for vertices for which \(a_\delta \leq 2r\). This makes it possible to modify the algorithm so as to avoid applying the “nonlocal” operation of constructing the diameter.
For this it is necessary to find a vertex \(a\) and a chain \([\alpha,\beta]\) such that, when the tree is represented with respect to this chain \([\alpha,\beta]\) (according to the same rules), for vertices \(\delta\) with first coordinate \(\leq 2r\) the following holds: \(b_\delta \leq a_\delta\) (such a vertex can only be an end vertex and necessarily exists—for example, an end of a diameter). At the same time, as can be shown, if for some graph \(G\) with \(n\) vertices we know only a collection of \(n\) graphs that are neighborhoods of some radius \(p\) of all its vertices, then this is, generally speaking, insufficient for finding a minimal (or homogeneous minimal) cover (cf. (2)).
Fig. 4. \(0 \leq k \leq r;\ n=(r+1)s+r+k+1\).
- Let
\[ N^1(n)=\max_{G\in \mathfrak G_n} N^1(G), \]
where \(\mathfrak G_n\) is the class of connected graphs with \(n\) vertices.
Theorem 8.
\[
N^1(n)=\left\lfloor (n-1)/2 \right\rfloor .
\]
Let
\[
F_n^{\,i}(r)=\max_{G\in \mathfrak G_n} F_G^{\,i}(r);\qquad
N_G^{\,i}(r)=rF_G^{\,i}(r);\qquad
N_n^{\,i}(r)=\max_{G\in \mathfrak G_n} N_G^{\,i}(r).
\]
From consideration of the algorithm of Sec. 5 and of the example shown in Fig. 4, it follows that
Theorem 9.
\[
F_n^{\,i}(r)=[\,n/(r+1)\,];\qquad
N_n^{\,i}(r)=r[\,n/(r+1)\,].
\]
Let, further, \(N_G^{\,i}(r_1,r_2)\) be the minimal sum of radii among covers of the graph \(G\), the radii of whose neighborhoods satisfy the inequalities
\[
r_1 \leq r \leq r_2 .
\]
Theorem 10. For \(G\in \mathfrak G_n\), the following relations hold:
\[
\begin{aligned}
1)\quad &N_G^{\,i}(r_1,r_2)\leq \left\lfloor (n-1)/2 \right\rfloor,\qquad
N_n^1(r_1,r_2)=\max_{G\in\mathfrak G_n} N_G^1(r_1,r_2)\\
&=\left\lfloor (n-1)/2 \right\rfloor,\quad
\text{if } r_1\leq (r_2+1)/2,\quad r_1\leq \left\lfloor (n-1)/2 \right\rfloor;\\
2)\quad &N_G^{\,i}(r_1,r_2)\leq ((n-1)/(r_2+1))r_1+(r_2-r_1),\quad
\text{if } r_1\geq (r_2+1)/2,\\
& n\geq r_2+2 .
\end{aligned}
\]
- Let
\[ S_G^{\,i}(r)=r+F_G^{\,i}(r),\qquad S^{\,i}(G)=\min_r S_G^{\,i}(r),\qquad S^{\,i}(n)=\max_{G\in\mathfrak G_n} S^{\,i}(G). \]
It follows from Theorem 9 that
\[
S^{\,i}(n)\leq 2\sqrt n-1.
\]
Consider now the tree \(D\) consisting of \(l\) chains issuing from one vertex, with lengths \(k+1,k+2,\ldots,k+l\). For \(l=2k-2\) we have, for any \(r\),
\[
S_D^{\,i}(r)\geq 3k-3,
\]
whence
\[
S^{\,i}(D)\geq \frac32\sqrt n,
\]
where \(n\) is the number of vertices of the tree \(D\), and the sign \(\alpha \succcurlyeq \beta\) means that \(\lim \alpha/\beta\geq 1\). Thus,
\[
2\sqrt n-1\geq S^{\,i}(n)\succcurlyeq \frac32\sqrt n .
\]
Received
11 IV 1964
References
- C. Berge, Graph Theory and Its Applications, IL, 1962.
- Yu. I. Zhuravlev, DAN, 139, No. 6 (1961).