# On the complexity of color-avoiding site and bond percolation

###### Abstract

The mathematical analysis of robustness and error-tolerance of complex networks has been in the center of research interest. On the other hand, little work has been done when the attack-tolerance of the vertices or edges are not independent but certain classes of vertices or edges share a mutual vulnerability. In this study, we consider a graph and we assign colors to the vertices or edges, where the color-classes correspond to the shared vulnerabilities. An important problem is to find robustly connected vertex sets: nodes that remain connected to each other by paths providing any type of error (i.e. erasing any vertices or edges of the given color). This is also known as color-avoiding percolation.

In this paper, we study various possible modeling approaches of shared vulnerabilities, we analyze the computational complexity of finding the robustly (color-avoiding) connected components. We find that the presented approaches differ significantly regarding their complexity.

###### Keywords:

computational complexity, color-avoiding percolation, robustly connected components, attack tolerance, shared vulnerability## 1 Introduction and related works

Understanding the attack and error tolerance of complex networks – i.e. the ability to maintain the overall connectivity of the network as the vertices (or edges) are removed – has attracted a great deal of research interest in the last two decades [albert2000error, callaway2000network, zhao2005tolerance, shao2015percolation, barabasi2016network]. Most of the works have focused on random error, meaning that the nodes are considered to be homogeneous with respect to their vulnerabilities, or hub-targeted attack, i.e. the nodes fail preferentially according to a structural property such as degree or betweenness centrality. However, real-world networks are typically heterogeneous (not only with respect to their degree distribution): nodes (or edges) can be separated into different classes regarding a mutually shared vulnerability within the class. The shared vulnerabilities can be modeled by assigning a color to each class that may represent a shared eavesdropper, a controlling entity or correlated failures. A "color-avoiding" percolation framework was developed by Krause et al. [krause2016hidden, krause2017color, kadovic2018bond].

Traditional percolation theory can be used to study the behaviour of connected components in a graph if a vertex (site) or edge (bond) failure occurs with a given probability [stauffer2014introduction, newman2018networks]. In the traditional approach a single path provides connectivity, however, here connectivity corresponds to the ability to avoid all vulnerable sets of vertices or edges via multiple paths such that no color is required for all paths (color-avoiding connectivity).

This question is different from -core percolation where any paths are sufficient between two nodes [yuan2016k, dorogovtsev2006k]; and also different from -connectivity, where mutually independent paths are required [penrose1999k]. Another related concept is percolation on multiplex networks [son2012percolation, hackett2016bond] where the layers can be thought of as the colors, but this approach also differs in the definition of connectivity [kadovic2018bond].

To study color-avoiding percolation a new framework was needed. The problem was introduced by Krause et al. [krause2016hidden] who analyzed the color-avoiding connectivity of networks with shared vulnerabilities on the vertices. The authors also examined the latent color-avoiding connectivity structure of the AS-level Internet [siganos2003power] where the color of the node represents the country to which the router is registered. They have found that 26,228 out of 49,743 of the routers are in the largest color-avoiding component, i.e. secure communication can be obtained among them by splitting the message into more pieces and transmitting them on different paths - even if every country is eavesdropping on its traffic [krause2016hidden]. In [krause2017color] the theory of color-avoiding percolation has been extended. The authors study analytically and numerically the maximal set of nodes that are color-avoiding connected in random networks with randomly distributed colors. Shekhtman et al. [shekhtman2018critical] generalize this framework to study secure message-passing in networks with a given community structure and different classes of vulnerabilities. Kadović et al. [kadovic2018bond] formulated color-avoiding percolation for colored edges as well and studied color-avoiding bond and site percolation for networks with a power-law degree distribution.

