This paper was converted on www.awesomepapers.org from LaTeX by an anonymous user.
Want to know more? Visit the Converter page.

11institutetext: Indian Institute of Information Technology, Design and Manufacturing, Kancheepuram, India.
11email: {coe11b012,coe14d002,sadagopan}@iiitdm.ac.in

Complexity of Steiner Tree in Split Graphs - Dichotomy Results

Madhu Illuri    P.Renjith    N.Sadagopan
Abstract

Given a connected graph GG and a terminal set RV(G)R\subseteq V(G), Steiner tree asks for a tree that includes all of RR with at most rr edges for some integer r0r\geq 0. It is known from [ND12,Garey et. al [1]] that Steiner tree is NP-complete in general graphs. Split graph is a graph which can be partitioned into a clique and an independent set. K. White et. al [2] has established that Steiner tree in split graphs is NP-complete. In this paper, we present an interesting dichotomy: we show that Steiner tree on K1,4K_{1,4}-free split graphs is polynomial-time solvable, whereas, Steiner tree on K1,5K_{1,5}-free split graphs is NP-complete. We investigate K1,4K_{1,4}-free and K1,3K_{1,3}-free (also known as claw-free) split graphs from a structural perspective. Further, using our structural study, we present polynomial-time algorithms for Steiner tree in K1,4K_{1,4}-free and K1,3K_{1,3}-free split graphs. Although, polynomial-time solvability of K1,3K_{1,3}-free split graphs is implied from K1,4K_{1,4}-free split graphs, we wish to highlight our structural observations on K1,3K_{1,3}-free split graphs which may be used in other combinatorial problems.

1 Introduction

Steiner tree is a classical combinatorial optimization problem which continues to attract researchers from both mathematics and computing. Interestingly, this problem finds applications in Network Design, Circuit Layout Design, etc., [3]. Given a connected graph GG and a subset of vertices (terminal set) RV(G)R\subseteq V(G), Steiner tree asks for a tree spanning the terminal set. The objective is to minimize either the number of edges in the Steiner tree or the number of additional vertices (QV(G)RQ\subseteq V(G)\setminus R, also known as Steiner vertices). It is apparent from the definition that Steiner tree generalizes well-known Minimum Spanning Tree (MST) and Shortest Path problems in general graphs [4].
On the complexity front, Steiner tree in general graphs is NP-complete as there is a polynomial-time reduction from Exact 3 Cover [5]. Under the assumption, NP-complete problems are unlikely to have polynomial-time algorithms, it is natural to identify the gap between polynomial-time solvability and NP-completeness by restricting the input instances. Towards this end, many special graph classes such as chordal, bipartite, planar, split, etc., were discovered in the literature [6]. Classical problems such as Vertex cover, Clique, Odd-cycle transversal have polynomial-time algorithms when the input is restricted to chordal graphs which are otherwise NP-complete for arbitrary graphs [5]. However, other famous problems such as Hamiltonian Path (Cycle), Steiner tree, etc., remain NP-complete even on chordal graphs [2, 7]. In fact, Steiner tree is NP-complete on Split graphs which are a strict subclass of chordal graphs [6]. Steiner tree is considered to be a difficult combinatorial problem compared to other problems as it is NP-complete on almost all special graph classes. For example, it is NP-complete on planar [8], chordal [2], bipartite [5], chordal bipartite [9] graphs. Due to its inherent difficulty, this problem has been an active research problem in the literature for the past three decades.
When a combinatorial problem is NP-complete on special graph classes such as chordal and split, it is natural to restrict the input further by means of forbidden subgraphs. For example, Hamiltonian cycle problem is NP-complete in chordal graphs, whereas it is polynomial-time solvable on interval graphs which are chordal and asteroidal-triple free [10, 11, 12, 13]. In this paper, we revisit Steiner tree restricted to split graphs. It is known from [2], that Steiner tree on split graphs is NP-complete. We investigate the complexity of Steiner tree on subclasses of split graphs and present an interesting dichotomy. Towards this end, we study K1,3K_{1,3}-free (claw free) and K1,4K_{1,4}-free split graphs from both structural and algorithmic perspectives. In particular, we establish the following results;

  • \bullet

    Steiner tree on K1,5K_{1,5}-free split graphs is NP-complete.

  • \bullet

    Steiner tree on K1,4K_{1,4}-free split graphs is polynomial-time solvable.

Towards this end, we present a tight lower bound on the size of the Steiner set and our algorithm correctly produces such a Steiner set. The above results rightly identify the gap between NP-completeness and polynomial-time solvable input instances of Steiner tree problem restricted to split graphs. Since our contribution evolved from K1,3K_{1,3}-free split graphs, we highlight structural results of both K1,3K_{1,3}-free and K1,4K_{1,4}-free split graphs. Although, the complexity of Steiner tree in K1,3K_{1,3}-free split graphs is inferred from K1,4K_{1,4}-free split graphs, out of combinatorial curiosity, we investigate both graphs from structural perspective and present polynomial-time algorithms for Steiner tree. To the best of our knowledge, this line of investigation has not been reported in the literature. The polynomial-time results known in the literature for Steiner tree are for trees and 2-trees [14].
As far as parameterized-complexity results are concerned, in [15] it is shown that Steiner tree in general is Fixed-parameter Tractable(FPT) if the parameter is the size of the terminal set and it is W[2]W[2]-hard if the parameter is the size of the Steiner set [16]. From the domain of approximation algorithms, Steiner tree has a polynomial-time approximation algorithm with ratio 21|R|2-\frac{1}{|R|} [17]. Variants of Steiner tree include Euclidean Steiner tree [18], Rectilinear Steiner tree [8], and Directed Steiner tree [19, 20].
Roadmap: We present the structural characteristics of K1,3K_{1,3}-free split graphs in Section 2. Using the structural observations made, we also present a polynomial-time algorithm to output a Steiner tree in K1,3K_{1,3}-free split graphs. Structural characteristics of K1,4K_{1,4}-free split graph and a polynomial-time algorithm to output a Steiner tree in K1,4K_{1,4}-free split graphs is presented in Section 3. Hardness result is addressed in Section 4.
Graph-theoretic Preliminaries:
In this paper, we work with connected, simple, unweighted graphs. Notations are as per [6, 21]. For a graph GG the vertex set is V(G)V(G) and the edge set is E(G)={{u,v}|u,vV(G)E(G)=\{\{u,v\}~|~u,v\in V(G) and uu is adjacent to vv in GG and uv}u\neq v\}. The neighborhood of vertex vv is NG(v)={u|{u,v}E(G)}N_{G}(v)=\{u~|~\{u,v\}\in E(G)\}. The degree of a vertex vv is dG(v)=|NG(v)|d_{G}(v)=|N_{G}(v)|. δ(G)=\delta(G)= min {dG(v)|vV(G)}\{d_{G}(v)~|~v\in V(G)\}. For a graph GG and SV(G)S\subseteq V(G), G[S]G[S] represents the subgraph of GG induced on the vertex set SS. The subgraph relation is represented as G[S]GG[S]\sqsubseteq G. A Split graph G=I+CG=I+C is such that GG can be partitioned into an Independent Set II and a Clique CC, V(G)=ICV(G)=I\cup C. A clique CC is maximal if there does not exist a clique CC^{{}^{\prime}} such that CV(C)C\subseteq V(C^{{}^{\prime}}). For all split graphs mentioned in this paper we consider CC to be a maximal clique unless otherwise stated. K1,rK_{1,r} is a split graph on r+1r+1 vertices such that |C|=1|C|=1 and |I|=r|I|=r, E(K1,r)={{x,v}|xC,vI}E(K_{1,r})=\{\{x,v\}~|~x\in C,v\in I\}. K1,3K_{1,3} is also termed as claw. Centre vertex of a K1,rK_{1,r} is the vertex of degree rr. A graph GG is K1,rK_{1,r}-free if GG forbids K1,rK_{1,r} as an induced subgraph. For a vertex uCu\in C, NGI(u)=NG(u)IN_{G}^{I}(u)=N_{G}(u)\cap I and dGI(u)=|NGI(u)|d_{G}^{I}(u)=|N_{G}^{I}(u)|. For SCS\subseteq C, NGI(S)=vSNGI(v)N_{G}^{I}(S)=\bigcup_{v\in S}N_{G}^{I}(v), and dGI(S)=|NGI(S)|d_{G}^{I}(S)=|N_{G}^{I}(S)|. For a split graph GG, ΔGI=\Delta_{G}^{I}= maximum{dGI(v)},vC\{d_{G}^{I}(v)\},v\in C and V3={uC|dGI(u)=3}V_{3}=\{u\in C~|~d_{G}^{I}(u)=3\}. Two edges e1e_{1} and e2e_{2} are non adjacent if they do not share an end vertex in common. A set of edges ME(G)M\subseteq E(G) forms a matching of GG if every pair of edges in MM are non adjacent. Maximum matching is a matching of maximum cardinality in GG. α(G)\alpha(G) denotes the size of the maximum matching in GG.

2 K1,3K_{1,3}-free Split Graphs: Structural Results

In this section, we analyze the structure of K1,3K_{1,3}-free split graphs and we present some interesting structural results. Further, we show that for a claw-free split graph GG, if ΔGI=2\Delta_{G}^{I}=2, then |I|3|I|\leq 3. This acts as a good handle in yeilding a linear-time algorithm for Steiner tree problem which we see in the later half of this section.

Theorem 2.1

