Token Sliding Independent Set Reconfiguration on Block Graphs111A major part of the work that led to the results in this manuscript was done when both authors were affiliated with the Indian Statistical Institute, Chennai Centre
Abstract
Let be an independent set of a simple undirected graph . Suppose that each vertex of has a token placed on it. The tokens are allowed to be moved, one at a time, by sliding along the edges of while maintaining the property that after each move, the vertices having tokens always form an independent set of . We would like to determine whether the tokens can be eventually brought to stay on the vertices of another independent set of in this manner. In other words, we would like to decide if we can transform into through a sequence of steps, each of which involves substituting a vertex in the current independent set with one of its neighbours to obtain another independent set. This problem of determining if one independent set of a graph “is reachable” from another independent set of it is known to be PSPACE-hard even for split graphs, planar graphs, and graphs of bounded treewidth. Polynomial time algorithms have been obtained for certain graph classes like trees, interval graphs, claw-free graphs, and bipartite permutation graphs. We present a polynomial time algorithm for the problem on block graphs, which are the graphs in which every maximal 2-connected subgraph is a clique. Our algorithm is the first generalization of the known polynomial time algorithm for trees to a larger class of graphs.
Keywords and phrases:
Token sliding independent set reconfiguration, block graphs, polynomial time algorithmFunding:
Veena Prabhakaran: DST SERB grant no: PDF/2022/002117 and the IITM Pravartak Technologies Foundation.Copyright and License:
2012 ACM Subject Classification:
Mathematics of computing Graph algorithmsEditors:
C. Aiswarya, Ruta Mehta, and Subhajit RoySeries and Publisher:
Leibniz International Proceedings in Informatics, Schloss Dagstuhl – Leibniz-Zentrum für Informatik
1 Introduction
A reconfiguration problem on a graph looks at how two feasible solutions to a computational problem on relate to one another (all graphs considered in this paper are simple and undirected unless otherwise mentioned). It involves determining, given a graph and two feasible solutions of some computational problem on , whether there is a step-by-step transformation from one solution to the other through a series of intermediate solutions adhering to a set of rules. Note that each intermediate solution also has to be a feasible solution to the same computational problem on . Reconfiguration problems have been studied for various computational problems like the independent set problem [18, 34, 6, 26], dominating set problem [14, 9], vertex cover problem [28, 32, 26], matching problem [4, 26, 33], and vertex colouring problem [18, 11].
The “independent set reconfiguration” problem can be defined as follows. Suppose that is a graph and are two independent sets of . Imagine that each vertex in has a token placed on it. We would like to determine if there is a sequence of transformation steps that can be applied on the set of tokens so that the tokens eventually are on the vertices of . Each transformation step must be in accordance with a predetermined set of rules, and at the end of each move, the vertices having tokens on them have to again form an independent set of . Based on the set of rules governing the transformation steps, mainly three types of independent set reconfiguration problems have been studied in the literature – namely, the “token sliding” [5, 31], the “token jumping” [27, 31] and the “token addition/removal” [31] independent set reconfiguration problems. (Note that these three models have been studied also for reconfiguration problems other than the independent set reconfiguration problem [29, 28, 17, 16].) It has been shown that the token jumping and the token addition/removal models are equivalent for independent set reconfiguration [30]. In the token sliding model introduced by Hearn and Demaine [18], which will be the focus of our study, the only allowed transformation step is the movement of a token from the vertex it is on to one of its neighbours (the token can be imagined to be “sliding” along the edge between them).
Formally, in the token sliding model for the independent set reconfiguration problem, given a graph and two independent sets of , it has to be determined if there exists a sequence of independent sets , where , such that for each , , for some and edge of . Note that if such a sequence exists then , and therefore the problem is trivial if (in this case, cannot be transformed into ). So it is customary to assume that the two input independent sets are of the same cardinality. We call this decision problem TS-Ind-set reconfig, which we define formally in Section 2.
The problem TS-Ind-set reconfig was first observed to be PSPACE-complete for general graphs by Hearn and Demaine [18]. In fact, their result implies that the problem is PSPACE-complete even for subcubic planar graphs (see [7, 30]). Later, the problem was shown to be PSPACE-complete for perfect graphs by Kamiński, Medvedev and Milanič [30], and this was further improved by Lokshtanov and Mouawad [31], who showed that the problem remains PSPACE-hard even for bipartite graphs. It was shown that the problem is PSPACE-hard also for another subclass of perfect graphs called split graphs by Belmonte et al. [2]. Note that split graphs form a subclass of chordal graphs and even hole-free graphs, and hence the problem is PSPACE-complete for chordal graphs and even-hole free graphs as well. Wrochna [34] showed that the problem is PSPACE-complete when restricted to graphs of bounded bandwidth, which implies that the problem is PSPACE-complete for graphs of bounded treewidth, or in fact bounded pathwidth.
Demaine et al. [12] showed that TS-Ind-set reconfig is polynomial time solvable for trees. Polynomial time algorithms for the problem were obtained for claw-free graphs by Bonsma, Kamiński and Wrochna [8], for -free graphs by Kamiński, Medvedev and Milanič [30], for interval graphs by Bonamy and Bousquet [3], and for bipartite permutation graphs and bipartite distance-hereditary graphs by Fox-Epstein et al. [14].
Our contribution
A “block” of a graph is defined to be a maximal connected subgraph of such that is a graph without any cut-vertices. (Note that it follows from this definition that if an edge of is not contained in any cycle of , then together with its endpoints forms a block of .) A block graph is an undirected graph in which each block is a clique. A simple way to visualize the structure of these graphs is through the following equivalent definition: every complete graph is a block graph, and every graph that is obtained by taking the disjoint union of a block graph and a complete graph and then identifying (i.e. merging) a vertex in with a vertex in is also block graph. Please refer Figure 3(a) for an example of a block graph and Section 2.2 for a formal definition of this graph class. Note that block graphs form a subclass of chordal graphs and a superclass of trees.
We prove that TS-Ind-set reconfig is polynomial-time solvable on block graphs. It is worth noting that our algorithm is the first generalization of the polynomial time algorithm of Demaine et al. for trees, since none of the other classes for which polynomial time algorithms for the problem have been obtained contains the class of trees. It was claimed in [23] and [21] that the problem can be solved in polynomial time on cactus graphs and block graphs respectively, but the authors of both papers have later announced that the algorithms are incorrect [20, 19] (also see [22, 24]), and that the complexity of the problem on both classes of graphs remains unresolved.
In this paper, we present an algorithm that takes as input a block graph having blocks, along with two independent sets of , and determines in time whether the independent set can be transformed into the independent set using token sliding. Note that is at most and hence this algorithm runs in time .
Our algorithm is a generalization of the polynomial-time algorithm for trees given in [12]. The algorithm for trees first determines which tokens are “rigid” in both input independent sets. A token in an independent set is said to be rigid if it cannot be moved from its position by any sequence of valid token movements. Determining which tokens in an independent set are rigid is not very difficult for trees – a token on a vertex is rigid if and only if every neighbour of has a neighbour other than itself that has a token that is rigid for the tree containing in the forest . This implies that it can be determined in linear time whether a token in a given independent set is rigid. Clearly, two independent sets whose set of vertices containing rigid tokens are unequal cannot be reconfigured with each other. Even if the vertices having rigid tokens is the same for both independent sets, if the two independent sets have an unequal number of tokens in any connected component that is obtained by the removal of the vertices containing the rigid tokens and their neighbours, it can be concluded that the independent sets are not reconfigurable with each other. It is shown in [12] that these two necessary conditions are also sufficient, i.e. any two independent sets that satisfy these two conditions can be reconfigured with each other. Thus it can be determined in linear time whether two independent sets in a tree are reconfigurable with each other. Further, their proof yields an algorithm that outputs a reconfiguration sequence of length between the two input independent sets. Note that the result above implies that any two independent sets in a tree that have the same cardinality and contain no rigid tokens are reconfigurable with each other.
Even though similar to trees at first sight, the problem on block graphs presents many difficulties that hinder the construction of a polynomial-time algorithm similar to the one in [12]. For example, unlike for trees, two independent sets in a block graph that have the same cardinality and have no rigid tokens may not be reconfigurable with each other; see Figure 12 of [12]. This hints that instead of rigidity of tokens, one should perhaps find out which tokens are “trapped” within the blocks they are in (this is similar to the notion of “confined” tokens in [23]). However, determining which tokens are trapped in their blocks turns out to be not so straightforward.
A more important difference is perhaps the fact that in a block graph, there can be situations in which to insert one additional token into a branch of the block graph, an arbitrary number of tokens may first need to be taken out of that branch – a situation that never arises for a tree. An example of this phenomenon can be demonstrated as follows. In Figure 1, a block graph with some tokens placed on the vertices of an independent set is shown.
In the figure, of the tokens are shown as solid black circles. There might be an arbitrary number of tokens in the set of vertices. For each , let . It can be proved that in order to place a token on , we will have to go through an intermediate independent set in which there are at most tokens in (which means that at least tokens that were originally in are outside at this point). This can be easily proved by induction on . If , then clearly, before reaching an independent set with a token on , we will have to reach an independent set with a token on , at which point there will be at most one token in . Let us assume inductively that the statement is true for . Suppose that through a sequence of reconfiguration steps, we place a token on . Then we know by the inductive hypothesis that there is some intermediate independent set in which there are at most tokens in . Consider the first such independent set in the sequence of reconfiguration steps. By the choice of this independent set, it is clear that there is a token on in this independent set, which implies that there are no tokens on any other vertex of . This means that there are at most tokens in in this independent set, and we are done.
Using the construction described above, one can create situations in which it does not seem straightforward to determine whether a token is “trapped” within its block. For example, in the situation shown in Figure 2, the token A can be moved out of the block in which it is in, but determining that fact does not seem to be as easy as it is for the case of trees (the reader is encouraged to try to find a sequence of token movements that can achieve this; one such strategy is shown in Figure 6 at the end). It can be seen from a careful study of our strategy, shown in Figure 6, that we are alternately “freeing up” more and more space on the “left” and “right” sides of the graph by using the space that has already been freed up on the other side. Each time, the newly created space allows us to place a token on one of the four bottom-most vertices.
We hope that the strategy described above will serve as a motivational example for understanding Algorithm 1, which is the major part of our polynomial time algorithm for TS-Ind-set reconfig on block graphs. A sketch of the algorithm is as follows. Given a block graph and a configuration of tokens occupying the vertices of an independent set of , the algorithm determines for each branch of how many additional tokens (relative to the number of tokens in that branch in the starting configuration ) can be moved into that branch by any sequence of token movements, assuming that any number of tokens can actually be brought to enter the branch from other parts of the graph. Once these values are obtained for each branch of , we can use them to determine “rigid vertices” corresponding to the independent set , which are vertices on which a token can never be placed by any sequence of token movements, starting from the configuration (note that these are different from the “rigid tokens” in [12]). We then show that similar to the algorithm of Demaine et al. [12] for trees, two independent sets and in a block graph are reconfigurable between each other if and only if the set of rigid vertices for each of these independent sets is exactly the same, and in the graph obtained by the removal of the rigid vertices, each connected component contains an equal number of tokens in both and .
Note that the above description of the algorithm is only intended to develop intuition; we now give the formal definitions of the concepts that were alluded to above, which will enable us to state our algorithm and prove its correctness rigorously.
Note.
Due to space constraints, most of the intermediate lemmas required for proving the correctness of the algorithm have been stated without proofs. Please refer to the full version [15] of this paper for their proofs.
2 Notations and preliminaries
As usual, we let and denote the vertex set and edge set of a graph . An edge between vertices is denoted as . For , we denote by the graph obtained by removing the vertices in from ; i.e. and . Similarly if , then we denote by the graph obtained by removing the edges in from ; i.e. and . For , we let . The graph is commonly known as the “subgraph that is induced in by ”. A subgraph of is said to be an induced subgraph of if for some . For a graph and , we denote by the neighbourhood of in . For , we define . When is a subgraph of , we abbreviate to just .
2.1 Reachability
Let be a graph. We define a binary relation on the set of independent sets of which has the property that for two independent sets and of , we have if and only if can be transformed into using at most one token movement. Formally, for two independent sets of , we say that “” if one of the following holds:
-
, or
-
such that , and .
Note that the relation is symmetric and reflexive. For independent sets of a graph , we say that is reachable from in if there exist independent sets of , where , such that . Clearly, the relation “is reachable from” is an equivalence relation on the set of independent sets of . Also, since the relation preserves cardinality, i.e. since if , we have that two independent sets of that are reachable from each other are of the same cardinality.
The decision problem TS-Ind-set reconfig is defined as follows.
| TS-Ind-set reconfig | ||||||
|
The following observations, which are implicitly assumed in the literature about the token sliding independent set reconfiguration problem, are easy to see (see for example Observation 4.1 in [1]).
Observation 1.
Let be any graph and be independent sets of . Then is reachable from if and only if is reachable from for every connected component of .
Observation 2.
Let be any graph, a subgraph of , and be independent sets of . If is reachable from in , then is reachable from in .
2.2 Block graphs
A cut-vertex of a graph is a vertex such that has more connected components than . A block in a graph is a maximal subgraph of which is isomorphic to a connected graph without any cut-vertices. For the sake of brevity of notation, we consider a block as just the set of vertices that make up the block. Thus, for us, a block of a graph is a maximal set such that is a connected graph that does not have any cut-vertices. A block graph is a graph in which each block is a clique. The following folklore observation can be easily seen to follow from the definition of a block graph.
Observation 3.
If is a block graph, then every induced subgraph of is also a block graph.
By Observation 1, it is enough to solve the TS-Ind-set reconfig problem on connected graphs. Let be a connected block graph. Note that every vertex of is contained in some block of . The vertices of that are contained in more than one block are exactly the cut-vertices of . Every pair of adjacent vertices in belongs to a unique block of . We denote by the set of cut-vertices of and by the set of blocks of . It is easy to see that if , then there is a unique block in that contains . For any , we denote by the set of all blocks in that contain . For any , we define , i.e. is the set of cut-vertices of that also belong to .
A block graph is commonly represented by its block-tree which is a tree having vertex set and edge set (see Figure 3). It is folklore that this definition indeed gives a tree (see for example Section 3.1 of [13]).
| (a) | (b) Block tree of | (c) |
For a connected block graph , let denote its block-tree with each undirected edge replaced with a pair of directed edges, one pointing in each direction. Thus . For ease of notation we let . For each , we now define an induced subgraph of as follows.
For and , we define (respectively ) as the connected component containing in the graph (resp. ). Clearly, and are connected graphs. By Observation 3, we have that and are both block graphs. Most of the time, we abbreviate and to just and respectively (see Figure 4 for a schematic diagram of an example block graph and two induced graphs and of it). We also abbreviate and to and respectively. We omit the subscript when the graph being considered is clear from the context.
We shall sometimes write just instead of , when the graph is clear from the context. Let be a connected block graph, , and . We say that “is the base of ”. Further, if , then we let and if , then we let .
For , a set that is an independent set of is called a -independent set of . Further, we define , where is the base of . For an independent set of , we let denote . Notice that for an independent set of , the set is a -independent set of . Depending on the context, we shall sometimes consider a -independent set of to be an independent set of as well. Given an independent set (or -independent set) of , we say that a vertex is under attack in if . Note that if , then is not under attack in .
3 Some definitions
We first define, for a connected block graph and for each , a non-negative integer which we shall call the “depth” of in .
Definition 4.
Let be a connected block graph and . If , for some and , and is a complete graph (equivalently, ), then we define . Otherwise, we define:
Note that as before, we abbreviate to just when the graph is clear from the context.
Similarly, for each , we define a Boolean value inductively as follows. (Intuitively, if , it roughly indicates that the base of is under attack in any -independent set of in which the tokens cannot be moved away from so as to create space in for more tokens to enter via .)
Definition 5.
Let be a connected block graph and .
If then we define .
If for some , , and , we define:
On the other hand, if for some , , we define:
As before, we drop the subscript from when the graph under consideration is clear from the context.
Note.
While evaluating an arithmetic expression that contains Boolean values, we replace all values with 1 and all values with 0.
Suppose that is a -independent set of a connected block graph for some . We define the “capacity of ”, denoted by , inductively as follows. (Intuitively, the capacity of a -independent set roughly corresponds to the number of new tokens that can be inserted via the base of into while ensuring that no token in moves towards .)
Definition 6.
Let be a connected block graph, and a -independent set of .
If for some , , then we define:
If for some , , we define:
Figure 5 depicts how the parameters and , for some , affect the possibility of moving a token to the base of . Consider the graph and the independent sets in Figure 5(a). In this example, the values and , together impose some properties (see Lemma 1(ii) of [15]) on that prevent the token on from reaching , which makes and not reconfigurable with each other. Now consider the graph and the independent sets in Figure 5(b). In , since , exhibits a different property (see Lemma 3 of [15]) that allows the token on to reach , and in turn , making reachable from .
Observation 7.
Let be a connected block graph, , and a -independent set of . If , then .
Proof.
From Definition 4, we know that there exists and such that and is a complete graph. Note that this means that . It follows directly from Definition 5 that . From Definition 6 and the fact that , we then have that . Since , we have . Thus .
Let be a connected block graph. Let and . We say that an independent set of is -reachable from an independent set of if there exists independent sets of , where , such that and for each , . Observe that the relation “is -reachable from” is also an equivalence relation defined on the independent sets of . We shall write “-reachable” as a shorthand for -reachable and “-reachable” as a shorthand for -reachable. Notice that if , and are independent sets of such that is -reachable from , then there exist independent sets , where , such that and .
Lemma 8.
Let , where , be independent sets of such that , and . If , then for each , we have .
4 Potentials: the global perspective
Definition 9.
For a connected block graph , and , we define the potential of with respect to an independent set of , denoted by is an independent set of that is reachable from .
When the graph is clear from the context, we sometimes abbreviate to just . We claim that the procedure Compute-potentials, listed as Algorithm 1, when given a connected block graph and an independent set of it, computes the value of for each .
For the rest of this section, we assume that is a connected block graph and is an independent set of . For , let denote the final value of the variable that is computed by the procedure Compute-potentials. Our aim in this section will be to prove that for each , .
Let us analyze Algorithm 1 in detail. Suppose that the while loop starting on line 6 gets executed times in total during the execution of Algorithm 1. For each and , we let denote the value of the variable just before the -th iteration of the while loop starts. Since it is clear that no variable , for , is updated during the last iteration of the while loop, it follows from the definition of that for each , .
It is easy to see that the algorithm never decreases the value of a variable , for any , and that exactly one of the variables , for , gets updated during every iteration of the while loop other than the last iteration. Thus we have the following two observations.
Observation 10.
Let . For , , and therefore, .
Observation 11.
For every , there exists such that and for every .
Consider the last iteration of the while loop. Since this is the last iteration of the while loop, line 18 is not executed during this iteration. This means that the break statement of line 19 is never executed during this iteration, which further implies that the for loop of line 8 gets executed for every .
Lemma 12.
For any and ,
Lemma 13.
For any and ,
if such that and , then
and otherwise,
4.1 Time complexity of the algorithm
Lemma 14.
For any , .
Proof.
We prove this by induction on . For the base case, observe that if , then for some and , , and is a complete graph. Then we have by Lemma 12 that . This proves the base case. For the inductive step, let us assume that for all such that , the statement of the lemma is true. Suppose that for some and . Then from Lemma 12, we have that . Since for all , we can use the induction hypothesis to conclude that . It is easy to see that . We thus have that . Next, suppose that for some and . Then we have by Lemma 13 that either or . In the former case, we are done since . So we assume that . Since for all , we have by the induction hypothesis that . It can be seen from Definition 5 that if for any , then . Since , it follows that . Thus, we get , and we are done.
Lemma 15.
The procedure Compute-potentials runs in time .
Proof.
Let and . Note that an adjacency list representation of the block tree of can be computed in time [25]. Recall that . Thus the operations like determining and , for some and , become just adjacency checking operations on . From Observations 10 and 11, it follows that the while loop of Algorithm 1 gets executed at most times, which by Lemma 14 is at most times. It is not difficult to see that . Thus, we have that the while loop gets executed at most times. As the for loop gets executed at most times inside each iteration of the while loop, and it takes time for one iteration of the for loop, we can conclude that each iteration of the while loop takes time at most . Thus the total running time of the algorithm is (since ).
4.2 Proof of correctness
Lemma 16.
Let . There exists an independent set of that is reachable from such that and .
Lemma 17.
For every and every independent set of that is reachable from , we have .
Corollary 18.
For each , .
Proof.
Clearly, for each independent set of that is reachable from , we have from Lemma 17 that . It follows that . From Lemma 16, we have that there exists an independent set of that is reachable from such that and . Then we have that . This implies that . This completes the proof. By the above corollary, we can reword Lemmas 12, 13, and 16 as follows.
Corollary 19.
Let be any connected block graph and be an independent set of .
-
(i)
For any and ,
-
(ii)
For any and ,
if such that and , then
and otherwise,
-
(iii)
For each , there exists an independent set of that is reachable from such that and .
Also, Lemma 15 can now be reworded as:
Theorem 20.
Given a connected block graph and an independent set of it, the procedure Compute-potentials runs in time and computes the value for each .
5 Rigid vertices
Let be a connected block graph and be any independent set of .
Definition 21.
A vertex is said to be rigid for , if there exist such that and .
Lemma 22.
If is rigid for an independent set of , then there does not exist any independent set of that is reachable from for which .
Lemma 23.
Let such that is not rigid for and let . If is under attack in (i.e. ), then there is an independent set of that is -reachable from such that .
Lemma 24.
Let and be two independent sets of and let and be the set of cut-vertices of that are rigid for and respectively. If is reachable from , then .
Proof.
Suppose for the sake of contradiction that is reachable from and . We can assume without loss of generality that there exists . Then we know that there exists such that , , and . By Corollary 19(iii), we have that there is an independent set that is reachable from such that . Since is reachable from , we have that is also reachable from . Then by Definition 9, we get that , which implies that . Let be independent sets of such that . As , we have from Lemma 8 that there exists some such that . Then is an independent set of that is reachable from and contains the vertex that is rigid for . This contradicts Lemma 22.
6 Restricting to subgraphs
In this section, we show that given a connected block graph and an independent set of it, there are certain kinds of induced subgraphs of having the property that each potential of has the same value as it had in .
For this section, we assume that is a connected block graph and is an independent set of . Let and . Let . It is easy to see that is a connected block graph. Observe that if and if . Observe that . We now define a function . For each , we define as follows. If , then we simply define for all . Otherwise, there exists a unique block such that . Then we define as follows: we define , and for every , we define . It is easy to verify that for all , is well defined and . For , we abuse notation and define that , and for , we similarly define .
Lemma 25.
If , and , then for each , we have and .
7 Putting the pieces together
Lemma 26.
Let be a connected block graph and be an independent set of . Let be a connected component of the graph obtained by removing all vertices of that are rigid for . Then there are no vertices in that are rigid for .
Lemma 27.
Let be a connected block graph and be independent sets of . If no cut-vertex of is rigid for or , and , then is reachable from .
Proof.
We prove this lemma using induction on . As the base case, we assume that . Let and . Suppose that is a path from to in such that and . Since is connected, is guaranteed to exist. Let . For , we define . Clearly, , and hence is reachable from . This proves the base case.
For the inductive step, we assume that if no cut-vertex of is rigid for independent sets and of , and , then is reachable from . Now, let us prove the lemma for and . We claim that there exists such that there exists at most one having . Indeed, we can choose as an endpoint of a longest path in whose both endpoints are cut-vertices of . Choose as a block from . Note that is a complete graph. Let . First, we define independent sets of such that , is reachable from , and is reachable from .
Let .
If , then we simply define and we are done. So we assume that . Since , we know that . Thus, if there exists , then is an independent set of such that , and we are done. So we assume that , or in other words, every vertex in is at a distance of at least 2 from in . Choose a vertex for which the distance between and in is as small as possible. Let be the shortest path from to in such that and (thus the distance between and in is ). Note that by our assumption, we have . Since is a block graph, it can be easily seen that , and also that . If for some , there exists a vertex , then is a path in between and having length . Then is a vertex in such that the distance between it and in is smaller than the distance between and in , which contradicts the choice of . Therefore, is not under attack in , or in other words , for any .
Let such that contains the edge . Notice that is under attack in (as ). By Lemma 23, there exists an independent set that is -reachable from such that . Let . Observe that is a path from to in . As , we have that for each . Let and . For , we define . It follows from the observations above that each of is an independent set of , and we also clearly have . We define . Then is reachable from , and hence also from . We also have .
Recall that . Thus , and since , we have that . This implies that (recall that such that ). Let . Clearly, is a connected block graph. Note that we can define a function as described in the beginning of Section 6. Since each is a complete graph, we have by Observation 7 that , and so in particular . Since , this implies by Corollary 19(i) that . Moreover, since , we have that for each , , which implies by Corollary 19(i) that . Further, we get by Definition 5 that , which implies by Corollary 19(ii) that . Therefore, since , we get by Lemma 25 that for each , and .
Since is reachable from and no vertex is rigid for , by Lemma 24 it is clear that there does not exist a vertex that is rigid for . This implies that for each , there does not exist such that and . From our previous observation that for each , and , we get that for each , there does not exist such that and . This implies that in the graph , no cut-vertex is rigid for the independent set of .
We thus have that no cut-vertex of is rigid for either of the independent sets or of . Further, since and , we have , which implies by the induction hypothesis that in , is reachable from . This implies that there exist independent sets of , where , such that . For each , since , it is clear that is an independent set of . It is easy to see that for each , since , we also have . Moreover, as , we have and . Hence, we get , which shows that is reachable from . Since we have already showed that is reachable from and is reachable from , we get that is reachable from . Hence, we are done.
Theorem 28.
Let be a block graph and let be independent sets of . Let be the set of vertices of that are rigid for respectively. Then is reachable from if and only if , and for every connected component of , we have .
Proof.
First, we prove the forward direction for which we consider the contrapositive statement. Suppose either or there exists a connected component of such that . If , then by Lemma 24 we have that is not reachable from and we are done in this case. Hence, we assume that and that there exists a connected component of such that . Suppose for the sake of contradiction that is reachable from . Then, there exists independent sets , where , such that . Let . Then clearly, we have and . Since , there exists such that . As , it must be the case that one of is in and the other is not in . Without loss of generality, assume that and . Since , it follows that . Since is a connected component of , we now have that , or in other words, is rigid for . This means that one of , is an independent set of that is reachable from that contains a vertex that is rigid for . This contradicts Lemma 22.
Next, we prove the reverse direction. Suppose that and for every connected component of , we have . By Lemma 26, we have that each connected component of has no vertex that is rigid for or . For each connected component of , since , applying Lemma 27 to and the independent sets and of , we can conclude that is reachable from in . Moreover, by Lemma 22, we know that , which implies that . It now follows from Observation 1 that is reachable from in , and then from Observation 2 that is reachable from in .
Corollary 29.
TS-Ind-set reconfig is polynomial time solvable on block graphs.
Proof.
Consider an input instance of the TS-Ind-set reconfig problem, where is a block graph and are independent sets of . We can assume that the input block graph is connected, as otherwise, we can simply solve the problem on each connected component of (Observation 1). Note that this means that . We first run Compute-potentials and Compute-potentials to compute and for all . By Theorem 20, this can be done in time. It is easy to see that once the potentials with respect to and have been computed, the set of vertices that are rigid for and the set of vertices that are rigid for can both be determined, and the equality of these sets checked, in time. If the set of vertices that are rigid is not the same for both and , we can return “No” since we know by Theorem 28 that is not reachable from . Otherwise, we remove the (common) set of rigid vertices for both and to obtain a graph – this can be done in time. Clearly, in time, we can determine the connected components of and also determine if for each connected component of . We return “No” if there exists some connected component of such that , and otherwise we return “Yes”. From Theorem 28, it follows that our algorithm returns “Yes” if and only if the independent set of is reachable from . Clearly, this algorithm runs in time . This completes the proof.
8 Conclusion
Although Corollary 29 tells us that there is a polynomial time algorithm that can determine whether two independent sets in a block graph are reconfigurable with each other, that algorithm does not produce a reconfiguration sequence between the two independent sets. In fact, it is not even clear whether there is a reconfiguration sequence of polynomial length between any two independent sets in a block graph that are reconfigurable with each other. It was shown in Briański et al. [10] that for any two independent sets that are reconfigurable with each other in an interval graph, there is a reconfiguration sequence of length between them (where is the number of vertices in the graph). For trees, it is shown in Demaine et al. [12] that any two independent sets that are reconfigurable with each other have a reconfiguration sequence of length between them.
References
- [1] Rémy Belmonte, Tesshu Hanaka, Michael Lampis, Hirotaka Ono, and Yota Otachi. Independent set reconfiguration parameterized by modular-width. Algorithmica, 82(9):2586–2605, 2020. doi:10.1007/S00453-020-00700-Y.
- [2] Rémy Belmonte, Eun Jung Kim, Michael Lampis, Valia Mitsou, Yota Otachi, and Florian Sikora. Token sliding on split graphs. Theory of Computing Systems, 65:662–686, 2021. doi:10.1007/S00224-020-09967-8.
- [3] Marthe Bonamy and Nicolas Bousquet. Token sliding on chordal graphs. In Hans L. Bodlaender and Gerhard J. Woeginger, editors, Graph-Theoretic Concepts in Computer Science (WG 2017), volume 10520 of Lecture Notes in Computer Science, pages 127–139, Eindhoven, Netherlands, 2017. Springer International Publishing. doi:10.1007/978-3-319-68705-6_10.
- [4] Marthe Bonamy, Nicolas Bousquet, Marc Heinrich, Takehiro Ito, Yusuke Kobayashi, Arnaud Mary, Moritz Mühlenthaler, and Kunihiro Wasa. The perfect matching reconfiguration problem. In Peter Rossmanith, Pinar Heggernes, and Joost-Pieter Katoen, editors, 44th International Symposium on Mathematical Foundations of Computer Science, MFCS 2019, August 26-30, volume 138 of LIPIcs, pages 80:1–80:14, Aachen, Germany, 2019. Schloss Dagstuhl – Leibniz-Zentrum für Informatik. doi:10.4230/LIPICS.MFCS.2019.80.
- [5] Marthe Bonamy, Paul Dorbec, and Paul Ouvrard. Dominating sets reconfiguration under token sliding. Discrete Applied Mathematics, 301:6–18, 2021. doi:10.1016/j.dam.2021.05.014.
- [6] Paul S. Bonsma. Independent set reconfiguration in cographs and their generalizations. Journal of Graph Theory, 83(2):164–195, 2016. doi:10.1002/JGT.21992.
- [7] Paul S. Bonsma and Luis Cereceda. Finding paths between graph colourings: PSPACE-completeness and superpolynomial distances. Theoretical Computer Science, 410(50):5215–5226, 2009. doi:10.1016/j.tcs.2009.08.023.
- [8] Paul S. Bonsma, Marcin Kamiński, and Marcin Wrochna. Reconfiguring independent sets in claw-free graphs. In R. Ravi and Inge Li Gørtz, editors, Algorithm Theory - SWAT 2014 - 14th Scandinavian Symposium and Workshops, July 2-4, 2014. Proceedings, volume 8503 of Lecture Notes in Computer Science, pages 86–97, Copenhagen, Denmark, 2014. Springer. doi:10.1007/978-3-319-08404-6_8.
- [9] Nicolas Bousquet and Alice Joffard. TS-reconfiguration of dominating sets in circle and circular-arc graphs. In Evripidis Bampis and Aris Pagourtzis, editors, Fundamentals of Computation Theory - 23rd International Symposium, FCT 2021, September 12-15, Proceedings, volume 12867 of Lecture Notes in Computer Science, pages 114–134, Athens, Greece, 2021. Springer. doi:10.1007/978-3-030-86593-1_8.
- [10] Marcin Briański, Stefan Felsner, Jȩdrzej Hodor, and Piotr Micek. Reconfiguring independent sets on interval graphs. In Filippo Bonchi and Simon J. Puglisi, editors, 46th International Symposium on Mathematical Foundations of Computer Science, MFCS 2021, August 23-27, volume 202 of LIPIcs, pages 23:1–23:14, Tallinn, Estonia, 2021. Schloss Dagstuhl – Leibniz-Zentrum für Informatik. doi:10.4230/LIPIcs.MFCS.2021.23.
- [11] Luis Cereceda, Jan van den Heuvel, and Matthew Johnson. Connectedness of the graph of vertex-colourings. Discrete Mathematics, 308(5-6):913–919, 2008. doi:10.1016/j.disc.2007.07.028.
- [12] Erik D. Demaine, Martin L. Demaine, Eli Fox-Epstein, Duc A. Hoang, Takehiro Ito, Hirotaka Ono, Yota Otachi, Ryuhei Uehara, and Takeshi Yamada. Linear-time algorithm for sliding tokens on trees. Theoretical Computer Science, 600:132–142, 2015. doi:10.1016/j.tcs.2015.07.037.
- [13] Reinhard Diestel. Graph Theory, 4th Edition, volume 173 of Graduate texts in mathematics. Springer, Heidelberg, 2012.
- [14] Eli Fox-Epstein, Duc A. Hoang, Yota Otachi, and Ryuhei Uehara. Sliding token on bipartite permutation graphs. In Khaled M. Elbassioni and Kazuhisa Makino, editors, Algorithms and Computation - 26th International Symposium, ISAAC 2015, December 9-11, volume 9472 of Lecture Notes in Computer Science, pages 237–247, Nagoya, Japan, 2015. Springer. doi:10.1007/978-3-662-48971-0_21.
- [15] Mathew C. Francis and Veena Prabhakaran. Token sliding independent set reconfiguration on block graphs, 2024. doi:10.48550/arXiv.2410.07060.
- [16] Ruth Haas and Karen Seyffarth. The -dominating graph. Graphs and Combinatorics, 30(3):609–617, 2014. doi:10.1007/S00373-013-1302-3.
- [17] Arash Haddadan, Takehiro Ito, Amer E. Mouawad, Naomi Nishimura, Hirotaka Ono, Akira Suzuki, and Youcef Tebbal. The complexity of dominating set reconfiguration. Theoretical Computer Science, 651:37–49, 2016. doi:10.1016/j.tcs.2016.08.016.
- [18] Robert A. Hearn and Erik D. Demaine. PSPACE-completeness of sliding-block puzzles and other problems through the nondeterministic constraint logic model of computation. Theoretical Computer Science, 343(1-2):72–96, 2005. doi:10.1016/j.tcs.2005.05.008.
- [19] Duc A. Hoang. A note regarding “Sliding Tokens on Block Graphs”. https://hoanganhduc.github.io/events/WALCOM2017/note.pdf, September 2019.
- [20] Duc A. Hoang. A note regarding “Sliding Tokens on a Cactus”. https://hoanganhduc.github.io/events/ISAAC2016/note.pdf, July 2024.
- [21] Duc A. Hoang, Eli Fox-Epstein, and Ryuhei Uehara. Sliding tokens on block graphs. In Sheung-Hung Poon, Md. Saidur Rahman, and Hsu-Chun Yen, editors, Algorithms and Computation: 11th International Conference and Workshops (WALCOM 2017), volume 10167 of Lecture Notes in Computer Science, pages 460–471. Springer, 2017. doi:10.1007/978-3-319-53925-6_36.
- [22] Duc A. Hoang, Amanj Khorramian, and Ryuhei Uehara. Shortest reconfiguration sequence for sliding tokens on spiders. In Pinar Heggernes, editor, Algorithms and Complexity - 11th International Conference, CIAC 2019, May 27-29, pages 262–273, Rome, Italy, 2019. Springer International Publishing. doi:10.1007/978-3-030-17402-6_22.
- [23] Duc A. Hoang and Ryuhei Uehara. Sliding tokens on a cactus. In Seok-Hee Hong, editor, 27th International Symposium on Algorithms and Computation (ISAAC 2016), volume 64 of Leibniz International Proceedings in Informatics (LIPIcs), pages 37:1–37:26, Dagstuhl, Germany, 2016. Schloss Dagstuhl – Leibniz-Zentrum für Informatik. doi:10.4230/LIPIcs.ISAAC.2016.37.
- [24] Duc A. Hoang and Ryuhei Uehara. Polynomial-time algorithms for sliding tokens on cactus graphs and block graphs, 2018. arXiv:1705.00429.
- [25] John Hopcroft and Robert Tarjan. Algorithm 447: Efficient algorithms for graph manipulation. Communications of the ACM, 16(6):372–378, 1973.
- [26] Takehiro Ito, Erik D. Demaine, Nicholas J.A. Harvey, Christos H. Papadimitriou, Martha Sideri, Ryuhei Uehara, and Yushi Uno. On the complexity of reconfiguration problems. Theoretical Computer Science, 412(12):1054–1065, 2011. doi:10.1016/j.tcs.2010.12.005.
- [27] Takehiro Ito, Marcin Kamiński, and Hirotaka Ono. Fixed-parameter tractability of token jumping on planar graphs. In Hee-Kap Ahn and Chan-Su Shin, editors, Algorithms and Computation (ISAAC 2014), volume 8889 of Lecture Notes in Computer Science, pages 208–219, Jeonju, Korea, 2014. Springer International Publishing. doi:10.1007/978-3-319-13075-0_17.
- [28] Takehiro Ito, Hiroyuki Nooka, and Xiao Zhou. Reconfiguration of vertex covers in a graph. IEICE Transactions on Information and Systems, 99-D(3):598–606, 2016. doi:10.1587/TRANSINF.2015FCP0010.
- [29] Takehiro Ito, Hirotaka Ono, and Yota Otachi. Reconfiguration of cliques in a graph. Discrete Applied Mathematics, 333:43–58, 2023. doi:10.1016/j.dam.2023.01.026.
- [30] Marcin Kamiński, Paul Medvedev, and Martin Milanič. Complexity of independent set reconfigurability problems. Theoretical Computer Science, 439:9–15, 2012. doi:10.1016/j.tcs.2012.03.004.
- [31] Daniel Lokshtanov and Amer E. Mouawad. The complexity of independent set reconfiguration on bipartite graphs. ACM Transactions on Algorithms (TALG), 15(1):1–19, 2018. doi:10.1145/3280825.
- [32] Amer E. Mouawad, Naomi Nishimura, Venkatesh Raman, and Sebastian Siebertz. Vertex cover reconfiguration and beyond. Algorithms, 11(2):20, 2018. doi:10.3390/A11020020.
- [33] Noam Solomon and Shay Solomon. A generalized matching reconfiguration problem. In James R. Lee, editor, 12th Innovations in Theoretical Computer Science Conference, ITCS 2021, January 6-8, volume 185 of LIPIcs, pages 57:1–57:20, Virtual Conference, 2021. Schloss Dagstuhl – Leibniz-Zentrum für Informatik. doi:10.4230/LIPICS.ITCS.2021.57.
- [34] Marcin Wrochna. Reconfiguration in bounded bandwidth and tree-depth. Journal of Computer and System Sciences, 93:1–10, 2018. doi:10.1016/j.jcss.2017.11.003.