Beside color-avoiding percolation, finding paths in colored graphs has gained interest in other domains as well. Wu [wu2012maximum] introduced the Maximum Colored Disjoint Paths (MaxCDP) problem that is to find the maximum number of vertex-disjoint paths with edges of the same color between two vertices. The complexity of MaxCDP has been investigated: it can be solved in polynomial time if the input graph contains one color but if there are at least two colors the problem is NP-hard [wu2012maximum, gourves2012paths]. An even harder variant of the problem, to find the maximum number of vertex-disjoint and color-disjoint uni-color paths, was introduced by Dondi et al. [dondi2016finding].

Another related problem is finding -multicolor paths in a graph. Santos et al. [santos2017multicolour] show that the problem is NP-hard and it is also hard to approximate. Another interesting problem is finding a path from a vertex that meets all the colors in a graph. This problem is NP-hard considering a properly colored directed graph, as well as finding the shortest or longest such paths [granata2012complexity]. A survey on algorithmic and computational results for other coloring problems can be found in [malaguti2010survey].

On the other hand, none of the previously mentioned works have addressed the computational complexity of color-avoiding percolation. In this article we present various modeling approaches to handle shared vulnerabilities along with the analysis regarding computational complexity. Section 2 is devoted to the problem definition considering both vertices and edges as the targets of the attack. In Section 3 we conduct complexity analysis and find that, although the presented approaches are seemingly very similar, they differ significantly regarding computational complexity. Section 4 concludes the work.

## 2 Modeling shared vulnerabilities in networks

There are two main approaches of modeling shared vulnerabilities in networks depending on the target of the attack: either the links between the nodes can be destroyed (or eavesdropped) or the nodes themselves are the subject of a possible failure. The former is modeled by coloring the edges according to the shared vulnerabilities leading to color-avoiding bond percolation, while the latter is represented by assigning a color to the vertices having the same vulnerability resulting in color-avoiding site percolation. The color-avoiding edge- and vertex-connectivity is illustrated in Fig. 1 on an Erdős-Rényi random graph, the exact concepts will be introduced later in this section.

### 2.1 Coloring the edges

It is natural to consider the case when the edges with shared vulnerabilities are the subject of the attack and the vertices remain indistinguishable and unharmed. Some possible real-world examples with edges having shared vulnerabilities: different means of transportation (bus, underground, railway etc.) for a traffic network, various metabolic pathways depending on particular biochemical profiles [kadovic2017color].

#### 2.1.1 Every edge has one color

###### Definition 1

Let be a graph, a color set and a function that assign colors to the edges.

For any the vertices are called -avoiding edge-connected if after the removal of the edges of color , and are in the same component in the remaining graph, i.e there exists a path between and which does not contain any edges of color – such a path is called a -avoiding path.

We say that the vertices are color-avoiding edge-connected if they are -avoiding edge-connected for all .

The relation of color-avoiding edge-connectivity (see Fig. 2) is an equivalence relation and thus it defines a partition of the vertex set. The equivalence classes are called color-avoiding edge-connected components.

#### 2.1.2 Multiple edges

A natural modification of the previous definition is if we allow for multiple edges, meaning that there can be more types of connection between two nodes (see Fig. 3). Multiple edges make the network less vulnerable: if there are at least two edges of different colors between two nodes, then they are color-avoiding edge-connected since their connection cannot be destroyed by attacking only one color at a time.

#### 2.1.3 Every edge has a list of colors

Another possible generalization of the framework is to modify Def. 1 in such a way that we make the edges more sensitive to attack by assigning a list of colors to the vertices representing all the vulnerabilities that an edge has and an edge is destroyed whenever one of its colors is attacked (see Fig. 4). Formally, the function is modified: , where is the power set of the color set . Furthermore, in this scenario we say that the vertices are -avoiding edge-connected if after the removal of the edges that contain on their lists of colors, and are in the same component in the remaining graph.

### 2.2 Coloring the vertices

It is also interesting to consider the case when the colors are assigned to vertices that are exposed to attack or failure while the edges remain indistinguishable and unharmed. Possible real-world scenarios of having vulnerable classes of nodes include AS-level Internet with routers registered in different countries, telecommunication networks with transmission towers operated by different providers. The color of the nodes can also represent e.g. ownership, geographical location, dependence on a critical material [krause2016hidden]. The strong/weak vertex color-avoiding connectivity is illustrated in Fig. 1 on an Erdős-Rényi random graph.