Let GG be a connected split graph. GG is claw free if and only if one of the following conditions hold.
1. ΔGI1\Delta^{I}_{G}\leq 1
2. ΔGI=2\Delta^{I}_{G}=2 and for every u,vCu,v\in C such that dGI(u)=2d^{I}_{G}(u)=2, NGI(u)NGI(v)N^{I}_{G}(u)\cap N^{I}_{G}(v)\neq\emptyset

Proof

Necessity: Suppose ΔGI3\Delta_{G}^{I}\geq 3, and let vCv\in C has at least 3 neighbours, say x,y,zIx,y,z\in I. Then the set {v,x,y,z}\{v,x,y,z\} forms a claw in GG with vv as its centre vertex. It follows that if GG is claw-free, then ΔGI2\Delta_{G}^{I}\leq 2. Now suppose ΔGI=2\Delta_{G}^{I}=2. Let uCu\in C such that there exist vertices x,yI,{x,y}NGI(u)x,y\in I,\{x,y\}\subseteq N_{G}^{I}(u). We assume on the contrary that there exist vC,vuv\in C,v\neq u such that NGI(u)NGI(v)=N_{G}^{I}(u)\cap N_{G}^{I}(v)=\emptyset. Since CC is a clique, {u,v}E(G)\{u,v\}\in E(G). It follows that vertices {u,x,y,v}\{u,x,y,v\} forms a claw in GG with uu as its centre, a contradiction. This proves Condition 2, and completes the proof of the forward direction.
Sufficiency: On the contrary assume that GG is not claw free. No claw in GG can have its centre vertex in the set II, since for any vv in II, the set NG(v)CN_{G}(v)\subseteq C and hence induces a clique in GG. So every claw in GG has its centre vertex in the set CC. Consider a claw with the vertex set {v,x,y,z}\{v,x,y,z\}, with the centre vv being in CC. No two of the other three vertices of the claw can be in CC, because then there would be an edge between them. So at most one of {x,y,z}\{x,y,z\} is in CC, and the rest (of which there are at least two) are in II. It follows that if GG contains a claw, then ΔGI2\Delta_{G}^{I}\geq 2. Equivalently, if ΔGI1\Delta_{G}^{I}\leq 1 then GG is claw-free. Finally, consider the case where ΔGI=2\Delta_{G}^{I}=2. Suppose the vertex set {v,x,y,z}\{v,x,y,z\} induces a claw in GG, with its centre vertex being vv. Then vv is in CC, and at least two of {x,y,z}\{x,y,z\} are in II, as we argued above. Since ΔGI=2\Delta_{G}^{I}=2 we get that exactly two of {x,y,z}\{x,y,z\}, say xx and yy, are in II. Then zz is in CC, and {x,z},{y,z}E(G)\{x,z\},\{y,z\}\notin E(G). It follows that NGI(v)NGI(z)=N^{I}_{G}(v)\cap N^{I}_{G}(z)=\emptyset which is a contradiction to Condition 2. Therefore, our assumption that there exist a claw in GG is wrong, and this completes the sufficiency. Therefore, the theorem follows.\hfill\squareforqed

Lemma 1

For a claw-free split graph GG, if ΔGI=2\Delta_{G}^{I}=2, then |I|3|I|\leq 3.

Proof

Since ΔGI=2\Delta_{G}^{I}=2, let there exist a vertex vCv\in C such that dGI(v)=2d_{G}^{I}(v)=2. On the contrary, assume that |I|>3|I|>3, that is, {a,b,c,d}I\{a,b,c,d\}\subseteq I such that NGI(v)={a,b}N_{G}^{I}(v)=\{a,b\}. Let X=NG(a)X=N_{G}(a) and Y=NG(b)Y=N_{G}(b) as shown in Figure 1. If there exist a vertex tCt\in C such that tXt\notin X, and tYt\notin Y, then vertices {a,b,v,t}\{a,b,v,t\} induces a claw. Therefore, C=XYC=X\cup Y. If XYX\subseteq Y, then C{b}C\cup\{b\} induces a larger clique, which is a contradiction to the assumption on the maximality of clique CC. Therefore, XYX\not\subseteq Y and similarly, YXY\not\subseteq X. It follows that, XYX-Y\neq\emptyset and YXY-X\neq\emptyset. For every vertex vXYv\in X\cap Y, {v,c}E(G)\{v,c\}\notin E(G) and {v,d}E(G)\{v,d\}\notin E(G) otherwise, NGI(v){v}N_{G}^{I}(v)\cup\{v\} induces K1,3K_{1,3}.

Refer to caption
Refer to caption

Case 1            Case 2

Figure 1: An illustration for the proof of Lemma 1

Therefore, the vertices c,dc,d can have adjacency in two disjoint sets XYX-Y or YXY-X.
Case 1: NG(c)XN_{G}(c)\cap X\neq\emptyset and NG(d)YN_{G}(d)\cap Y\neq\emptyset. Edge {u,c}E(G)\{u,c\}\in E(G) where uXYu\in X-Y and {z,d}E(G)\{z,d\}\in E(G) where zYXz\in Y-X. Observe that {a,z},{c,z}E(G)\{a,z\},\{c,z\}\notin E(G) otherwise NGI(z){z}N_{G}^{I}(z)\cup\{z\} induces K1,3K_{1,3}. Similarly, {d,u}E(G)\{d,u\}\notin E(G) otherwise NGI(u){u}N_{G}^{I}(u)\cup\{u\} induces K1,3K_{1,3}. From the discussion, it follows that the vertices {u,a,c,z}\{u,a,c,z\} induces a claw, which is a contradiction. Similar argument holds for NG(c)YN_{G}(c)\cap Y\neq\emptyset and NG(d)XN_{G}(d)\cap X\neq\emptyset.
Case 2: NG(c)XN_{G}(c)\subseteq X and NG(d)XN_{G}(d)\subseteq X. Let {c,u},{d,w}E(G)\{c,u\},\{d,w\}\in E(G) such that u,wXYu,w\in X-Y. Note that there exist at least one vertex zYXz\in Y-X. If {c,z}E(G)\{c,z\}\notin E(G), then the vertices {u,a,c,z}\{u,a,c,z\} induces a claw. If {c,z}E(G)\{c,z\}\in E(G), then the vertices {w,a,d,z}\{w,a,d,z\} induces a claw as, {d,z}E(G)\{d,z\}\notin E(G). The argument is symmetric for NG(c)YN_{G}(c)\subseteq Y and NG(d)YN_{G}(d)\subseteq Y.
Cases 1 and 2 give a contradiction to the fact that GG is claw free. Therefore, our assumption that |I|>3|I|>3 is wrong, and hence, the lemma follows. ∎

2.1 Application: Steiner tree in K1,3K_{1,3}-free Split Graphs

Using the structural results presented in Section 2, in this section, we present a polynomial-time algorithm to find minimum Steiner tree in K1,3K_{1,3}-free split graphs. Optimum version of Steiner tree problem is defined as follows;

OPT Steiner tree(G,R) Instance: Graph G(V,E)G(V,E), Terminal Set RV(G)R\subseteq V(G) Question: Find a minimum cardinality set SV(G)\RS\subseteq V(G)\backslash R such that G[SR]G[S\cup R] is connected?

We here consider the Steiner tree problem on split graph G0=I0+C0G^{0}=I^{0}+C^{0}. Due to pruning, we iteratively construct split graphs G1G^{1}, G2G^{2} from the input graph G=G0G=G^{0}. We simplify the input by pruning the vertices which are not part of any optimum solution. The pruned graph G1G^{1} is the graph induced on the vertex set V(G0)\(S1S2S3)V(G^{0})\backslash(S_{1}\cup S_{2}\cup S_{3}). Clearly, G1G0G^{1}\sqsubseteq G^{0} and let G1=I1+C1G^{1}=I^{1}+C^{1}. We prune three sets of vertices S1,S2,S3S_{1},S_{2},S_{3} one after the other and are defined as follows. S1=S_{1}= {aI0\{a\in I^{0} |aR}|~a\notin R\}. S2=S_{2}= {uC0\{u\in C^{0} |uR|~u\notin R and NGI0(u)R=}N_{G}^{I^{0}}(u)\cap R=\emptyset\}. Let R={vC0|vR}R^{{}^{\prime}}=\{v\in C^{0}~|~v\in R\}. S3=S_{3}= vR{v}NGI0(v)\bigcup\limits_{v\in R^{{}^{\prime}}}\{v\}\cup N_{G}^{I^{0}}(v). Consider the Steiner tree optimization problems P1P_{1}, and P2P_{2} defined as follows.
P1P_{1}: OPT Steiner tree(G0,RG^{0},R)
P2P_{2}: OPT Steiner tree(G1,R\S3G^{1},R\backslash S_{3})

Lemma 2

An optimum solution QQ to P2P_{2} is also an optimum solution to P1P_{1}.

Proof

Note that the first two sets S1,S2S_{1},S_{2} pruned from G0G^{0} are not part of any optimum solution. S3RS_{3}\subseteq R induces a connected subgraph of G0G^{0} which is also pruned to obtain G1G^{1}. If V(G1)R=V(G^{1})\cap R=\emptyset, then Steiner set of P2P_{2} is empty. i.e., RR induces a connected subgraph of G0G^{0}. On the other hand if V(G1)RV(G^{1})\cap R\neq\emptyset, then there exist at least one vertex vC1v\in C^{1} in the Steiner set QQ of P2P_{2}. QC1Q\subseteq C^{1} connects all terminal vertices R\S3R\backslash S_{3}. If S3S_{3}\neq\emptyset, then there exist at least one vertex uS3u\in S_{3} such that uC0u\in C^{0} and uRu\in R. {u,v}E(G0)\{u,v\}\in E(G^{0}) and therefore, QRQ\cup R induces a connected subgraph of G0G^{0} and QQ is a minimum Steiner set for P1P_{1}. Hence, the lemma follows. ∎

