Computing $L(p,1)$-Labeling with Combined Parameters

Given a graph, an $L(p,1)$-labeling of the graph is an assignment $f$ from the vertex set to the set of nonnegative integers such that for any pair of vertices $(u,v),|f (u) - f (v)| \ge p$ if $u$ and $v$ are adjacent, and $f(u) \neq f(v)$ if $u$ and $v$ are at distance $2$. The $L(p,1)$-labeling problem is to minimize the span of $f$ (i.e.,$\max_{u\in V}(f(u)) - \min_{u\in V}(f(u))+1$). It is known to be NP-hard even for graphs of maximum degree $3$ or graphs with tree-width 2, whereas it is fixed-parameter tractable with respect to vertex cover number. Since vertex cover number is a kind of the strongest parameter, there is a large gap between tractability and intractability from the viewpoint of parameterization. To fill up the gap, in this paper, we propose new fixed-parameter algorithms for $L(p,1)$-Labeling by the twin cover number plus the maximum clique size and by the tree-width plus the maximum degree. These algorithms reduce the gap in terms of several combinations of parameters.


Introduction
Let G be an undirected graph, and p and q be constant positive integers. An L(p, q)-labeling of a graph G is an assignment f from the vertex set V (G) to the set of nonnegative integers such that |f (u) − f (v)| ≥ p if u and v are adjacent and |f (u) − f (v)| ≥ q if u and v are at distance 2, for all pairs of u and v in V (G). We call the former distance-1 condition and the latter distance-2 condition. A k-L(p, q)-labeling is an L(p, q)-labeling f : V (G) → {0, . . . , k}, where the labels start from 0 for conventional reasons. The k-L(p, q)-Labeling problem determines whether given G finely classify intermediate parameters and see fixed-parameter (in)tractability for them, and the other is to combine two or more parameters and see fixed-parameter (in)tractability under the combinations. In this paper, we take the latter approach.

Our contribution
In this paper, we present algorithms with combined parameters. The parameters that we focus on are clique-width (cw), tree-width (tw), maximum clique size (ω), maximum degree (∆) and twin cover number (tc). These are selected in connection with aforementioned parameters, λ p,1 , maximum degree and tree-width. Maximum clique size and clique-width are well used parameters weaker than tree-width. Maximum degree itself is a considered parameter, which is strongly related to λ p,q (G). In fact, it is easy to see that λ p,1 ≥ ∆ + p − 1, and λ p,1 ≤ ∆ 2 + (p − 1)∆ − 2 [20]. Thus, λ p,1 and ∆ are parameters equivalent in terms of fixed-parameter (in)tractability. Twin cover number is picked up as a parameter that is moderately weaker than vertex cover number but stronger than clique-width and is also incomparable to neighborhood diversity.
These parameters are ordered in the following two ways: (1) (vc ⪰){tw, tc} ⪰ cw and (2) (λ p,1 ≃)∆ ⪰ ω. Here, for graph parameters α and β, α ⪰ β represents that there is a positive function g such that g(α(G)) ≥ β(G) holds for any G, and we denote α ≃ β if α ⪰ β and β ⪰ α. For combined parameters of one from (1) and another from (2), we design fixed-parameter algorithms. Note that some combination yields essentially one parameter. For example, tw + ω is equivalent to tw, because tw ≥ ω − 1 holds. The obtained results are listed below: L(p, 1)-Labeling can be solved in time ∆ O(tw∆) n for p ≥ 1. Since it is known that tw ≤ 3cw∆ − 1 ( [22]), it is also a ∆ O(cw∆ 2 ) n-time algorithm, which implies L(p, 1)-Labeling is actually FPT with respect to cw + ∆. This result also implies that L(p, 1)-Labeling is FPT when parameterized by band-width. L(p, 1)-Labeling is FPT when parameterized by tc + ω. Since tc + ω ≤ vc + 1 for any graph, it generalizes the fixed-parameter tractability with respect to vertex cover number in [16]. Since tc + ω ≥ tw, tc + ω is located between tw and vc.
L(1, 1)-Labeling is FPT when parameterized by only twin cover number. This also yields a fixed-parameter p-approximation algorithm for L(p, 1)-Labeling with respect to twin cover number. Figure 1 illustrates the detailed relationship between graph parameters and the parameterized complexity of L(p, 1)-Labeling, which includes our new results and previous results shown in the next subsection.

