2. A Steiner Tree Construction Algorithm
As pointed out in [
31], this Steiner problem in networks was originally formulated in [
10], where a straightforward algorithm was suggested: a solution to this problem can be found by the enumeration of the minimum spanning trees (MSTs) of subnetworks of
induced by subsets
W of
V such that
Although
algorithms for the MST problem do exist [
32,
33], it is well known that there are an exponential number of subsets in
Thus, this straightforward algorithm takes an exponential amount of time to finish. Many algorithms following different approaches, together with heuristics, for a more general problem when the involved graph is weighted, i.e., all the edges come with positive weights, have been presented in, e.g., [
31]. Although some of these approaches do lead to a polynomial solution for some special classes of graphs/networks, they all lead to exponential algorithms in the general case. Indeed, the problem of finding the Steiner distance of a set of vertices, the
Steiner Problem, is NP-complete [
3,
34]. On the other hand, to expose a constructive nature for finding this important quantity, we describe an alternative algorithm to find the Steiner distance for a given
in a graph
Calling any graph with just one vertex
trivial,
non-trivial otherwise [
1], we start with the following well-known result.
Lemma 5 ([1]).Every non-trivial tree has at least two leaves. Corollary 1. A graph is a tree iff, for some vertices is a tree, and v is a leaf.
Proof. The sufficiency follows from Lemma 5. Let v be one of the two leaves, has to be both connected and cycle free, otherwise, it would contradict the assumption that is a tree itself. Regarding the necessity, assume is a tree; then by definition of a tree, it is connected and contains no cycle. It is clear that with the additional edge connecting u and is still connected and cycle free, and is thus a tree. □
Given a graph
the following algorithm Tree
as shown in Algorithm 1, returns true if vertices in
W form a tree in
Let
W be
Algorithm 1: Algorithm Tree |
1. If 2. //An isolated vertex is a tree 3. return True 4. Else 5. For 6. If 7. For 8. If is adjacent to only one 9. // is a leaf in W 10. return True 11. //No such a leaf exists 12. return False |
In terms of complexity, let
be the number of checks we need to do in Line 8 or the constant operation that we need to do in Line 1. It is clear that
When
with the worst-case scenario, we have to go through a loop
m times in Line 5; for each loop, we have to recursively call Tree
, for which we have to go through another loop in Line 7
times. Hence,
It is thus easy to see that
By the following
Stirling’s approximation,
where
e refers to the natural logarithm 2.71828..., we may conclude that
We are now ready to present a Steiner algorithm in Algorithm 2, by definition, to construct a Steiner tree in a graph
We notice the remark that we quoted in
Section 1.1, “...if
is a connected subgraph of
such that
and
then
G is a tree. Obviously, if
then
is simply the classical distance between
u and
” [
14].
Algorithm 2: Steiner algorithm |
0. Given , and 1. 2. // Initially set St to infinite, by definition in the DMTC paper 3. for 4. // With the number of the vertices to be added. 5. // Since we want to get the minimum size, we start with 0 and go up. 6. //We quit in Line 12 as soon as we find a Steiner tree. 7. Choose a subset , , is a subset of V-S 8. // Notice that the number of is . 9. If //If the so-chosen set is a tree, we 10. //are done, and the size of this tree is . 11. 12. break 13. return 14. //If none of the vertex subsets satisfy the condition in 9, 15. we return ∞. |
When applying the Steiner algorithm to
as shown in
Section 1.1, we start by picking
in Line 3;
in Line 7 since Tree(
) returns True (In Tree(
S,
E)),
let
Tree(
E) returns True; and since
v is only adjacent to
we are done.
is set to 1 in Line 11, and it then breaks in Line 12 and returns 1 in Line 13.
In terms of complexity, the best scenario is that the loop in Line 3 runs only once; i.e., when S itself is a Steiner tree with edges in then its complexity is the same as that of Tree(), i.e., .
The worst case is that is a Steiner tree itself, or it does not contain any Steiner tree, in which case the algorithm will have to go through all the subsets of In this worst case, the inner loop in Line 2 and the outside loop in Line 7 would cost altogether Since, as mentioned earlier, this Steiner problem is NP-complete, there is no way to significantly improve the efficiency of such an algorithm.
3. Steiner Diameter of a Graph and Its Line Graph
In this section, we address Problems 1 and 2, as suggested in
Section 1.3. Chartrand and Steeart [
35] investigated the relation between the connectivity and edge-connectivity of a graph and its line graph.
Lemma 6 ([35]).Let Γ
be a connected graph with connectivity κ and edge-connectivity λ. Then if ;
;
.
The following result is immediate from Theorem 1.
Proposition 1. Let be two integers with or . Additionally, let Γ be a connected graph of order n, and Γ is not a tree. Then , and .
Proof. Since is a connected graph of order n, we have is a connected graph with . It follows that . From Theorem 1, we have , and . □
For , we have the following result.
Proposition 2. Let Γ be a connected graph of order n with edge-connectivity λ and integer k such that .
For , then .
If , there exists only one cut edge in Γ; then .
If and there exist at least two cut edges, then .
Proof. For , since , by Lemma 6, we have . Using this result with Lemmas 3 and , we obtain .
Suppose and there exists only one cut edge in . Then we have , and there exists only one cut vertex in . From of Lemma 3, we have , as desired.
Suppose and there exist at least two cut edges in . Then there exist at least two cut vertices in . From Lemma 3, we have , as desired. □
Proposition 3. Let Γ be a connected graph with n vertices and edge connectivity λ. If , then . Moreover, the bound is sharp.
Proof. Since , it follows from of Lemma 6 that . If , then from Lemma 4 (3), we have , as desired. Otherwise, . From Lemma 4 (2), we have . This completes the proof of the result.
Moreover, if we take
(see
Figure 3), then we obtain
. It follows from Lemma 4 (3) that we have
, as desired. □
We now focus our attention on the case of
. We now introduce nine graphs (see
Figure 4), which are used later.
Let be a path of order 6;
Let be the graph obtained by identifying a vertex of degree 2 in the 3-vertex path with one end vertex of the 4-vertex path;
Let be the graph obtained by identifying a vertex of a cycle with one end vertex of the 3-vertex path and identifying the other vertex of this cycle with one end vertex of the 2-vertex path;
Let be the graph obtained by identifying a vertex of a triangle with one end vertex of the 4-vertex path;
Let be the graph obtained by identifying a vertex of a 4-vertex cycle with one end vertex of the 3-vertex path;
Let be the graph obtained by identifying a vertex of degree 3 in with one end vertex of the 3-vertex path, where denotes the graph obtained from by deleting one edge;
Let be the graph obtained by identifying a vertex of degree 2 of with one vertex of the 2-vertex path, where is the graph obtained by identifying a vertex of a triangle with one vertex of another triangle;
Let be the graph obtained by identifying a vertex of 4-vertex cycle with one vertex of a triangle;
Let be the graph obtained by identifying a vertex of degree 3 in with one vertex of a triangle, where denotes the graph obtained from by deleting one edge.
The following result provides a solution to Problem 1; that is, given a graph with , we want to find some induced subgraphs such that if does not contain such induced subgraphs, then .
Theorem 6. Let Γ be a connected graph with . If Γ contains neither nor as its induced subgraph, then .
Proof. Let be the edges of a graph . These are all the vertices of . Let , where . Note that are three edges in . First, we assume that is connected. This means that if one of them, say , is adjacent to the other two edges, then vertex is adjacent to both vertex and vertex in . Thus, the tree T induced by the edges in is an S-Steiner tree in , which implies , as desired.
Next, we assume that
is disconnected. We now may assume that
or
. Since
does not contain
as its induced subgraph, we only need to consider the case
. Let
be adjacent to
in
, and let
be adjacent to neither
nor
in
. Set
,
and
. Suppose that one vertex in
is adjacent to one vertex in
. Without loss of generality, let
. Then the tree
T induced by the edges in
is an
S-Steiner tree in
, and hence
, as desired. Suppose that none of
are adjacent to one vertex in
. Since
, it follows that there exists a vertex
such that
w is adjacent to one vertex in
and
w is adjacent to one vertex in
. By symmetry, we may assume that
or
.
Table 1 shows the edges between
w and one element in
. By
Figure 4, subgraphs
induced by the vertices in
are shown in
Table 1. Note that
and
contains
as its subgraph. If
contains neither
nor
as its induced subgraph, then
. □
4. Line Graphs with Steiner Diameter
The following observation is immediate.
Observation 4. Let Γ be a connected graph with vertices and m edges. Then if and only if for any and , the subgraph induced by the edges in S is connected.
Proposition 4. Let Γ be a connected graph with n vertices, and . Then if and only if .
Proof. If for , then . Conversely, let . We have to prove that . Since is connected, it follows that contains a spanning tree, say T. If T is not a star, then there exists a non-leaf edge e. We choose k edges from different components of . Then the subgraph induced by these k edges is not connected, contradicting Observation 4. Thus T is a star. Note that is a graph obtained from T by adding some edges. Suppose that u is the center of T. We claim that is a star. Otherwise, let be an edge of Then is a spanning tree but is not a star, which is a contradiction. This completes the proof of the result. □
Proposition 5. Let Γ be a unicycle graph of order n with integer s . Then if and only if , where is a cycle plus hanging edges into the cycle randomly.
Proof. If is , then it follows from Observation 4 that . Conversely, let . Since is a unicyclic graph, it follows that contains a cycle, say . We claim that the edge must be a pendant edge. Otherwise, we can find a path , and . Then there exists a non-leaf edge . We choose edges from . Then the subgraph induced by these edges is not connected, contradicting Observation 4. Thus, we have . □
Proposition 6. Let Γ be a connected graph with size m and for all . Then if and only if .
Proof. From Lemma 2, if and only if is 2-connected. If , then it follows from Lemma 6 that , and so .
Conversely, let ; thus . If there exists a cut edge e in , it follows that e is a cut vertex in , which means that , which is a contraction. Hence, . □
The following result provides a first step to address Problem 2, i.e., finding some induced subgraphs that characterize when .
Corollary 2. Let Γ be a connected graph with vertices. Then if and only if Γ satisfies one of the following conditions:
• for ;
• for ;
• for .
5. Results for Some Special Graphs
For any graph with positive integer k, we now explore the relationship between and as follows:
Lemma 7. For any graph Γ
with positive integer , we have with equality if and only if or .
Proof. For
,
and
, and hence
; the equality holds. We already mentioned in
Section 1.1, that
. For
, the equality thus also holds. Otherwise,
and
. For any
, we have
. Let
be any set of vertices with
. First, we have to prove that
Let
T be a spanning tree of graph
. For
,
as
. The strict inequality (
1) holds. We now assume that
. We prove the result (
1) by mathematical induction on
k. Assume that the result in (
1) holds for
k and prove it for
. For this, let
be any set of vertices with
such that
. Then, there exists a vertex
w in
S such that
. Therefore, by the mathematical induction hypothesis with the above result, we obtain
as
. Hence, the result (
1) holds by induction when
and
. It follows that
with equality if and only if
or
. □
Theorem 7. Let k, n be two integers.
Let Γ be a path , and , .
Let Γ be a cycle , and , .
Let Γ be a star , and , .
Proof.
Let and . By the definition of a line graph . By Observation 3, we have . We can assume that is a set of vertices with such that . Then, we have . It follows that and hence .
Since , we obtain .
Since , we obtain . □
From Theorem 7 , we have the following observation.
Observation 5. Let be a cycle, and also let be positive integers. Then Proof. From Theorem 7
, we have
. Thus, we have
□
The friendship graph, , can be constructed by joining n copies of the complete graph with a common vertex, which is called the universal vertex of .
Theorem 8. Let be a friendship graph with two positive integers k and n. Then Proof. Let . Further, let and , where is its universal vertex. We consider the following three cases:
: . Let or or , where . If , then . Otherwise, or or . Then . Hence, .
: . Let such that . Then, the subgraph induced by the edges in is an S-Steiner tree; hence, , and so .
For any , if , then the subgraph induced by the edges in is an S-Steiner tree, and hence . If , then the subgraph induced by the edges in , and so ; hence . Therefore, .
Theorem 9. Let k, n be two positive integers. Then, Proof. Let
,
,
and
. For any
, we have
,
, and
We consider the following cases:
: . First we assume that there is a set S with such that . Then, .
Next, we assume that ; that is, . It follows from that , and hence .
:
, and
is even. Let
. For any
with
, let
,
and
. One can easily see that
. Clearly,
, and
. Since
, we have
, and hence,
. Therefore
. Since
, it follows that there exists a vertex
or
. If
and
where
, then from (
2), we have
or
. If
or
, then,
. Thus we obtain
Since S is any subset in with , we have .
Let . Then , and therefore . Hence, .
:
and
is odd. Let
. For any
and
and
, there exists a vertex
or
. Similarly, as in the proof of
, we define
D,
and
. One can obtain easily that
,
,
,
,
and
. From (
2), we obtain
Therefore, .
Let . Then, , and hence .
Theorem 10. Let be a complete bipartite graph. Then, Proof. Let and , where and . For any , let and , where , and .
: . First, we assume that there is no such that and . Without loss of generality, we can assume that if , there is a Steiner tree, T, obtained from such that . It follows that .
Next, we assume that there exists such that and . Then, we find a Steiner tree T such that . Thus, . It follows that for with , we have , and hence, .
: . By the Nestle principle, there exists an such that and . Similar to , , , and hence , which means . From Observation 3, , and hence, . □
Theorem 11. Let be a complete graph of order n with positive integer k. Then Let . Further, let t be a positive integer such that , where . Then .
Proof. Let
. Then
. For any edge
, we have
Let M be a perfect matching or almost perfect matching in . Then .
: . Let with . Recall that a Steiner tree connecting S is defined as a subgraph of , which is a subtree satisfying . Then , and hence, .
One can easily see that . Together with Lemma 7, we obtain . Hence, .
: . Let . We denote by , . Let be a subset of with . First, we assume that . Then C is a vertex cut of . Let . Then .
Next, we assume that . For any with , one can easily obtain that . Then .
: . We have , and hence, is connected for any , where and . Therefore, contains a spanning tree T of order , and hence, .
We now assume that and , where . Let . We denote by the edge set of the subgraph induced by the edges in . Let be the set of edges from to in .
Let
be the number of edges in
. Then
and
. It follows that
Thus, we have
. Since
, then we consider a set
, where
and
. By Observation 4, we have
and hence
. This completes the proof of the theorem. □
A general fan graph is defined as the graph join . We denote fan graph by .
Theorem 12. Let be a fan graph of order n with positive integer k. Then Proof. Let and .
: . Let with . First, we assume that . Let , where . Then, the subgraph induced by the edges in is an S-Steiner tree of , and hence .
Next, we assume that . In this case, let , where . Then, the subgraph induced by the edges in is an S-Steiner tree of , and hence, . From the above result, one can easily see that for , and . Hence, for .
: . First, we assume that for . Then, the subgraph induced by the edges in is an S-Steiner tree, and hence, . Next, we assume that . Then, the subgraph induced by the edges in is an S-Steiner tree, and hence, . From Theorem 1, we have , and hence, .
: . Then it follows from Lemma 1 that . □
Theorem 13. Let
be a fan graph of order
with positive integer
k. Then
Proof. Let
. Additionally, let
and
. For any
, we have
, and
and
First, we assume that there is a set S with such that . From and , we obtain .
Next, we assume that . Then, one can easily see that . If we take , then we obtain , and so .
: . Since , it follows from Lemma 4 that .
: . Since , it follows from Lemmas 2 and 3 that . □
We obtain the relation between the diameter of the line graph and the cardinal of vertex set S as follows.
Observation 6. For any Γ
and integer k, we have Moreover, the bound is sharp.
Proof. From Observation 3 and Lemma 7, we have
□
We now address Problem 3 that we proposed in
Section 1.3; that is, for integer
,
, is there a graph
such that
and
?
In
Table 2, we present some graphs
such that
and
, which starts to provide a solution to Problem 3; that is, for each
, is there a graph
such that
and
?
We indeed have the following general observations. For any graph
, let
and
. Then
Observation 7. Let Γ
be a connected graph with . Then Proof. For any vertex , we can assume that such that . Let . Clearly, , and hence . □
Observation 8. Let Γ
be a graph of order n with positive integer k such that . Then Moreover, the lower bound is sharp.
Theorem 14. Let Γ
be a graph of order n with size and positive integer k such that . Then Moreover, the bound is sharp.
Proof. From Observation 3, we have . From Theorem 1, we have , and hence, .
Let . From Observation 5, the lower bound is sharp. If , then the upper bound is sharp. □