2.1.1 A polynomial-time algorithm to find a minimum Steiner tree

Given a K1,3K_{1,3}-free split graph G0G^{0} with terminal vertex set RV(G0)R\subseteq V(G^{0}), we present a polynomial-time algorithm to find a minimum Steiner tree. As part of preprocessing step, we prune the sets S1,S_{1}, and S2S_{2}, which are not part of any optimum solution. Further, we delete terminals which are in CC, and their neighbours in II, namely the set S3S_{3}. Now we have an instance of Steiner Tree in claw-free split graphs where all the terminals are in the independent set. An optimum solution to the pruned graph is also an optimum solution to the original graph by the previous lemma. We now present a sketch of algorithm and the detailed one is presented in Algorithm 1. If ΔGI=0\Delta_{G}^{I}=0, then the instance is trivial. If ΔGI=1\Delta_{G}^{I}=1, then Steiner set should contain one neighbor vertex in CC of each terminal in II. In the remaining case, ΔGI=2\Delta_{G}^{I}=2 and therefore, by Lemma 1 |I|3|I|\leq 3. The only non-trivial case is when |I|=3|I|=3. From the constraints of the instance, we know that it is necessary and sufficient to pick exactly two Steiner vertices from CC in this case.

Algorithm 1 Steiner tree in Claw free Split graphs. Steiner_tree(G0,RG^{0},R)
1:/*G0G^{0} is a claw-free split graph and RR \subseteq V(G0)V(G^{0}) is the set of terminal vertices */
2: Find the pruned graph G1G^{1}=Pruning(G0,RG^{0},R)
3:Initialize the output set of Steiner vertices S=S=\emptyset and unmark every vertices in I1V(G1)I^{1}\subseteq V(G^{1})
4:if  ΔG1I=1\Delta_{G^{1}}^{I}=1 then
5:for every unmarked vertex dI1d\in I^{1} do
6:  include wC1w\in C^{1} in SS where {d,w}E(G1)\{d,w\}\in E(G^{1}).
7:  mark vertex dd.
8:end for
9:else
10: include vertex xC1x\in C^{1} in SS where |NG1I(x)|=2|N_{G^{1}}^{I}(x)|=2. i.e.,NG1I(x)={a,b}N_{G^{1}}^{I}(x)=\{a,b\}
11:if |I1|=3|I^{1}|=3. i.e.,I1={a,b,c}I^{1}=\{a,b,c\} then
12:  include yC1y\in C^{1} in SS where {c,y}E(G1)\{c,y\}\in E(G^{1})
13:end if
14:end if
15:Run standard Breadth First Search in the graph G[SR]G[S\cup R] and output the BFS tree.
Algorithm 2 Pruning the input instance of Steiner tree. Pruning(G0,RG^{0},R)
1:/* G0:G^{0}:input claw-free split graph, R:R:set of terminal vertices */
2:Find the sets S1,S2,S3S_{1},S_{2},S_{3} in order and prune those vertices from G0G^{0}. i.e., G1=G0\SG^{1}=G^{0}\backslash S where S=S1S2S3S=S_{1}\cup S_{2}\cup S_{3}
3:Return the pruned graph G1G^{1}.

2.1.2 Proof of Correctness of Algorithm 1


By Lemma 2, a minimum Steiner set of pruned graph G1G^{1} is an optimum Steiner set for G0G^{0}. Therefore, pruning in Step 11 is a solution preserving operation. We present a case analysis to show that our algorithm outputs a minimum Steiner tree of a claw-free split graph.
Case 1: ΔG1I1\Delta^{I}_{G^{1}}\leq 1. Note that for every vertex dI1d\in I^{1}, Step 55 includes exactly one vertex wNG1(d)w\in N_{G^{1}}(d) in SS, which is a minimum Steiner set.
Case 2: ΔG1I=2\Delta^{I}_{G^{1}}=2. Observe |I|3|I|\leq 3 by Lemma 1. |S|=1,2|S|=1,2 for |I|=2,3|I|=2,3, respectively, which is done by Steps 9,119,11. Therefore, SS is a minimum Steiner set for G1G^{1}, and by Lemma 2, SS is also a minimum Steiner set for G0G^{0}. Step 1414 outputs a Steiner tree by running standard Breadth First Search algorithm on G[SR]G[S\cup R].

2.1.3 Run Time Analysis


We represent the input claw-free split graph using an adjacency list, as we can easily find a neighbor of a given vertex. Vertices in adjacency list are arranged such that C0C^{0} follow I0I^{0}. Intuition behind this ordering is that, first neighbor of a vertex vC0v\in C^{0} encountered in the list is always a vertex uI0u\in I^{0}, if it exists. If ΔG1I=1\Delta^{I}_{G^{1}}=1, then uNG1(v)u\in N_{G^{1}}(v) can be determined in constant time. Therefore, Algorithm 1 takes linear time O(n),n=|V(G0)|O(n),n=|V(G^{0})| to output a minimum Steiner set.

3 K1,4K_{1,4}-free Split Graphs: Structural Results

In this section, we first analyze the structure of K1,4K_{1,4}-free split graphs. Subsequently we investigate Steiner tree problem restricted to K1,4K_{1,4}-free split graphs. Towards this end, we give a nice bound on the cardinality of any minimum Steiner set. Further, we present a structural characterization of K1,4K_{1,4}-free split graph meeting the bound. Interestingly, the characterization yields a polynomial-time algorithm to output a minimum Steiner tree, which we shall present in Section 3.1.
Before we present the structural results, we introduce some additional terminologies. A split graph GG is a ll-split graph if ΔGI=l\Delta_{G}^{I}=l. Note that a K1,4K_{1,4}-free split graph is a ll-split graph for some l,0l3l,0\leq l\leq 3, and the converse does not always hold. In a split graph GG, closed neighborhood of a vertex uCu\in C is [N(u)]={u}NGI(u)[N(u)]=\{u\}\cup N_{G}^{I}(u). For a ll-split graph G=I+C,0l2G=I+C,0\leq l\leq 2, we construct a labeled graph MM such that V(M)=IV(M)=I and E(M)={{a,b}|a,bIE(M)=\{\{a,b\}~|~a,b\in I and NG(a)NG(b)}N_{G}(a)\cap N_{G}(b)\neq\emptyset\} and label the edge {a,b}\{a,b\} as vabv_{ab}. Note that vv in vabv_{ab} denotes a vertex vNG(a)NG(b)v\in N_{G}(a)\cap N_{G}(b). Also, we pick exactly one vNG(a)NG(b)v\in N_{G}(a)\cap N_{G}(b) to label the edge {a,b}\{a,b\}. For any edge set EE(M)E^{*}\subseteq E(M), we define the corresponding vertex set VV^{*} as follows. Corresponding to each edge {a,b}E\{a,b\}\in E^{*}, include exactly one vertex vNG(a)NG(b)v\in N_{G}(a)\cap N_{G}(b) in VV^{*}. It follows that, VCV^{*}\subseteq C and |V|=|E||V^{*}|=|E^{*}|. Clearly, |V||E||V^{*}|\leq|E^{*}| as we are including not more than one vertex in VV^{*} corresponding to each edge in EE^{*}. Suppose |V|<|E||V^{*}|<|E^{*}|, then there exist at least two edges labelled vab,vcdv_{ab},v_{cd} in EE^{*} such that vNG(a)NG(b)v\in N_{G}(a)\cap N_{G}(b) and vNG(c)NG(d)v\in N_{G}(c)\cap N_{G}(d). Since edges {a,b},{c,d}E\{a,b\},\{c,d\}\in E^{*} can share atmost one vertex in common, it follows that, dGI(v)3d^{I}_{G}(v)\geq 3, which is a contradiction as GG is ll-split, l2l\leq 2 and MM is the labelled graph of GG. Therefore, |V|=|E||V^{*}|=|E^{*}|. We also define the Corresponding clique set VcV^{c} of a vertex set VIV^{\prime}\subseteq I as follows. Corresponding to each vertex uVu\in V^{\prime}, include exactly one vertex ww in VcV^{c} such that {u,w}E(G)\{u,w\}\in E(G). Clearly, VcCV^{c}\subseteq C and |Vc||V||V^{c}|\leq|V^{\prime}|. For a 11-split graph, |Vc|=|V||V^{c}|=|V^{\prime}|. We now present some structural observations on K1,4K_{1,4}-free split graphs.

Lemma 3

Let GG be a 33-split graph. GG is K1,4K_{1,4} free if and only if for every uV3u\in V_{3} and for every vuCv\neq u\in C, NGI(u)NGI(v)N_{G}^{I}(u)\cap N_{G}^{I}(v)\neq\emptyset.

Proof

Necessity: On the contrary, let us assume there exist vCv\in C such that NGI(u)NGI(v)=N_{G}^{I}(u)\cap N_{G}^{I}(v)=\emptyset. Since dGI(u)=3d_{G}^{I}(u)=3, vertices {u,v}NGI(u)\{u,v\}\cup N_{G}^{I}(u) induces a K1,4K_{1,4}, which is a contradiction and the necessary condition follows.
Sufficiency: On the contrary, assume that GG is not K1,4K_{1,4} free and there exists a K1,4K_{1,4} induced on {u,v,w,x,y}\{u,v,w,x,y\} with uu as the centre vertex. No K1,4K_{1,4} in GG can have its centre vertex in the set II, since for any uu in II, the set NG(u)N_{G}(u) is a subset of the set CC and hence induces a clique in GG. So every K1,4K_{1,4} in GG has its centre vertex in the set CC particularly, uCu\in C. Since GG is a 33-split graph, dGI(u)=3d_{G}^{I}(u)=3. This implies that there exist at least one vertex of K1,4K_{1,4}, say vCv\in C, and uV3u\in V_{3}. It follows that NGI(u)NGI(v)=N_{G}^{I}(u)\cap N_{G}^{I}(v)=\emptyset, which is a contradiction and the sufficiency follows. This completes the proof of the lemma. ∎