Related work
As mentioned above, L(p, 1)-Labeling is NP-hard even on graphs of tree-width 2 [14]. Using stronger parameters than tree-width, Fiala et al. showed that L(p, 1)-Labeling is fixed-parameter tractable when parameterized by vertex cover [16] and neighborhood diversity [13]. Moreover, Fiala, Kloks and Kratochvíl showed that the problem is XP when parameterized by feedback edge set number [17]. For approximation, it is NP-hard to approximate L(p, 1)-Labeling within a factor of n 0.5−ε for any ε > 0, whereas it can be approximated within O(n(log log n) 2 / log 3 n) [24]. For L(1, 1)-Labeling, it can be solved in time O(∆ 2 8(tw+1)+1 n + n 3 ), and hence it is XP by treewidth [34]. This result is tight in the sense of fixed-parameter (in)tractability, because it is Let ω, ∆, cw, mw, nd, tc, tw, fvs, fes, bw, ml, and vc denote maximum clique size, maximum degree, clique-width, modular-width, neighborhood diversity, twin cover number, tree-width, feedback vertex set number, feedback edge set number, band-width, max leaf number, and vertex cover number, respectively. Connections between two parameters imply that the upper is bounded by a function of the lower. The underlines for parameters indicate that they are obtained in this paper.
Apart from L(p, 1)-Labeling, twin cover number is a relatively new graph parameter, which is introduced in [18] as a weaker parameter than vertex cover number. In the same paper, many problems are shown to be FPT when parameterized by twin cover number, and it is getting to be a standard parameter (e.g., [1,12,19,28,29]). Recently, for Imbalance, which is one of graph layout problems, a parameterized algorithm is presented [31]. It is interesting that they also adopt twin cover number plus maximum clique size as the parameters.

Preliminaries
In this paper, we use the standard graph notations. Suppose that G = (V, E) is a simple and connected graph with the vertex set V and the edge set E. We sometimes use V (G) or E(G) instead of V or E respectively, to specify graph G. For G = (V, E), we denote the numbers of vertices and edges by n = |V | and m = |E|, respectively. For V ′ ⊆ V , we denote by G[V ′ ] the subgraph of G induced by V ′ . For two vertices u and v, the distance dist G (u, v) is defined by the length of a shortest path between u and v where the length of a path is the number of edges of it. We denote the closed neighbourhood and the open neighbourhood of a vertex v by N G [v] and N G (v), respectively. We also define N ≤ℓ The maximum degree of G is denoted by ∆(G). For simplicity, we sometimes omit the subscript G.
The k-th power G k = (V, E k ) of a graph G = (V, E) is a graph such that the set of vertices is V and there is an edge (u, v) in E k if and only if there is a path of length at most k between u and v in G [5]. In particular, G 2 is called the square of G.

Graph parameters
In the following, we introduce several graph parameters.
Clique-width We introduce the definition of clique-width (see also [8,9]). A vertex-labeled graph is a graph whose vertices have exactly one integer as a label. For a positive integer c, a c-graph is a vertex-labeled graph with labels in {1, 2, . . . , c}. Then the clique-width cw(G) of G is defined as the minimum integer c such that G is constructed with c labels by the following operations: Create a new vertex with label i ∈ {1, 2, . . . , c}, Take a disjoint union of two c-graphs, For two labels i and j, connect every pair of a vertex labeled by i and a vertex labeled by j by an edge, and Relabel all the labels of vertices with label i to label j.