#### 2.2.1 Strong color-avoiding connectivity

###### Definition 2 ([krause2016hidden])

Let be a graph, a color set and a function that assigns colors to the vertices.

For any the vertices are called strongly -avoiding vertex-connected (or strongly -avoiding connected) if after the removal of the vertices of color excluding these two vertices, they are in the same component in the remaining graph, i.e. there exists a path between and whose internal vertices are not of color – such a path is called a -avoiding path.

We say that the vertices are strongly color-avoiding vertex-connected (or strongly color-avoiding connected) if they are strongly -avoiding connected for all .

In this case the relation of strong color-avoiding connectivity is not transitive, therefore it is not an equivalence relation (see Fig. 5). The strongly color-avoiding connected components are maximal sets of vertices such that any two of them are strongly color-avoiding connected.

#### 2.2.2 More colors on the vertices

Similarly to the case when the edges were colored, here we can also assign multiple colors to vertices. One can think of the multiple colors (lists of colors) as multiple vulnerabilities on the nodes making the network less robust. Another approach is to consider the scenario analogously to multiple edges. Here it is important to note that if a node has at least two different colors, it makes the vertex immortal under the previously mentioned color attacks analogously to the "multiple edges" approach.

#### 2.2.3 Weak color-avoiding connectivity

Contrary to color-avoiding edge-connectivity, if we color the vertices, it is dubious how to handle the source and target nodes in the definition of color-avoiding vertex-connectivity. In Def. 2 a possible approach was presented that can capture several realistic scenarios. Considering eavesdropping, it is reasonable that the sender and receiver guarantee the security of the message but vulnerability may affect the nodes as transmitters. However, when the attack of the vertices rather means destroying the entities, it is more natural to consider another approach to define color-avoiding vertex-connectivity: attacking red vertices makes it pointless which nodes a red vertex can reach on a path without other red vertices. This scenario is captured by the concept of weak color-avoiding connectivity (see Fig. 5).

###### Definition 3

Let be a connected graph, a color set and a function that assigns colors to the vertices.

For any the vertices are called weakly -avoiding vertex-connected (or weakly -avoiding connected) if after the removal of the vertices of color , either at least one of or is deleted or they are in the same component in the remaining graph, i.e. if neither nor are of color , there exists a path between them whose vertices are not of color – such a path is called a -avoiding path.

We say that the vertices are weakly color-avoiding vertex-connected (or weakly color-avoiding connected) if they are weakly -avoiding connected for all .

Similarly to the strong case, weak color-avoiding connectivity is also not an equivalence relation (see Fig. 5). The weakly color-avoiding connected components are maximal sets of vertices such that any two of them are weakly color-avoiding connected.

We can extend the definition to non-connected graphs with the extra condition that two vertices can be weakly color-avoiding connected only if they are in the same component in the original graph.

###### Remark 1

The notion of weakly color-avoiding connectivity is indeed a weaker concept than the one defined in Def. 2. It is easy to see that if two vertices are strongly color-avoiding connected then it implies that they are weakly color-avoiding connected as well.

#### 2.2.4 More colors on the vertices

Weak color-avoiding connectivity can be extended to multiple colors as well, in the exact same manner as strong color-avoiding connectivity.

#### 2.2.5 Other generalizations

It is worth mentioning that other generalizations have been also proposed. Krause et al. [krause2017color] consider nodes with differentiated functions, either as senders/receivers or transmitters. They introduce a flexible trust scenario where vertices can be trusted or avoided in both functions. Trusting colors for transmission naturally increases color-avoiding connectivity [krause2017color].

## 3 Computational complexity of finding the color-avoiding components