Corollary 1

Let GG be a K1,4K_{1,4}-free 33-split graph. For any vCv\in C, the graph HH induced on the vertex set V(G)NGI(v)V(G)\setminus N_{G}^{I}(v) is a ll-split graph for some 0l20\leq l\leq 2.

On the contrary, suppose there exists a vertex wCw\in C such that dHI(w)=3d_{H}^{I}(w)=3. i.e., wV3w\in V_{3}. It follows that NGI(w)NGI(v)=N_{G}^{I}(w)\cap N_{G}^{I}(v)=\emptyset. By previous lemma, NGI(w){w,v}N_{G}^{I}(w)\cup\{w,v\} induces a K1,4K_{1,4}, which is a contradiction. ∎

Corollary 2

Let GG be a K1,4K_{1,4}-free split graph and vCv\in C. If NGI(v)={v1,v2,v3}N_{G}^{I}(v)=\{v_{1},v_{2},v_{3}\}, then NG(v1)NG(v2)NG(v3)=CN_{G}(v_{1})\cup N_{G}(v_{2})\cup N_{G}(v_{3})=C.

Proof

By Lemma 3, for every uCu\in C, NGI(v)NGI(u)N_{G}^{I}(v)\cap N_{G}^{I}(u)\neq\emptyset. This implies that for every uCu\in C, {v1,v2,v3}NGI(u)\{v_{1},v_{2},v_{3}\}\cap N_{G}^{I}(u)\neq\emptyset. It follows that NG(v1)NG(v2)NG(v3)=CN_{G}(v_{1})\cup N_{G}(v_{2})\cup N_{G}(v_{3})=C. ∎

Now onwards, we investigate the Steiner tree problem on K1,4K_{1,4}-free split graphs. For our discussions on Steiner tree problem, we fix the terminal set RR to be II. Observe that ll-split graphs for l=1,2l=1,2 are K1,4K_{1,4}-free split graphs. If GG is a 11-split graph, then there does not exist a vertex vCv\in C such that dGI(v)2d_{G}^{I}(v)\geq 2. Therefore, the corresponding clique set of II forms the minimum Steiner set SS of GG where |S|=|I||S|=|I|. We shall now consider 22-split graphs for discussions. For a 22-split graph GG, recall that the labelled graph MM is such that V(M)=IV(M)=I, E(M)={{a,b}|a,bIE(M)=\{\{a,b\}~|~a,b\in I and there exist vCv\in C such that {a,b}=NGI(v)}\{a,b\}=N_{G}^{I}(v)\}. The following lemma gives the cardinality of a minimum Steiner set of any 22-split graphs.

Lemma 4

Let GG be a 22-split graph, and MM be the labeled graph of GG with α(M)=k\alpha(M)=k. Then any minimum Steiner set SS of GG is such that |S|=|I|k|S|=|I|-k.

Proof

If MM is a connected graph, then the minimum Steiner set in GG corresponds to the minimum edge cover in MM. For any graph MM with maximum matching PP, the cardinality of minimum edge cover is |V(M)||P||V(M)|-|P|. Therefore, a minimum Steiner set SS is such that |S|=|V(M)||P|=|I|k|S|=|V(M)|-|P|=|I|-k. If MM is not connected, let C1,C2,,CrC_{1},C_{2},\ldots,C_{r} be the components such that C1,C2,,Ci,irC_{1},C_{2},\ldots,C_{i},i\leq r are non-trivial components with at least one edge and Ci+1,Ci+2,,CrC_{i+1},C_{i+2},\ldots,C_{r} are trivial ones. For components C1,C2,,CiC_{1},C_{2},\ldots,C_{i}, we find the maximum matching PP where k=|P|k=|P| and QCQ\subseteq C be the corresponding vertex set of the matching PP. Clearly, |NGI(Q)|=2|Q|=2|P|=2k|N_{G}^{I}(Q)|=2|Q|=2|P|=2k. Let QQ^{\prime} be the corresponding clique set of I\NGI(Q)I\backslash N_{G}^{I}(Q). From the definition of the corresponding clique set, |Q||I\NGI(Q)||Q^{\prime}|\leq|I\backslash N_{G}^{I}(Q)|. Note that, there does not exist two vertices x,yI\NGI(Q)x,y\in I\backslash N_{G}^{I}(Q) such that NG(x)NG(y)N_{G}(x)\cap N_{G}(y)\neq\emptyset, otherwise it contradicts the maximality of PP. Since there does not exist the possibility to have two such vertices x,yI\NGI(Q)x,y\in I\backslash N_{G}^{I}(Q), it follows that |Q|=|I\NGI(Q)||Q^{\prime}|=|I\backslash N_{G}^{I}(Q)| and the graph induced on V(G)\NGI(Q)V(G)\backslash N_{G}^{I}(Q) is a 11-split graph. Therefore, |Q|=|I|2k|Q^{\prime}|=|I|-2k, and INGI(Q)NGI(Q)I\setminus N_{G}^{I}(Q)\subseteq N_{G}^{I}(Q^{\prime}). It follows that the set S=QQS=Q^{\prime}\cup Q forms a Steiner set of GG and |S|=|I|2k+k=|I|k|S|=|I|-2k+k=|I|-k. ∎

Lemma 5

For any 22-split graph GG, OPT Steiner tree problem is polynomial-time solvable.

Proof

Finding the labeled graph MM of GG, incurs O(n)O(n) effort where n=|V(G)|n=|V(G)|. Maximum matching PP of MM can be found in O(n32)O(n^{\frac{3}{2}}) time. Note that the corresponding vertex set QQ of PP can be found in linear time. Similarly, the corresponding clique set also can be obtained in linear time. Therefore, the overall running time for finding the Steiner set is O(n32)O(n^{\frac{3}{2}}) and OPT Steiner tree in any 22-split graph is polynomial-time solvable. ∎

The following lemma characterizes a special 22-split graph constructed from a 33-split graph. Particularly, Lemma 6 gives an upper bound on the matching size of the labelled graph of a 22-split graph.

Lemma 6

Let G1=I1+C1G^{1}=I^{1}+C^{1} be a K1,4K_{1,4}-free 33-split graph. For any xV3x\in V_{3}, let G2G^{2} be the graph induced on V(G1)\NG1I(x)V(G^{1})\backslash N^{I}_{G^{1}}(x), and MM be the labelled graph of G2G^{2}. Then size of any maximum matching α(M)2\alpha(M)\leq 2

Proof

Recall from Corollary 1 that, G2G^{2} is a ll-split graph for some 0l20\leq l\leq 2. On the contrary, let α(M)3\alpha(M)\geq 3. Let vertices {a,b,c,d,e,f}V(M)\{a,b,c,d,e,f\}\subseteq V(M) be those vertices participating in the matching of size at least 33 such that {u,v,w}C1\{u,v,w\}\subseteq C^{1} and {a,b}NG1I(u)\{a,b\}\subseteq N^{I}_{G^{1}}(u), {c,d}NG1I(v)\{c,d\}\subseteq N^{I}_{G^{1}}(v), {e,f}NG1I(w)\{e,f\}\subseteq N^{I}_{G^{1}}(w) as shown in Figure 2. Clearly, from Lemma 3, NG1I(x)NG1I(u)N_{G^{1}}^{I}(x)\cap N_{G^{1}}^{I}(u)\neq\emptyset. Similarly, NG1I(x)NG1I(v)N_{G^{1}}^{I}(x)\cap N_{G^{1}}^{I}(v)\neq\emptyset and NG1I(x)NG1I(w)N_{G^{1}}^{I}(x)\cap N_{G^{1}}^{I}(w)\neq\emptyset. We consider the following scenario.

Refer to caption
Figure 2: An illustration for the proof of lemma 6

Suppose {g,v}E(G1)\{g,v\}\in E(G^{1}) and {g,u}E(G1)\{g,u\}\notin E(G^{1}). Since NG1I(x)NG1I(u)N_{G^{1}}^{I}(x)\cap N_{G^{1}}^{I}(u)\neq\emptyset, without loss of generality, {h,u}E(G1)\{h,u\}\in E(G^{1}). Observe that {u,v}NG1I(v)\{u,v\}\cup N_{G^{1}}^{I}(v) induces a K1,4K_{1,4}. Therefore, {g,u}E(G1)\{g,u\}\in E(G^{1}). Similar argument holds true for ww and {g,w}E(G1)\{g,w\}\in E(G^{1}). Since the clique C1C^{1} is maximal, gg is not adjacent to all vertices of C1C^{1}, and therefore there exist yC1y\in C^{1} such that {g,y}E(G1)\{g,y\}\notin E(G^{1}). Clearly, NG1I(y)NG1I(u)N_{G^{1}}^{I}(y)\cap N_{G^{1}}^{I}(u)\neq\emptyset, NG1I(y)NG1I(v)N_{G^{1}}^{I}(y)\cap N_{G^{1}}^{I}(v)\neq\emptyset and NG1I(y)NG1I(w)N_{G^{1}}^{I}(y)\cap N_{G^{1}}^{I}(w)\neq\emptyset. Observe that in G2,dG2I(y)=3G^{2},d_{G^{2}}^{I}(y)=3, and G2G^{2} is not a ll-split graph, l2l\leq 2. This is a contradiction to Corollary 1. It follows that our assumption α(M)3\alpha(M)\geq 3 is wrong and therefore, α(M)2\alpha(M)\leq 2. This completes the proof of the lemma. ∎