Tree-width
Definition 1 (Tree decomposition) A tree decomposition of a graph G = (V, E) is defined as a pair ⟨X , T ⟩, where T is a tree with node set I(T ) and X = {X i | i ∈ I(T )} is a collection of subsets, called bags, of V such that: The width of a tree decomposition is defined as max i∈I |X i | − 1 and the tree-width of G, denoted by tw(G), is defined as the minimum width among all possible tree decompositions of G.
Definition 2 (Nice tree decomposition) A tree decomposition ⟨X , T ⟩ is nice if it satisfies the following conditions: 1. T has a root node r(T ) ∈ I that satisfies X r(T ) = ∅.
2. Each node of T has at most two children.
3. Each node i in T is one of the following five types: A leaf node i has no children and X i = ∅, An introduce vertex v node i has exactly one child j satisfying An introduce edge {u, v} node i has exactly one child j satisfying X i = X j and it is labeled with an edge {u, v} ∈ E where u, v ∈ X i , A forget v node i has exactly one child j satisfying X i = X j \ {v} for a vertex v ∈ V , and A join node i has exactly two children j 1 , j 2 such that X j1 = X i and X j2 = X i .
We additionally require that every edge in E is introduced exactly once.
By the last statement, every edge is assigned to exactly one node. An assignment is done by an introduce edge node, for a pair of vertices that have already been introduced. This implies that Any tree decomposition with ℓ nodes can be transformed to a nice tree decomposition with O(tw · n) bags and the same width in time O(tw 2 · max{ℓ, n}) [10].
v}, they are called true twins and the edge is called a twin edge. Then a twin cover of G is defined as follows.
Definition 3 (Twin cover, [18]) A set of vertices X is a twin cover of G if every edge {u, v} ∈ E satisfies either (1) u ∈ X or v ∈ X, or (2) u, v are true twins. The twin cover number of G, denoted by tc(G), is defined as the minimum size of twin covers in G.
An important observation is that the complement V \ X of a twin cover X induces disjoint cliques.
. That is, any pair of vertices in a clique are true twins and each edge in G[V \ X] is a twin edge.
A vertex cover X is the set of vertices such that for every edge, at least one endpoint is in X. The vertex cover number of G, denoted by vc(G), is defined as the minimum size of vertex covers in G. Since every vertex cover of G is also a twin cover of G, tc(G) ≤ vc(G) holds. Because ω(G) ≤ vc(G) + 1, we have tc(G) + ω(G) ≤ 2vc(G) + 1.