After presenting the problem of color-avoiding percolation and various modeling approaches, in this section we analyze the computational complexity of finding the robustly (color-avoiding) connected components considering the different problem definitions. In the following we assume the reader’s acquaintance with standard concepts of computational complexity theory that may be found e.g. in [sipser2012introduction]. We will use in this section that the following well-known decision problem is NP-complete [sipser2012introduction].

Clique

Instance: a graph and a positive integer .

Question: does have a clique of size at least ?

Now we list the decision problems for which the computational complexity will be presented in this section. Although the problems are seemingly very similar, they differ considerably concerning their complexity.

ColorAvoidingEdgeConnectedComponent

Instance: a graph , a color set , a function and a positive integer .

Question: is it true that has a color-avoiding edge-connected component of size at least ?

StronglyColorAvoidingConnectedComponent

Instance: a graph , a color set , a function and a positive integer .

Question: is it true that has a strongly color-avoiding connected component of size at least ?

WeaklyColorAvoidingConnectedComponent

Instance: a graph , a color set , a function and a positive integer .

Question: is it true that has a weakly color-avoiding connected component of size at least ?

WeaklyColorAvoidingConnectedComponent-ListOfColors

Instance: a graph , a color set , a function and a positive integer .

Question: is it true that has a weakly color-avoiding connected component of size at least ?

First we prove that the color-avoiding edge-connected components can be found in polynomial time.

###### Theorem 3.1

The problem ColorAvoidingEdgeConnectedComponent is in P. More precisely, the color-avoiding edge-connected components of can be found in polynomial time.

###### Proof

Let be a graph on the vertex set of where two vertices are connected if and only if they are color-avoiding edge-connected (for an example see Fig. 6). Obviously, can be constructed in polynomial time: we need to check for every pair of vertices whether they remain in the same component after erasing the edges of each color separately.

Since the color-avoiding edge-connectivity is an equivalence relation, the graph is -free, i.e. it cannot contain a path on 3 vertices as an induced subgraph. Obviously, the color-avoiding edge-connected components of are exactly the maximal cliques of .

It is easy to see that the components of a -free graph are cliques, therefore the maximal cliques of are its components. Hence, the color-avoiding edge-connected components of can be found in polynomial time.

The above theorem obviously can be applied when there are multiple edges or when lists of colors are associated with the edges. Clearly, the same proof works in both cases.

Now, we move on to the analysis of color-avoiding vertex percolation. First, we prove that the stronger definition (Def. 2) leads to an NP-complete problem.

###### Theorem 3.2

The problem StronglyColorAvoidingConnectedComponent is NP-complete.

###### Proof

Obviously, this problem is in NP: a witness is a strongly color-avoiding connected component of size at least . To show that this problem is NP-hard we reduce Clique to it.

If we use only one color, then by definition the strongly color-avoiding connected components of are exactly its maximal cliques, therefore our problem is indeed NP-complete.

Next, we present that using the weak definition of color-avoiding connectivity (Def. 3) the connected components can be found in polynomial time. The proof consists of two main parts. First, we show that finding the weakly color-avoiding connected components in any graph is equivalent to finding the cliques of an associated locally chordal graph. This together with the fact that cliques can be found in polynomial time in a locally chordal graph gives us the desired result.

###### Theorem 3.3

Let be a graph, a set of colors and a function that assigns colors to the vertices. Let be a graph on the vertex set of where two vertices are connected if and only if they are weakly color-avoiding connected. Then the graph is locally chordal, i.e. the neighborhood of any vertex cannot contain an induced cycle of length at least 4.

###### Proof

We note that throughout this proof the notion "color-avoiding" always stands for "weakly color-avoiding".

It is easy to see that a graph is locally chordal if and only if it does not contain a wheel on at least five vertices as an induced subgraph: if the graph contains an induced wheel on at least five vertices, then the outer cycle of this wheel is an induced cycle of length at least four in the neighborhood of the center vertex, therefore the graph is not locally chordal. To prove the reverse direction, suppose that the graph is not locally chordal, i.e., there exists a vertex whose neighborhood contains an induced cycle of length at least four. Then this vertex and this cycle together form an induced wheel on at least five vertices.