We now present some structural observations pertaining to 33-split graphs.

Lemma 7

For a K1,4K_{1,4}-free 33-split graph G1G^{1}, any Steiner set SS of G1G^{1} is such that |S||I1|5|S|\geq|I^{1}|-5.

Proof

Observe that V3V_{3}\neq\emptyset as G1G^{1} is 33-split. For any vV3v\in V_{3}, G2G^{2} is the graph induced on V(G1)\NG1I(v)V(G^{1})\backslash N^{I}_{G^{1}}(v). By Corollary 1, G2G^{2} is a ll-split graph, l2l\leq 2. Let S2S^{2} be the minimum Steiner set of G2G^{2} such that NG2I(S2)=I2N_{G^{2}}^{I}(S^{2})=I^{2} and |I2|=|I1|3|I^{2}|=|I^{1}|-3. If MM is the labeled graph of G2G^{2}, then by Lemma 6, α(M)2\alpha(M)\leq 2. Let {{a,b},{c,d}}E(M)\{\{a,b\},\{c,d\}\}\subseteq E(M) be the matching edges of a maximum matching in MM. Observe that there exist two vertices v1,v2C2v_{1},v_{2}\in C^{2} such that NG2I(v1)={a,b}N_{G^{2}}^{I}(v_{1})=\{a,b\}, NG2I(v2)={c,d}N_{G^{2}}^{I}(v_{2})=\{c,d\}. Notice that for each vertex wI2\{a,b,c,d}w\in I^{2}\backslash\{a,b,c,d\}, there exist a vertex uC2\{v1,v2}u\in C^{2}\backslash\{v_{1},v_{2}\} in S2S^{2} such that {w,u}E(G2)\{w,u\}\in E(G^{2}). The graph induced on V(G2)\{a,b,c,d}V(G^{2})\backslash\{a,b,c,d\} is a 11-split graph, |S2||I2|4+2|S^{2}|\geq|I^{2}|-4+2 and it follows that |S2||I1|32=|I1|5|S^{2}|\geq|I^{1}|-3-2=|I^{1}|-5. It can be concluded that |S||I1|5|S|\geq|I^{1}|-5 as |S||S2||S|\geq|S^{2}|. This completes the proof of the lemma. ∎

We below characterize K1,4K_{1,4}-free 33-split graphs based on the cardinality of a minimum Steiner set. In particular, in Theorem 3.2, we characterize K1,4K_{1,4}-free split graphs whose minimum Steiner set is |I1|4|I^{1}|-4, and in Theorem 3.3, we characterize K1,4K_{1,4}-free split graphs whose minimum Steiner set is |I1|3|I^{1}|-3. To present Theorem 3.1 to Theorem 3.4, we fix the following notation. Let G1=I1+C1G^{1}=I^{1}+C^{1} be a K1,4K_{1,4}-free 33-split graph. For any uV3u\in V_{3}, let G2=I2+C2G^{2}=I^{2}+C^{2} be the graph induced on V(G1)\NG1I(u)V(G^{1})\backslash N^{I}_{G^{1}}(u), and MM be the labelled graph of G2G^{2}. In Theorem 3.1, we present a stronger result of Lemma 7.

Theorem 3.1

For a K1,4K_{1,4}-free 33-split graph G1G^{1}, any minimum Steiner set SS of G1G^{1} is such that |S||I1|4|S|\geq|I^{1}|-4.

Proof

On the contrary assume that there exist a minimum Steiner set SC1S\subseteq C^{1} such that |S||I1|5|S|\leq|I^{1}|-5.
Suppose that SV3=S\cap V_{3}=\emptyset. Note that V3V_{3}\neq\emptyset, say uV3u\in V_{3} and for every vertex zSz\in S, NG1I(z)NG1I(u)N_{G^{1}}^{I}(z)\cap N_{G^{1}}^{I}(u)\neq\emptyset as per Lemma 3. i.e., for every zSz\in S, there exist an edge {z,i}E(G1)\{z,i\}\in E(G^{1}), where iNG1I(u)i\in N_{G^{1}}^{I}(u). The graph G2=I2+C2G^{2}=I^{2}+C^{2} induced on V(G1)\NG1I(u)V(G^{1})\backslash N_{G^{1}}^{I}(u) is a ll-split graph, l2l\leq 2 by Corollary 1. Consider the Steiner set S2C2S^{2}\subseteq C^{2} of G2G^{2} such that NG2I(S2)=I2N_{G^{2}}^{I}(S^{2})=I^{2}. Note that |S2|=|I2||S^{2}|=|I^{2}| as G2G^{2} is a ll-split graph, l2l\leq 2 and for each vertex wS2w\in S^{2}, NG1I(w)NG1I(u)N_{G^{1}}^{I}(w)\cap N_{G^{1}}^{I}(u)\neq\emptyset. Notice that |I2|=|I1|3|I^{2}|=|I^{1}|-3 and |S||S2||S|\geq|S^{2}| implies that |S||I1|3|S|\geq|I^{1}|-3. This shows that SV3=S\cap V_{3}=\emptyset is not possible.
Next we shall consider the scenario SV3S\cap V_{3}\neq\emptyset. Consider the ll-split graph, l2l\leq 2 G2G^{2} induced on V(G1)\NG1I(u)V(G^{1})\backslash N_{G^{1}}^{I}(u) where uSV3u\in S\cap V_{3}. Let the labeled graph of G2G^{2} be MM. For S=S\{u}S^{{}^{\prime}}=S\backslash\{u\} and V=I1\NG1I(u)V^{{}^{\prime}}=I^{1}\backslash N_{G^{1}}^{I}(u) note that NG2I(S)=VN^{I}_{G^{2}}(S^{{}^{\prime}})=V^{{}^{\prime}}. Clearly, |S|=|S|1|I1|51|S^{{}^{\prime}}|=|S|-1\leq|I^{1}|-5-1 and |V|=|I1||NG1I(u)|=|I1|3|V^{{}^{\prime}}|=|I^{1}|-|N_{G^{1}}^{I}(u)|=|I^{1}|-3. We now claim that there exist at least 33 vertices say {v1,v2,v3}S\{v_{1},v_{2},v_{3}\}\subseteq S^{{}^{\prime}} such that dG2I(vi)=2d^{I}_{G^{2}}(v_{i})=2, i=1,2,3i=1,2,3 and NG2I(vi)NG2I(vj)=N^{I}_{G^{2}}(v_{i})\cap N^{I}_{G^{2}}(v_{j})=\emptyset, 1ij31\leq i\neq j\leq 3. Suppose if there exist at most two vertices v1,v2Sv_{1},v_{2}\in S^{{}^{\prime}} such that dG2I(v1)=dG2I(v2)=2d_{G^{2}}^{I}(v_{1})=d_{G^{2}}^{I}(v_{2})=2 and NG2I(v1)NG2I(v2)=N^{I}_{G^{2}}(v_{1})\cap N^{I}_{G^{2}}(v_{2})=\emptyset, then observe that |V||S|+2|V^{{}^{\prime}}|\leq|S^{{}^{\prime}}|+2. It follows that |V||I1|6+2=|I1|4|V^{{}^{\prime}}|\leq|I^{1}|-6+2=|I^{1}|-4, which is a contradiction as |V||V^{{}^{\prime}}| is |I1|3|I^{1}|-3. Therefore, there exist at least 33 vertices v1,v2,v3Sv_{1},v_{2},v_{3}\in S^{{}^{\prime}} such that dG2I(vi)=2d^{I}_{G^{2}}(v_{i})=2, i=1,2,3i=1,2,3 and NG2I(vi)NG2I(vj)=N^{I}_{G^{2}}(v_{i})\cap N^{I}_{G^{2}}(v_{j})=\emptyset, 1ij31\leq i\neq j\leq 3. Consider the labeled graph MM of G2G^{2}. There exist {a,b,c,d,e,f}I2\{a,b,c,d,e,f\}\subseteq I^{2} such that {a,b}=NG2I(v1)\{a,b\}=N_{G^{2}}^{I}(v_{1}), {c,d}=NG2I(v2)\{c,d\}=N_{G^{2}}^{I}(v_{2}), {e,f}=NG2I(v3)\{e,f\}=N_{G^{2}}^{I}(v_{3}). It follows that {a,b}\{a,b\}, {c,d}\{c,d\}, {e,f}\{e,f\} forms a matching of size 33 in MM which is a contradiction to Lemma 6. Therefore our assumption is wrong and |S||I1|4|S|\geq|I^{1}|-4. This completes the proof. ∎

We show in Theorem 3.2 that the lower bound in Theorem 3.1 is tight.

Theorem 3.2

For any minimum Steiner set SS of G1G^{1}, |S|=|I1|4|S|=|I^{1}|-4 if and only if α(M)=2\alpha(M)=2.

Proof