Integer Linear Programming
Integer Linear Programming Feasibility is formulated as follows.
Input: An q × p matrix A with integer elements, an integer vector b ∈ Z q Question: Is there a vector x ∈ Z p such that A · x ≤ b?
Lenstra [30] proved that Integer Linear Programming Feasibility is FPT when parameterized by the number of variables.
As L(p, 1)-Labeling is paraNP-hard for tree-width, so is for clique-width. In this section, as a complement, we show that L(p, 1)-Labeling (actually, L(p, q)-Labeling for any constant p and q) is fixed-parameter tractable when parameterized by cw + ∆.
To this end, we give a fixed-parameter algorithm for L(p, 1)-Labeling parameterized by not cw + ∆ but tw + ∆, which actually implies that the problem is FPT with respect to cw + ∆, because it is known that tw ≤ 3cw∆ − 1 [22]. The running time of the algorithm is ∆ O(tw∆) n, and so it is In the algorithm, we first construct the square G 2 of G and then compute L(p, 1)-Labeling of G by dynamic programming on a tree decomposition ⟨X ′ , T ′ ⟩ of G 2 . Actually, the algorithm runs for L(p, q)-Labeling though the running time depends on λ p,q (G). One can obtain the square of We then prove the following lemma.
Lemma 1 Given a tree decomposition of a graph G of width t with ℓ bags, one can construct a tree decomposition of G 2 of width at most (t + 1)∆(G) + t with ℓ bags in time O(t∆(G)ℓ).
} be the set of bags. We here define ⟨X ′ , T ′ ⟩ as a tree decomposition of G 2 , where T ′ and T are identical; T and T ′ has the same node set and the same structure, where each i ∈ I(T ′ ) corresponds to i ∈ I(T ). In the following, we denote ⟨X ′ , T ⟩ instead of ⟨X ′ , T ′ ⟩.
We can see that ⟨X ′ , T ⟩ is really a tree decomposition of G 2 with width (t + 1)∆(G) + t. It satisfies the properties of tree decomposition indeed: i . These show that the edge condition is satisfied. Finally, we check coherence property: we show that for every u ∈ V , Here, the subgraph T u of T induced by {i ∈ I(T ) | u ∈ X i } is connected by the coherent property of ⟨X , T ⟩. Also for each v ∈ N (u), the subgraph T v of T induced by {i ∈ I(T ) | v ∈ X i } is connected. By {u, v} ∈ E, the edge condition of ⟨X , T ⟩ implies that there exists a bag X j containing both u and v. Since T u and T v has a common node j, the subgraph of T induced by The construction of ⟨X ′ , T ⟩ is done by preparing each X ′ i , which takes O(t∆(G)) steps for each i. Thus it can be done in time O(t∆(G)ℓ) in total. □ Corollary 1 tw(G 2 ) ≤ (tw(G) + 1)∆(G) + tw(G) holds.
By the above lemma, the tree-width of G 2 is bounded if tw(G) and ∆(G) are bounded. Thus we can design a dynamic programming algorithm on a tree decomposition of G 2 .
Lemma 2 Given a tree decomposition of G 2 of width at most t, one can compute k-L(p, q)-Labeling on G in time O((k + 1) t+1 t 2 n).
Proof: We present a dynamic programming algorithm for L(p, q)-Labeling of G on a nice tree decomposition of G 2 , which is almost the ordinary nice tree decomposition except that each introduce edge node has an extra one bit information that represents whether e ∈ E or not. Here, we assume that an introduce edge e node has additional information whether e ∈ E or not. This can be done by letting each introduce edge node have 1 bit when we make a nice tree decomposition.
In the algorithm, we guess every assignment of labels for vertices in each bags. For each bag X i and each labeling f i : Leaf node In a leaf node Introduce vertex v node: For an introduce vertex node i having a child j, Introduce edge {u, v} node: In an introduce edge node i, suppose that e = {u, v} is introduced.
. This implies that the distance between u and v is 2 in G by the definition of G 2 . Therefore, we define L[i, Forget v node: In a forget node i, we have X i = X j \ {v}. By the definition of a tree decomposition, v never appears in any later nodes in the tree decomposition of G 2 . Thus, we can compute Join node: In a join node i having two children j 1 , j 2 , X i = X j1 = X j2 holds. Thus, for each labeling f i , we can compute L[j, The correctness of the dynamic programming algorithm is clear. Then we analyze the running time. In the algorithm, the size of each DP table in a node is at most (k+1) t+1 . The update time of each entry in a DP table is bounded by O(t). Because the number of nodes of a tree decomposition is bounded by O(tn) [10], the running time of the dynamic programming is O((k + 1) t+1 t 2 n). □ Here, one can construct a tree decomposition ⟨X , T ⟩ of G of width 5tw(G) + 4 with O(n) bags in time 2 O(tw(G)) n [3]. By Lemma 1, we can obtain a tree decomposition ⟨X ′ , T ⟩ of G 2 of width (5tw(G) + 4 + 1)∆(G) + 5tw(G) + 4 = O(tw(G)∆(G)) from ⟨X , T ⟩ in time O(tw(G)∆(G)n). By Lemma 2 and λ p,q ≤ max{p, q}∆ 2 , we have the following theorem.
Theorem 1 For any positive constant p and q, there is an algorithm to solve L(p, q)-Labeling in time ∆ O(tw∆) n, which is also bounded by ∆ O(cw∆ 2 ) n.
For the band-width bw(G) and the max leaf number ml(G) of G, we have tw(G) ≤ bw(G) ≤ ml(G) and ∆(G) ≤ 2bw(G) [2]. Thus, the following corollary holds.
Corollary 2 For any positive constant p and q, L(p, q)-Labeling is fixed-parameter tractable when parameterized by max leaf number, and even band-width. 4 Parameterization by twin cover number 4.1 L(p, 1)-Labeling parameterized by tc + ω We design a fixed-parameter algorithm for L(p, 1)-Labeling with respect to tc + ω. Notice that for a twin cover X of G = (V, E), each of the connected components of G[V \ X] forms a clique. We categorize vertices in V \ X with respect to the neighbors in X. Let T 1 , T 2 , . . . , T s be the sets of vertices having common neighbors in X, called types of vertices in V \ X, where s is the number of types. Moreover, we say that a clique We first see a general property about cliques with the common neighbors: Suppose that a graph G consists of only cliques C 1 , C 2 , . . . , C h and the common neighbors Y of all the vertices in the cliques. That is, all the vertices are within distance 2. Note that a twin cover focuses on such a substructure in a graph. Then the following lemma holds.
Lemma 3 Suppose that a graph G is above defined by cliques C 1 , C 2 , . . . , C h , in the descending order of the size and their common neighbors Y , where the vertices in Y are labeled by a 1 , a 2 , . . . , a |Y | . For an arbitrary set L of labels that are at least p apart from a 1 , a 2 , . . . , a |Y | , if |L| ≥ j |C j | and j |C j | ≥ p|C 1 | hold, there exists an L(p, 1)-labeling of C 1 , . . . , C h using only labels in L. Proof: Let n ′ = j |C j | and ω = |C 1 |. Let us assume L = {l 1 , l 2 , . . . , l n ′ }. Since we can use distinct labels for vertices in C 1 , C 2 , . . . , C h , only the distance-1 condition inside of a same clique matters. If n ′ ≡ 1 (mod p), we label the vertices in C 1 , C 2 , . . ., C n ′ in this order by using labels in order of l 1 , l p+1 , l 2p+1 , . . . , l n ′ , l 2 , l p+2 , l 2p+2 . . ., l n ′ −p+2 , l 3 . . . , l p , l 2p , . . . , l n ′ −1 . Note that the vertices in C 1 are labeled by l 1 , l p+1 , . . . , l p(ω−1)+1 (note that pω ≤ n ′ ). Since the difference between l αp+i and l (α+1)p+i for each i and α is at least p, the labeling for cliques does not violate the distance-1 condition. We can choose similar orderings for the other residuals. □ Now we go back to the algorithm parameterized by tc + ω. Given a twin cover X, we say that a k-L(p, 1)-labeling is good for X if it uses only labels in {0, 1, . . . , (2p − 1)|X| − p} ∪ {k − (2p − 1)|X| + p, . . . , k} for X. The following lemma is also important. It can be shown by repeatedly applying Lemma 3.
Lemma 4 Let X be a twin cover in G such that each T i satisfies ω i ≤ n i /p. If G has a k-L(p, 1)labeling, then G also has a good k-L(p, 1)-labeling for X.
Proof: Let f be an L(p, 1)-labeling, and a, b ∈ {0, 1, . . . , k} be two labels such that (1) they are not used in X, (2) they are at least p apart from all the labels used in X, and (3) there is at least one label l used in X where a + p ≤ l ≤ b − p. By the definition of a and b, l can exist only when b − a ≥ 2p. For example, the triplet of (a, l, b) is possible for l = a + p and b = a + 2p, but we cannot take l for b < a + 2p. Then we rotate labels between a and b in f as follows: a → a + 1, a + 1 → a + 2, . . ., b → a.
Let f ′ be a labeling obtained by the above relabeling. The rotation does not affect the distance-2 condition, though it may affect distance-1 condition. As for X, we notice that only labels in {a + p, . . . , b − p} are changed in X, which does not yield any new conflict inside of X. Therefore, f ′ satisfies the distance-1 condition of L(p, 1)-labeling in G[X]. Also b − p + 1 is only a label that could be newly used in X of f ′ , which does not affect any label in V \ X; f ′ also satisfies the distance-1 condition of L(p, 1)-labeling between X and V \ X.
We see that f ′ does not violate the condition of L(p, 1)-labeling within X and between X and V \ X. On the other hand, it may violate the condition within V \ X. For example, if a clique in G[V \ X] has two vertices labeled with b − p + 1 and b + 1 in f , they are labeled with b − p + 2 and b + 1 in f ′ , which violates the distance-1 condition by (b + 1) − (b − p + 2) = p − 1. Fortunately, such a violation can be easily avoided by further relabeling vertices in V \ X as follows.
For each T i , we first observe that labels used in f for T i are different from each other due to the distance 2-condition, as so in f ′ . A problem may occur inside of a clique, which may violate the distance-1 condition. However, even if a conflict occurs, we can obtain a proper k-L(p, 1)-labeling by relabeling the vertices in T i with the same label set. This is because the cliques inside of T i have exactly same neighbors and pω i ≤ n i holds, by which we can apply the argument of Lemma 3.
The above procedure can push up a label in a middle range used in X. It can be applied as long as a triplet of a, b and l exists. As mentioned above, l can exist only when b − a ≥ 2p. Consider the labeling where all the vertices in X are labeled by |X| labels near k: It is easy to see that we cannot take a and b for the labeling, though we can take a and b if we use k − (2p − 1)|X| + p − 1 or a smaller label instead of k − (2p − 1)|X| + p. On the other hand, consider the labeling where all the vertices in X are labeled by |X| labels near 0: . We cannot take a and b again.
By these, if we cannot apply the above procedure, all the labels for X are in {0, 1, . . . , Hence, by applying the above procedure repeatedly, we eventually obtain a good k-L(p, 1)-labeling f * , which implies that if there is a k-L(p, 1)-labeling in G, then there is a good k-L(p, 1)-labeling for X in G. □ Thus, we consider to find a good L(p, 1)-labeling. Using the lemma, we show that L(p, 1)-Labeling is fixed-parameter tractable with respect to tc + ω.
Proof: We present an algorithm to solve k-L(p, 1)-Labeling instead of L(p, 1)-Labeling. We first compute a minimum twin cover X in time O(1.2738 tc + tcn + m) [18]. For twin cover X, we define T i 's. Then, we define another twin cover of X ′ = X ∪ i:ωi>ni/p T i , where X ′ is obtained by adding every T i breaking the condition of Lemma 4 to X. By this modification, our algorithm can utilize a twin cover that satisfies the condition of Lemma 4. The size of X ′ is at most tc + 2 tc · p · ω, because the number of types is at most 2 tc and the size of T i joining X is at most p · ω. Let tc ′ = |X ′ |.
We are now ready to present the core of the algorithm. We classify an instance into two cases. If k is small enough, we can apply a brute-force type algorithm. Otherwise, we try to find a good k-L(p, 1)-labeling.
(Case: k < 4ptc ′ ) For each type T i , the distance between two vertices in T i is at most 2. Thus, the labels of vertices in T i must be different each other. Due to k < 4ptc ′ , if |T i | ≥ 4ptc ′ , we conclude that the input is a no-instance. Otherwise, n = |X ′ | + i |T i | ≤ tc ′ + 4ptc ′ 2 tc holds, because the number of T i 's is at most 2 tc . Thus we check all the possible labelings in time O((4ptc ′ ) tc ′ (4p2 tc +1) ).
(Case: k ≥ 4ptc ′ ) Let C 0 , C 1 , . . . C t be the family of all possible set systems on {T 1 , . . . , T s } such that whenever two distinct T j and T j ′ are in C i then N (T j ) ∩ N (T j ′ ) = ∅. Here, C 0 is the empty set. Roughly speaking, each of C i represents a set of types that can use an identical label, because the distance between T j and T j ′ in C i is at least 3 and they do not violate the distance-2 condition. The idea to reduce the number of essential patterns of assignments is to consider not assignments of labels to vertices in V \ X ′ but C i instead. Note that cliques in a type T j can be labeled by the same way due to Lemma 3.
For each C i , we prepare a set L i of labels, which will be used during the execution of the algorithm to represent the set of labels that could be used for vertices in T j ∈ C i . Note that L 0 , L 1 , . . . , L t must be disjoint each other, and a label in L i is used exactly once per T j . We also define L 0 as the set of labels not used in V \ X ′ . Each L i can be empty.
By Lemma 4, there is a good k-L(p, 1)-labeling for X ′ such that vertices in X ′ only use labels in . . , L t , which is a little wider than above. The number of possible placements is at most (t + 1) 4ptc ′ due to the disjointness of L i 's. Therefore, the total possible nonisomorphic partial labelings is at most (4ptc ′ ) tc · (t + 1) 4ptc ′ . Note that no vertex will be labeled by a label in . . , k} hereafter. Thus we consider how we use labels in {(2p − 1)|X ′ |, . . . , k − (2p − 1)|X ′ |} for V \ X ′ , which does not yield any conflict with X ′ .
We then formulate how many labels should be placed in L 0 , L 1 , . . . , L t for one partial labeling using {0, 1, . . . , (2p − 1)|X ′ | − p} ∪ {k − (2p − 1)|X ′ | + p, . . . , k} as Integer Linear Programming. For a fixed partial labeling, let a i be the number of labels that have been already assigned to L i , and x i be a variable representing the number of labels used in L i in the desired labeling.
The following is the ILP formulation.
The first constraint shows that the total number of labels is at most k + 1. Note that the number of unused labels is x 0 . The second one is for consistency to the partial labeling. The last one, which is the most important, guarantees that every vertex in T j can receive a label; the number of usable labels is |{i | T j ∈ C i }|, because a label in L i is used exactly once per T j . If the above ILP has a feasible solution, it is possible to assign labels to all the vertices in V \ X ′ if we ignore the distance-1 condition inside of each clique. Actually, we can see that the information is sufficient to give a proper k-L(p, 1)-labeling. At the beginning of the algorithm, we take twin cover X ′ , which means that for every T i ⊆ V \ X ′ , n i ≥ pω i holds. Since cliques in G[T i ] have common neighbors and n i ≥ pω i , only the number of available labels matters by Lemma 3. Since the existence of an ILP solution guarantees this, we can decide whether a partial labeling can be extended to a proper k-L(p, 1)-labeling, or not.
Because t ≤ 2 s ≤ 2 2 tc ′ , the number of variables of the ILP is at most 2 2 tc ′ ; it can be solved in FPT time with respect to tc ′ [30]. Since tc ′ ≤ tc + 2 tc · p · ω, the total running time is FPT time with respect to tc + ω. □
Lemma 5 For a connected graph G, let X be a non-empty twin cover of G and G ′ is a graph obtained from G by deleting all the twin edges in G[V \ X]. Then, any L(1, 1)-labeling on G ′ is an L(1, 1)-labeling on G and vice versa.
Proof: The statement is true, if N ≤2 holds for any vertex v ∈ V , and we show this below. We first show this for v ∈ X. Since X is a twin cover in G and only twin edges in G[V \ X] are deleted, N ≤2 holds for any v ∈ X. Note that G[V \ X] forms a set of cliques of twins and each vertex in such a clique has the same neighborhood in X.
Next, we show N ≤2 for v ∈ V \ X. Let C be the clique in G[V \ X] that contains v. Since we only delete the twin edges in G[V \ X], the distance from v to w ∈ V \ C in G ′ and the distance in G are the same. For v, w ∈ C, since they are true twins in G, there is a common neighbor in X in G ′ , which implies that the distance between v and w is two in G ′ . Therefore, for holds. This completes the proof. □ Corollary 3 For G ′ defined as above, λ 1,1 (G ′ ) = λ 1,1 (G) holds.
Then we give an fixed-parameter algorithm for L(1, 1)-Labeling parameterized by twin cover number. First, we compute a minimum twin cover X of G in time O(1.2738 tc + tcn + m) [18]. If there exists an empty twin cover of G, it consists of complete graphs. In this case, we can immediately obtain an optimal labeling. Otherwise, we compute the L(1, 1)-labeling number of G ′ , which equals to the L(1, 1)-labeling number of G by Corollary 3. Since X is a twin cover in G, it is a vertex cover in G ′ by the deletion of twin edges in G[V \ X]. Because L(1, 1)-Labeling is fixed-parameter tractable when parameterized by vertex cover number [16], we have the following theorem.
Corollary 4 For L(p, 1)-Labeling, there is a fixed-parameter p-approximation algorithm with respect to twin cover number.

Concluding Remarks
Some FPT results hold for more general settings, that is, L(p, q)-Labeling with any constant p and q. For example, L(p, q)-Labeling with any constant p and q is FPT when parameterized by tree-width plus maximum degree. This implies that bounding maximum degree is essential for NP-hardness, because L(p, q)-Labeling for trees (i.e., graphs with tree-width 1) is NP-hard for every pair of p and q having no common divisor [15].
An interesting open question is whether L(p, 1)-Labeling parameterized by only twin cover number is FPT or not.