Suppose to the contrary that contains a wheel on vertices as an induced subgraph. Let be the center vertex of this wheel, and be the vertices of the outer cycle (in this order), see Fig. 8.

We can assume that the color of the vertex is . Now consider the vertices and . Since they are not connected in , there exists at least one color such that the removal of the vertices of that color disconnects them. On the other hand, the -avoiding paths from to and from to (which exist since ) can be combined into -avoiding paths from to for every color . (Obviously, this procedure does not work with color since the vertex is of color .) Thus, only the removal of the vertices of color can disconnect and . Therefore, must have also color (otherwise the -avoiding paths from to and from to could be combined into a -avoiding path from to ).

Now consider the vertices and . Since they are not connected in , there exists at least one color such that the removal of the vertices of that color disconnects them. However, the -avoiding paths from to and from to (which exist since ) can be combined into -avoiding paths from to for every color . Again, this procedure does not work with color since the vertex is of color . But since is also of color , and are weakly -avoiding connected by definition. Hence, they are weakly color-avoiding connected, which is a contradiction.

###### Theorem 3.4 ([gavril1996intersection])

The maximal cliques of any locally chordal graph can be found in polynomial time.

###### Corollary 1

The problem WeaklyColorAvoidingConnectedComponent is in P. More precisely, the weakly color-avoiding connected components of can be found in polynomial time.

The above theorem obviously can be applied in the more robust case when there may be multiple colors on the vertices resulting in indestructible nodes.

On the other hand, in the other case – when the vertices have multiple colors (lists of colors) and a vertex is destroyed whenever one of its colors is attacked – seemingly paradoxically – leads to a much harder, NP-complete problem.

###### Theorem 3.5

The WeaklyColorAvoidingConnectedComponent-ListOfColors problem is NP-complete.

###### Proof

Obviously, this problem is in NP. To show that this problem is NP-hard we reduce Clique to it.

Assign a color to any two vertices, and add this color to the list of every other vertex (so altogether we use colors and every vertex has colors on its list). For an example on the construction of lists of colors see Fig. 9. Now, two vertices are weakly color-avoiding connected if and only if they are adjacent in . Hence, the weakly color-avoiding connected components of are exactly its maximal cliques, therefore our problem is indeed NP-complete.

###### Remark 2

In the above proof we can reduce the number of used colors by assigning colors only to nonadjacent pair of vertices; we can also reduce the lengths of the lists by adding this color only to a minimum vertex cut for these two nodes.

## 4 Conclusion

In this paper, we presented different notions to model various scenarios of shared vulnerabilities in complex networks by assigning colors to the edges or vertices using the framework of color-avoiding percolation developed by Krause et al. [krause2017color]. We also analyzed the complexity of finding the color-avoiding connected components. Despite the similarity of the presented concepts, the associated percolation problems – seemingly paradoxically – differ significantly regarding computational complexity. We showed that the color-avoiding edge-connected components can be found in polynomial time. However, the complexity of finding the color-avoiding vertex-connected components highly depends on the exact definition, using a strong version the problem is NP-hard, while using a weaker notion makes it possible to find the components in polynomial time.

#### 4.0.1 Acknowledgment.

We thank Michael Danziger, Panna Fekete and Balázs Ráth for useful conversations. The research reported in this paper was supported by the BME- Artificial Intelligence FIKP grant of EMMI (BME FIKP-MI/SC). The publication is also supported by the EFOP-3.6.2-16-2017-00015 project entitled "Deepening the activities of HU-MATHS-IN, the Hungarian Service Network for Mathematics in Industry and Innovations" through University of Debrecen. The work of both authors is partially supported by the NKFI FK 123962 grant. R. M. is supported by NKFIH K123782 grant and by MTA-BME Stochastics Research Group.