Necessity: If SV3=S\cap V_{3}=\emptyset, then for every vertex zSz\in S, NG1I(z)NG1I(u)N_{G^{1}}^{I}(z)\cap N_{G^{1}}^{I}(u)\neq\emptyset. i.e., for every zSz\in S, there exist an edge {z,i}E(G1)\{z,i\}\in E(G^{1}), where iNG1I(u)i\in N_{G^{1}}^{I}(u). Similar to the proof of Theorem 3.1, it follows that |S||I1|3|S|\geq|I^{1}|-3. Therefore, SV3S\cap V_{3}\neq\emptyset. Let uSV3u\in S\cap V_{3} and the graph G2G^{2} induced on vertex set V(G1)\NG1I(u)V(G^{1})\backslash N_{G^{1}}^{I}(u) is a ll-split graph, l2l\leq 2 by Corollary 1. Let S=S\{u}S^{{}^{\prime}}=S\backslash\{u\}. Clearly in NG2I(S)=I2N_{G^{2}}^{I}(S^{{}^{\prime}})=I^{2}. Note that |S|=|I1|5|S^{{}^{\prime}}|=|I^{1}|-5 and |I2|=|I1|3|I^{2}|=|I^{1}|-3. This implies that there exist a matching of size at least 22 in MM. From Lemma 6, α(M)2\alpha(M)\leq 2. Therefore, α(M)=2\alpha(M)=2.
Sufficiency: Let {a,b},{c,d}E(M)\{a,b\},\{c,d\}\in E(M) be the edges that form the matching of size 22 such that label({a,b})=vab\{a,b\})=v_{ab} and label({c,d})=wcd\{c,d\})=w_{cd}. Clearly, dG1I(u)=dG1I(v)=dG1I(w)=3d_{G^{1}}^{I}(u)=d_{G^{1}}^{I}(v)=d_{G^{1}}^{I}(w)=3 and |NG1I(X)|=7|N_{G^{1}}^{I}(X)|=7, where X={u,v,w}X=\{u,v,w\}. Let YY be the corresponding clique set of I1\NG1I(X)I^{1}\backslash N_{G^{1}}^{I}(X). Observe that XYX\cup Y forms a Steiner set of G1G^{1}, |Y|=|I1|7|Y|=|I^{1}|-7 and |XY|=|I1|4|X\cup Y|=|I^{1}|-4. This completes the proof. ∎

Apart from the labelled graph MM, we make use of one more labelled graph in Theorem 3.3, which is defined as follows. H2=IH2+CH2H^{2}=I^{2}_{H}+C^{2}_{H} is the ll-split graph, l2l\leq 2 induced on the vertex set V(G1)\V3V(G^{1})\backslash V_{3}, and M2M^{2} is the labeled graph of H2H^{2}. Note that the two labeled graphs MM and M2M^{2}, are constructed differently. MM is constructed on the vertex set V(M)=I1\NG1I(u)V(M)=I^{1}\backslash N_{G^{1}}^{I}(u) whereas M2M^{2} is the labeled graph on V(M2)=I1V(M^{2})=I^{1}. We fix SC1S\subseteq C^{1} to be a minimum Steiner set of G1G^{1}. The following theorem characterizes K1,4K_{1,4}-free 33-split graphs with |S|=|I1|3|S|=|I^{1}|-3.

Theorem 3.3

|S|=|I1|3|S|=|I^{1}|-3 if and only if one of the following is true.
1. SV3S\cap V_{3}\neq\emptyset and α(M)=1\alpha(M)=1.
2. SV3=S\cap V_{3}=\emptyset and α(M2)=3\alpha(M^{2})=3.

Proof

Necessity: If |S|=|I1|3|S|=|I^{1}|-3 then we come across the following two cases.
Case 1: SV3S\cap V_{3}\neq\emptyset.
Let uSV3u\in S\cap V_{3} and S=S\{u}S^{{}^{\prime}}=S\backslash\{u\}. Observe that, in G2G^{2}, the ll-split graph, l2l\leq 2 induced on the vertex set V(G1)\NG1I(u)V(G^{1})\backslash N_{G^{1}}^{I}(u), NG2I(S)=I2N_{G^{2}}^{I}(S^{{}^{\prime}})=I^{2}. i.e., |S|=|S|1=|I1|31|S^{{}^{\prime}}|=|S|-1=|I^{1}|-3-1 and |I2|=|I1|3|I^{2}|=|I^{1}|-3. This implies that there exist a matching of size at least 11 in MM. By Lemma 6, α(M)2\alpha(M)\leq 2. Suppose α(M)=2\alpha(M)=2, then by Theorem 3.2, |S|=|I1|4|S|=|I^{1}|-4. However, we know that |S|=|I1|3|S|=|I^{1}|-3 and therefore α(M)2\alpha(M)\neq 2. We can therefore conclude that α(M)1\alpha(M)\leq 1. If α(M)=0\alpha(M)=0, then since G1G^{1} is connected and K1,4K_{1,4}-free, |I2|=3|I^{2}|=3. In this case, S={u},|S|=|I1|2S=\{u\},|S|=|I^{1}|-2. Therefore, it follows that α(M)=1\alpha(M)=1.
Case 2: SV3=S\cap V_{3}=\emptyset.
Since SV3=S\cap V_{3}=\emptyset, SS is a minimum Steiner set in G1G^{1} and since H2H^{2} is the induced on the vertex set V(G1)\V3V(G^{1})\backslash V_{3}, SS is also a minimum Steiner set in H2H^{2}. Observe that if α(M2)=k\alpha(M^{2})=k, then the size of the minimum Steiner set in H2H^{2} is |V(IH2)|k|V(I_{H}^{2})|-k by Lemma 4. Since V(IH2)=I1V(I_{H}^{2})=I^{1} we can conclude that α(M2)=3\alpha(M^{2})=3.
Sufficiency: Case 1: SV3S\cap V_{3}\neq\emptyset and α(M)=1\alpha(M)=1
Let uSV3u\in S\cap V_{3} and {a,b}E(M)\{a,b\}\in E(M) be the edge that forms the matching of size 11, such that label({a,b}\{a,b\})=vabv_{ab}. Clearly, |NG1I(X)|=5|N_{G^{1}}^{I}(X)|=5, where X={u,v}X=\{u,v\}. Let YY be the corresponding clique set of I1\NG1I(X)I^{1}\backslash N_{G^{1}}^{I}(X). Observe that S=XYS=X\cup Y forms a Steiner set of G1G^{1}, |Y|=|I1|5|Y|=|I^{1}|-5 and |S|=|XY|=|I1|3|S|=|X\cup Y|=|I^{1}|-3.
Case 2: SV3=S\cap V_{3}=\emptyset and α(M2)=3\alpha(M^{2})=3
Let {a,b},{c,d},{e,f}E(M2)\{a,b\},\{c,d\},\{e,f\}\in E(M^{2}) be the edges that form the matching of size 33, such that label({a,b}\{a,b\})=vabv_{ab}, label({c,d}\{c,d\})=wcdw_{cd}, label({e,f}\{e,f\})=xefx_{ef}. Clearly, |NG1I(Y)|=6|N_{G^{1}}^{I}(Y)|=6, where Y={v,w,x}Y=\{v,w,x\}. Let ZZ be the corresponding clique set of I1\NG1I(Y)I^{1}\backslash N_{G^{1}}^{I}(Y). Observe that S=YZS=Y\cup Z forms a Steiner set of G1G^{1}, |Z|=|I1|6|Z|=|I^{1}|-6 and |S|=|YZ|=|I1|3|S|=|Y\cup Z|=|I^{1}|-3. This completes the proof. ∎

Theorem 3.4

|I1|4|S||I1|2|I^{1}|-4\leq|S|\leq|I^{1}|-2.

Proof

The lower bound is true by Theorem 3.1. Theorem 3.2, and Theorem 3.3 characterizes the 33-split graphs such that |S|=|I1|4|S|=|I^{1}|-4, and |S|=|I1|3|S|=|I^{1}|-3, respectively. We shall now look into the upper bound. Since G1G^{1} is 33-split, there exist uV3u\in V_{3}. Let YY be the corresponding clique set of I1\NG1I(u)I^{1}\backslash N_{G^{1}}^{I}(u). Observe that NG1I(Y{u})=I1N_{G^{1}}^{I}(Y\cup\{u\})=I^{1} and |S||Y|+1|S|\leq|Y|+1. Since |Y||I1|3|Y|\leq|I^{1}|-3, it follows that |S||I1|2|S|\leq|I^{1}|-2. Therefore the theorem. ∎

3.1 Polynomial-time algorithm to find a minimum Steiner tree

Using the structural results presented in Section 3{3}, in this section, we shall present a polynomial-time algorithm to find a minimum Steiner tree in K1,4K_{1,4}-free split graphs. Algorithm 3 finds a minimum Steiner set SS of a given K1,4K_{1,4}-free split graph G0G^{0} with RV(G0)R\subseteq V(G^{0}) being terminal vertices. Further, the minimum Steiner tree TT is obtained using standard Breadth First Search on G[RS]G[R\cup S].
We shall now present a sketch of the algorithm and a detailed one is presented in Algorithm 3. As part of preprocessing, we prune the sets S1,S2,S_{1},S_{2}, and S3S_{3} as defined in Section 2.1. Since G1G^{1} is a K1,4K_{1,4}-free split graph, G1G^{1} is ll-split, l3l\leq 3. We come across four cases as follows. If G1G^{1} is a 0-split graph, then RR is connected and the minimum Steiner set S=S=\emptyset. If G1G^{1} is a 11-split graph, then the corresponding clique set of I1I^{1} is a minimum Steiner set. If G1G^{1} is a 22-split graph, then we find the labelled graph MM of G1G^{1} and the maximum matching PP of MM. Subsequently, we find the corresponding vertex set QCQ\subseteq C of the matching PP and the corresponding clique set QQ^{\prime} of I\NGI(Q)I\backslash N_{G}^{I}(Q). The minimum Steiner set is S=QQS=Q\cup Q^{\prime} ( from Lemma 4 ). Given a 33-split graph, we perform a transformation to obtain a 22-split graph. We identify the size of a minimum Steiner set and the Steiner set with the help of the labelled graph associated with the transformed 22-split graph. Interestingly, based on the matching size, we get to identify the size of minimum Steiner set and the corresponding clique set helps us to identify the Steiner set. It is important to highlight the fact that if matching size is 11, we look at two different labelled graphs to identify the minimum Steiner set. The detailed algorithm is presented in Algorithm 3.

Algorithm 3 Compute_Steiner_Tree_K1,4K_{1,4}-free(G0,RG^{0},R)
1:/*G0G^{0} is the K1,4K_{1,4}-free split graph and RR \subseteq V(G0)V(G^{0}) is the set of terminal vertices */
2:G1=G^{1}= Pruning(G0,RG^{0},R) i.e., G1=G0\(S1S2S3)G^{1}=G^{0}\backslash(S_{1}\cup S_{2}\cup S_{3})
3:Initialize the output Steiner set S=S=\emptyset
4:if G1G^{1} is a 11-split graph then
5: Find corresponding clique set SS of I1I^{1}
6:else if G1G^{1} is a 22-split graph then
7:SS=Compute_Steiner_22-split_graph(G1G^{1})
8:else
9:SS=Compute_Steiner_33-split_graph(G1G^{1})
10:end if
11:Obtain the Breadth First Search tree TT in the graph induced on vertices SRS\cup R.
12:Output TT
Algorithm 4 Compute_Steiner_22-split_graph(GG)
1: /*GG is K1,4K_{1,4}-free and 22-split graph */
2:Initialize the Steiner set S2=S^{2}=\emptyset
3:Construct the labeled graph MM of GG
4:Find a maximum matching PP in MM and find the corresponding vertex set S1S^{1} of PP
5:Find the corresponding clique set S2S^{2} of the vertex set I\NGI(S1)I\backslash N_{G}^{I}(S^{1})
6:Return Steiner set S1S2S^{1}\cup S^{2}
Algorithm 5 Compute_Steiner_33-split_graph(GG)
1:/*G=I+CG=I+C is K1,4K_{1,4}-free 33-split graph*/
2:Initialize Steiner set S2=S^{2}=\emptyset, S1={u}S^{1}=\{u\} where uV3u\in V_{3} and edge set P1=P^{1}=\emptyset
3:for every vertex vV3v\in V_{3} do
4: Find the 22-split graph G2G^{2} induced on V(G)\NGI(v)V(G)\backslash N_{G}^{I}(v) and the labeled graph MM of G2G^{2}
5: Find a maximum matching PP^{*} of MM
6:if |P1||P||P^{1}|\leq|P^{*}| then
7:  Update P1=PP^{1}=P^{*}
8:  Update S1={v}S^{1}=\{v\}~\cup corresponding vertex set of P1P^{1} in G2G^{2}
9:end if
10:end for
11:if |P1|<1|P^{1}|<1 then
12: Find the 22-split graph H2H^{2} induced on V(G)\V3V(G)\backslash V_{3}
13: Find the labeled graph M2M^{2} of H2H^{2} and a maximum matching P2P^{2} of M2M^{2}
14:if |P2|=3|P^{2}|=3 then
15:  S1=S^{1}= corresponding vertex set of P2P^{2} in H2H^{2}
16:end if
17:end if
18:Find the corresponding clique set S2S^{2} of the vertex set I\NGI(S1)I\backslash N_{G}^{I}(S^{1})
19:Return Steiner set S1S2S^{1}\cup S^{2}

3.1.1 Proof of correctness of Algorithm 3

Step 2 of Algorithm 3 prunes the input graph G0G^{0} to obtain G1G^{1} and by Lemma 2, an optimal Steiner set of G1G^{1} is also an optimal Steiner set of G0G^{0}. If G1G^{1} is a 11-split graph, then |S|=|I1||S|=|I^{1}| and our algorithm correctly computes such a Steiner set SS in step 5. If G1G^{1} is a 22-split or 33-split graph, then Algorithm 3 calls Algorithm 4, or Algorithm 5, respectively. Now we shall look into Algorithm 4 in detail. The algorithm finds the labeled graph MM in Step 22. Note that Algorithm 4 in Step 4 finds a maximum matching PP in MM, and finds the corresponding vertex set S1S^{1} of PP such that |S1|=|P||S^{1}|=|P|. Step 5 finds S2S^{2} such that |S2|=|I1|2|P||S^{2}|=|I^{1}|-2|P|. The Steiner set S1S2S^{1}\cup S^{2} is returned in Step 55 where |S1S2|=|I1||P||S^{1}\cup S^{2}|=|I^{1}|-|P|, which is correct due to Lemma 4 and hence Algorithm 4 returns an optimum Steiner set.

In Algorithm 5, for every vV3v\in V_{3}, we find G2G^{2} and its labeled graph MM in Step 33. A maximum matching on MM is obtained in Step 44. Step 66 and 8 updates maximum matching P1P^{1} and its corresponding vertex set S1S^{1} found so far. Note that by Theorem 3.4, Steiner set SS of GG is bounded as |I|4|S||I|2|I|-4\leq|S|\leq|I|-2. We can see the following cases.
Case (i) |S|=|I|4|S|=|I|-4. By Theorem 3.2, |P1|=2|P^{1}|=2 and it follows that |S1|=3|S^{1}|=3 and |NGI(S1)|=7|N_{G}^{I}(S^{1})|=7. Step 1717 finds S2S^{2} such that |S2|=|I|7|S^{2}|=|I|-7. Step 1818 returns S1S2S^{1}\cup S^{2} where |S1S2|=|I|4|S^{1}\cup S^{2}|=|I|-4.
Case (ii) |S|=|I|3|S|=|I|-3. By Theorem 3.3, either |P1|=1|P^{1}|=1 or |P2|=3|P^{2}|=3. If |P1|=1|P^{1}|=1, then |S1|=2|S^{1}|=2 and |NGI(S1)|=5|N_{G}^{I}(S^{1})|=5. Step 1717 finds S2S^{2} such that |S2|=|I|5|S^{2}|=|I|-5. Note that |S1S2|=|I|3|S^{1}\cup S^{2}|=|I|-3. If |P2|=3|P^{2}|=3, then |S1|=3|S^{1}|=3 and |NGI(S1)|=6|N_{G}^{I}(S^{1})|=6. Step 1717 finds S2S^{2} such that |S2|=|I|6|S^{2}|=|I|-6. Observe |S1S2|=|I|3|S^{1}\cup S^{2}|=|I|-3.
Case (iii) |S|=|I|2|S|=|I|-2. It follows that |P1|=0|P^{1}|=0. Since we initialized S1S^{1} with a vertex uV3u\in V_{3}, |S1|=1|S^{1}|=1 and |NGI(S1)|=3|N_{G}^{I}(S^{1})|=3. Observe that |S2|=|I|3|S^{2}|=|I|-3 and |S1S2|=|I|2|S^{1}\cup S^{2}|=|I|-2. This completes the case analysis and Algorithm 5 correctly computes a Steiner set of GG. Therefore, Algorithm 3 correctly computes the minimum Steiner tree in Step 1010.

3.1.2 Run-time analysis of Algorithm 3


Let n,mn,m represents the size of vertex set, and the edge set, respectively of the input graph G0G^{0}. We shall first analyze the run-time of Algorithm 4 and Algorithm 5 as Algorithm 3 invokes Algorithm 4 or Algorithm 5 at Steps 66, 88, respectively. For Algorithm 4, observe that creation of the labeled graph in Step 22 needs O(n)O(n) effort as |E(M)|+|V(M)|=O(n)|E(M)|+|V(M)|=O(n). Step 33 finds a maximum matching of MM which can be done in O(n32)O(n^{\frac{3}{2}}) time using general graph maximum matching algorithm [22]. Corresponding clique set in Step 44 can be found in O(n)O(n) time. Therefore, the run-time of Algorithm 4 is O(n32)O(n^{\frac{3}{2}}). Consider Algorithm 5, Steps 33 to 88 are iterated at most nn times. Step 33 needs O(n)O(n) effort. Finding a matching of M2M^{2} in step 5 needs O(n32)O(n^{\frac{3}{2}}) time. Steps 6,76,7 incurs constant effort. Therefore, the iteration of Steps 33 to 88 involves O(n52)O(n^{\frac{5}{2}}) effort. Note that Steps 1111, 1212 need O(n)O(n), O(n32)O(n^{\frac{3}{2}}), respectively and Step 15 incurs a O(n)O(n) effort. Finding S2S^{2} in step 18 can be done in O(n)O(n) time. Overall, the run-time of Algorithm 5 is O(n52)O(n^{\frac{5}{2}}).

Now we shall discuss run time of Algorithm 3. Pruning of verices in step 2 of Algorithm 3 takes O(n.Δ)O(n.\Delta) effort where Δ\Delta denotes maximum degree of the input graph GG. Step 5 takes O(n)O(n) time. Steps 66, 88 takes O(n32)O(n^{\frac{3}{2}}) time, O(n52)O(n^{\frac{5}{2}}) time, respectively. Step 1010 incurs O(n+m)O(n+m) time. Therefore the run time of Algorithm 3 is O(n52)O(n^{\frac{5}{2}}). Thus, Steiner tree in K1,4K_{1,4}-free split graph is polynomial-time solvable.

4 Steiner tree in K1,5K_{1,5}-free Split Graphs is NP-complete

In the earlier section, we have presented a polynomial-time algorithm for Steiner tree in K1,4K_{1,4}-free split graphs. In this section, we present the other half of the dichotomy, which is to show that Steiner tree in K1,5K_{1,5}-free split graph is NP-complete. Interestingly, the reduction presented in [2] generates instances of K1,5K_{1,5}-free split graphs. For the sake of completeness, we present our observations along with proofs. Towards this attempt, we recall the classical problem Exact 3 cover [23] which is a candidate NP-complete problem for our investigation.

Exact-3-cover(Z,T) Instance: A Collection TT of 33 element subsets of a set Z={u1,u2,,u3q}Z=\{u_{1},u_{2},\ldots,u_{3q}\}. Question: Is there a sub collection TT^{{}^{\prime}} \subseteq T={c1,c2,,cn}T=\{c_{1},c_{2},\ldots,c_{n}\} such that for every uiZu_{i}\in Z, 1i3q1\leq i\leq 3q uiu_{i} belongs to exactly one member of TT^{{}^{\prime}}?

We recall the decision version of Steiner tree problem, restricted to K1,5K_{1,5}-free split graphs.

Steiner tree(G,R,k) Instance: K1,5K_{1,5}-free Split Graph G(V,E)G(V,E), Terminal Set RV(G)R\subseteq V(G), Integer k0k\geq 0 Question: Is there a set SV(G)\RS\subseteq V(G)\backslash R such that |S|k|S|\leq k and G[SR]G[S\cup R] is connected?

Theorem 4.1

Steiner tree problem in K1,5K_{1,5}-free split graph is NP-complete.

Proof

Steiner tree is in NP Given a certificate S=(G,R,k)S=(G,R,k), we show that there exist a deterministic polynomial-time algorithm for verifying the validity of the certificate SS. Note that the standard Breadth First Search algorithm can be employed to check whether SRS\cup R is connected. |S|=k|S|=k can be verified in linear time and therefore, overall certificate verification need O(n+m)O(n+m) time, where n=|V(G)|,m=|E(G)|n=|V(G)|,~m=|E(G)|. Therefore, we can conclude that Steiner tree is in NP.
Steiner tree is NP-Hard An instance of Exact 33 cover(Z,T) is reduced to an instance of Steiner tree (G,R,k) problem as follows: I=ZI=Z, C={vi|ciT}C=\{v_{i}~|~c_{i}\in T\}, 1in1\leq i\leq n and V(G)=ICV(G)=I\cup C. Informally, for every element uZu\in Z, create a vertex uu such that uIu\in I. For every member ciTc_{i}\in T, create a vertex viv_{i} such that viCv_{i}\in C. E(G)={{vi,vj}|vi,vjC}E(G)=\{\{v_{i},v_{j}\}~|~v_{i},v_{j}\in C\}, 1ijn1\leq i\neq j\leq n \cup {{vl,u}|vlC,uI\{\{v_{l},u\}~|~v_{l}\in C,u\in I, and ucl}u\in c_{l}\}. R=IR=I and k=|Z|3k=\frac{|Z|}{3}. In this reduction, |V(G)|=|Z|+|T||V(G)|=|Z|+|T| and |E(G)|=(|T|2)+3|T||E(G)|=\binom{|T|}{2}+3|T|. The above construction is therefore polynomial to the size of input. We now show that instances created by this reduction are K1,5K_{1,5}-free split graphs. On the contrary, assume that there exist a K1,5K_{1,5} induced on vertices {u,v,w,x,y,z}\{u,v,w,x,y,z\}. Note that at most two vertices (say u,vu,v) from clique CC can be included in the K1,5K_{1,5}. Clearly, w,x,y,zIw,x,y,z\in I and without loss of generality, dGI(v)=4d_{G}^{I}(v)=4. This implies that there exist a 44 element subset cTc\in T corresponding to the clique vertex vCv\in C, which is a contradiction as all subsets are of size 33 in collection TT. Therefore it follows that the reduced graph GG is K1,5K_{1,5}-free split graph. We now show that there exist an Exact-3-cover(Z,T) if and only if there exist a Steiner tree(G,R,k) in the reduced graph GG on at most kk Steiner vertices. For Necessity: If there exist TTT^{{}^{\prime}}\subseteq T, |T|=|Z|3|T^{{}^{\prime}}|=\frac{|Z|}{3} which covers all the elements of ZZ, then the set of vertices S={vC|cT}S=\{v\in C~|~c\in T^{{}^{\prime}}\} where vv is the corresponding vertex of cc forms a Steiner set in GG as R=ZR=Z. Also note that |S|=|Z|3|S|=\frac{|Z|}{3}. For Sufficiency: If there exist a Steiner set SCS\subseteq C in the reduced graph GG on at most k=|Z|3k=\frac{|Z|}{3} Steiner vertices, then observe that for all vertex vSv\in S, dGI(v)=3d_{G}^{I}(v)=3, |S|=|Z|3|S|=\frac{|Z|}{3} and |NGI(S)|=|Z||N_{G}^{I}(S)|=|Z|. It follows that there does not exist u,vSu,v\in S such that NGI(u)NGI(v)N_{G}^{I}(u)\cap N_{G}^{I}(v)\neq\emptyset. Therefore, T={cT|vS}T^{{}^{\prime}}=\{c\in T~|~v\in S\} where vv is the corresponding vertex of cc forms an exact 3 cover of ZZ. This completes the proof of the claim. We can conclude that Steiner tree problem is NP-complete in K1,5K_{1,5}-free split graphs. ∎

5 Conclusions and Future Work

We have presented an interesting dichotomy result that Steiner tree problem is polynomial-time solvable in K1,4K_{1,4}-free split graphs and NP-complete in K1,5K_{1,5}-free split graphs. This result is tight and it identifies the right gap between NP-completeness and polynomial-time solvability of Steiner tree in split graphs. Using the structural results presented here, an interesting direction for further research would be to explore the complexity of other classical problems which are NP-complete restricted to split graphs.

References

  • [1] M. R. Garey, R. L. Graham, D. S. Johnson: The complexity of computing steiner minimal trees. SIAM Journal on Applied Mathematics 32(4) 835–859 (1977)
  • [2] Kevin White, Martin Farber, William Pulleyblank: Steiner trees, connected domination and strongly chordal graphs. Networks 15(1) 109–124 (1985)
  • [3] Stefan Vo: Steiner tree problems in telecommunications. In: Handbook of Optimization in Telecommunications, Springer US 459–492 2006
  • [4] Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein: Introduction to Algorithms (3. ed.). MIT Press (2009)
  • [5] Michael R. Garey, David S. Johnson: Computers and Intractability: A Guide to the Theory of NP-Completeness. W. H. Freeman and Company, New York (1979)
  • [6] M.C.Golumbic: Algorithmic Graph Theory and Perfect Graphs. Academic Press, New York (1980)
  • [7] A.A.Bertossi, M.A.Bonuccelli: Hamiltonian circuits in interval graph generalizations. Information Processing Letters 195–200 (1986)
  • [8] Michael R. Garey, David S. Johnson: The rectilinear Steiner tree problem is NP-complete. SIAM Journal on Applied Mathematics 32(4) 826–834 (1977)
  • [9] Haiko Muller, Andreas Brandstadt: The NP-completeness of steiner tree and dominating set for chordal bipartite graphs. Theoretical Computer Science 53(2) 257 – 265 (1987)
  • [10] J.M.Keil: Finding hamiltonian circuits in interval graphs. Information Processing Letters 201–206 (1985)
  • [11] R.W.Hung, M.S.Chang: Linear-time certifying algorithms for the path cover and hamiltonian cycle problems on interval graphs. Applied Mathematics Letters 648–652 (2011)
  • [12] B.S.Panda, S.K.Das: A linear time recognition algorithm for proper interval graphs. Information Processing Letters 153–161 (2003)
  • [13] L.Ibarra: A simple algorithm to find hamiltonian cycles in proper interval graphs. Information Processing Letters 1105 – 1108 (2009)
  • [14] Joseph A. Wald, Charles J. Colbourn: Steiner trees, partial 2-trees, and minimum IFI networks. Networks 13(2) 159–167 (1983)
  • [15] S.E. Dreyfus, R.A. Wagner: The steiner problem in graphs. Networks 1 195–207 (1972)
  • [16] Michael Dom, Daniel Lokshtanov, Saket Saurabh: Incompressibility through colors and IDs. In: Automata, Languages and Programming. Volume 5555. 378–389 2009
  • [17] Naveen Garg: Saving an epsilon: A 2-approximation for the k-mst problem in graphs. In: Proceedings of the Thirty-seventh Annual ACM Symposium on Theory of Computing. 396–402 2005
  • [18] Marcus Brazil, Ronald L. Graham, Doreen A. Thomas, Martin Zachariasen: On the history of the euclidean steiner tree problem. Archive for History of Exact Sciences 68(3) 327–354 (2014)
  • [19] M. Jones, D. Lokshtanov, M.S. Ramanujan, S. Saurabh, O. Suchy: Parameterized complexity of directed steiner tree on sparse graphs. In: Algorithms - ESA 2013. Volume 8125. 671–682 2013
  • [20] Leonid Zosin, Samir Khuller: On directed steiner trees. In: Proceedings of the Thirteenth Annual ACM-SIAM Symposium on Discrete Algorithms. 59–63 2002
  • [21] D.B.West: Introduction to graph theory 2nd Edition. (2003)
  • [22] S. Micali, V. V. Vazirani: An O(VE){O}(\sqrt{V}{E}) algorithm for finding maximum matching in general graphs. In: IEEE Annual Symposium on Foundations of Computer Science. 1980
  • [23] R.M.Karp: Reducibility among combinatorial problems. In: Proc. of a Symposium on the Complexity of Computer Computations. 85–103 1972