Journal of Graph Algorithms and Applications Variants of Spreading Messages 684 Thirumala and Pandu Rangan Variants of Spreading Messages

In a distributed computing environment a faulty node could lead other nodes in the system to behave in a faulty manner. An initial set of faults could make all the nodes in the system become faulty. Such a set is called an irreversible dynamo. This is modelled as spreading a message among individuals V in a community G = (V, E) where E represents the acquaintance relation. A particular individual will believe a message if some of the individual's acquaintances believe the same and forward the believed messages to its neighbours. We are interested in finding the minimum set of initial individuals to be considered as convinced, called the min-seed, such that every individual in the community is finally convinced. In this paper we give an upper bound on the cardinality of the min-seed for undirected graphs. We consider some interesting variants of the problem and analyse their complexities and give some approximate algorithms.


Introduction
In a distributed computing environment a node could become faulty.A faulty node could make some other nodes in the system behave in a faulty manner.In order to design a fault tolerant system, we need to examine some faulty nodes as well as the cumulative effect of these initial faulty nodes on other nodes of the system.We are interested in the patterns of the initial faults that can occur and then could lead all the other nodes in the system behave in a faulty manner.The initial set of faults that leads all the nodes to become faulty is called a dynamic monopoly in the system.Faults can be temporary or permanent.If we consider the faults of the system as permanent then the problem is called as the irreversible dynamo [3].This problem is modelled in graph theory as the Spreading Message problem.
In the Spreading Message problem we have a set of individuals representing the vertices in a graph and the acquaintance relation of individuals represents the edges of the graph.An individual believes a message when he receives it from his acquaintances, who are already convinced by the message.Every vertex v has a threshold α (v).A vertex is considered as convinced, if at least α (v) of its neighbours are already convinced.We are interested in finding a minimum cardinality set of individuals to be convinced who can eventually convince all the individuals.The cardinality of this set is called the min-seed.We can now observe that in the spreading messages problem, vertices represent nodes in a distributed environment and a convinced vertex represents a faulty node.The threshold function α (v) represents fault tolerance of an individual node.This problem was considered by Peleg [17], where there were white and black nodes corresponding to good and faulty nodes.The problem was largely studied on random graphs [19].A variant of the problem is to consider the majority scenarios, where a vertex will be convinced if majority of its neighbours are convinced.Majority scenarios like strict majority and weak majority were considered in the past on tori [10], butterfly graph [13] and chordal rings [9].The problem with an arbitrary threshold function was first considered by Ching-Lueh Chang and Yuh-Dauh Lyuu [4,5], where it is shown to be NP-complete on arbitrary undirected graphs.
In our paper, we give an upper bound on min-seed of unbounded spreading messages of an arbitrary undirected graph and show that the problem is NP-Complete on bipartite graphs.The first variant we consider is spreading messages within one round.For this variant we give a lower bound and an (H (α M ) + H (∆)) approximation algorithm, where H (n) represents the sum of first n terms in the harmonic series, α M represents the maximum threshold of vertices in the graph and ∆ represents the maximum degree of a graph.We also show that this variant is APX-Complete on bounded degree 3 graphs and on p-claw free graphs we provide an cα M •(p−1) αm approximation algorithm, where α m represents minimum threshold of vertices in the graph and c = max{1, α m p − 1 } and c ∈ R + .Another variant we consider is spreading messages within k rounds.We show that this variant is NP-complete on arbitrary undi-rected graphs.Then we introduce spreading messages problem with real thresholds and belief factors.We show that this variant is NP-Complete on cliques and complete bipartite graphs.Finally we consider spreading messages with each individual having r radius of coverage and we give an (H (α M ) + H (n)) approximation algorithm for arbitrary undirected graphs.A preliminary version of this paper has been presented at [18].

Notation and Definitions
A simple graph is a collection of vertices V and edges E represented as G = (V, E), where each edge is an unordered pair of distinct vertices.In this paper we consider only simple undirected connected graphs.We also assume that |V | > 1 for the graphs we consider.The set of neighbours of a vertex v is denoted by The distance between two vertices in a graph is the number of edges in a shortest path connecting them.N r (v) is the set of all vertices whose distance from v is less than or equal to r and Let G = (V, E) be a simple undirected graph.Assume V represents a set of individuals and the acquintance relation between them is represented with edges.A vertex or an individual believes a message when he receives it from his acquaintances, who are already convinced by the message.Let α : V → N be a threshold function such that 1 ≤ α (v) ≤ d (v) for all v ∈ V , where a vertex v is convinced if at least α (v) of neighbours of v are already convinced.We are interested in finding a minimum cardinality set of individuals to be convinced who can eventually convince all the individuals.The cardinality of this set is called the min-seed.
Definition 1 Let S 0 ⊆ V be a vertex subset.Then spreading of a message will happen in rounds.Let C 0 = S 0 ⊆ V be the initial set of vertices considered directly convinced.
Unbounded Spreading Messages: S 0 is called seed if and only if ∞) is defined as min S (|S|) for all possible seeds S. A seed S with |S| = Min-Seed (G, α, ∞) is called an optimum seed.Bounded Spreading Messages within k Rounds: S 0 is called seed if and only if k i=0 S i = V .Min-Seed (G, α, k) is defined as min S (|S|) for all seeds S. Unbounded Spreading Messages With Radius of Coverage:We consider another variant of Spreading Messages in which we introduce the new term radius of coverage.If a vertex v is convinced and let its radius of coverage be r then v can send message to all vertices reachable from v with distance less than or equal to r.We consider the case where all vertices have the same radius of coverage r.If r = 1 then this problem is the same as the original version.Unbounded Spreading Messages With Real Thresholds and Belief Factors: Let β : E → Q + be a mapping such that 0 < β (u, v) ≤ 1 and α : β (u, v) , for all v ∈ V .For an edge (u, v), β (u, v) is called belief factor of (u, v).In any round C denotes the set of convinced vertices and N c (v) denote the set of convinced neighbours of a vertex v.A vertex v is convinced by a message if The definition of C i remains same but the S i is defined as follows: Unified Notation: To cover all the variants, we give a unified notation for the problem.The problem Min-Seed(G, α, k, β, r): • r -radius of coverage , β values are equal to 1 then they are not written explicitely.
We denote by α min the minimum threshold function, i.e., ∀v, α(v) = 1.We denote by α max the maximum threshold function, i.e., ∀v, ) is the number of vertices in the Min-Seed solution, i.e., size of the Min-Seed.Given G, α, k, β, r, s, where k is a positive integer, let Min-Seed-D be the problem of deciding whether Min-Seed-Cnt(G, α, k, β, r) ≤ s.
Lemma 1 From the definition of the problem, we can observe the following statements: JGAA, 15(5) 683-699 (2011) 687 Given an instance of Seed(G, α, k, β, r) problem and set of vertices of G, by using brute-fource technique we can check whether the given set of vertices is seed for all the variants and their combinations in polynomial amount of time.Hence we have the following lemma.
Lemma 2 For any given graph G, Min-Seed-D(G, α, k, β, r, s) is in N P .Some well known N P − complete problems used in this paper are: Vertex-Cover-Opt is the problem of computing the minimum size vertex-cover.
Definition 3 [15] Given a universal set of elements U and a set S, where S is set of subsets of U .A Set-cover is a collection of the subsets in S whose union is U .Set-Cover-Opt is the problem of computing the minimum size set-cover.
Definition 4 [15] A dominating set of an undirected graph G = (V, E) is a subset of V, say D, such that every vertex of D \ V is a neighbour of at least one vertex in D. Dominating-Set-Opt is the problem of computing the minimum size dominating-set.
Definition 5 [11] Given G = (V, E) and let r be a positive integer.A nonempty subset D ⊆ V is a r − dominating set if every vertex in V \ D is within a distance r from at least one vertex of D.
Definition 6 [11] Given two NP optimization problems P and Q and a polynomial transformation f from instances of P to instances of Q, we say that f is an L − reduction if there are positive constants a and b such that for every instance x of P we can in polynomial time find a solution y of x with m P (x, y To show the APX-completeness of a problem P ∈ AP X, it is enough to show that there is an L-reduction from some APX-complete problem to P . Definition 7 [11] A graph G = (V, E) is called a p-claw free graph if for all the vertices v, the subgraph induced by N (v) does not have an independent set of size p.
Alternately, a graph G = (V, E) is called a p-claw free graph if there is no induced subgraph of G isomorphic to the star graph K 1p .

Complexity Results
Theorem 1 Min-Seed-D(G, α, k, s) is N P -complete for all k.
Proof: The proof for this theorem comntain two cases.First case is when k ≥ 2 and second case is when k = 1.
Let there exist a solution for Set-Cover problem with size s.Now the solution for the Seed(G, α, k) problem is: for every set S i in the Set Cover solution, choose the vertex s i of X in the seed.These s vertices of X first convince all the vertices of Y .Then the remaining vertices of X get convinced.Because ∀s i ∈ X, α(s i ) = d(s i ) and all the neighbours of s i (vertices of Y ) are convinced.Hence Min-Seed-Cnt(G, α, 2) ≤ Opt-Set-Cover(S, U).
Let there exist a solution for Seed(G, α, k) with size s.If the vertex s i of X is in the Seed(G, α, k) then include set S i in set cover solution.If a vertex x j ∈ Y is in Seed(G, α, k) then choose any neighbour of the vertex x j .Let say the vertex s k of X is chosen, then include the set S k in set cover solution.Now we prove that the sets chosen cover all the elements of U .Let us assume that some element x j ∈ U not covered.Consider the possibilities of how the vertex x j ∈ Y is convinced.Definitely the vertex x j and the neighbours of x j are not in Seed(G, α, k) solution, so the vertex x j must be convinced by its neighbours.Neighbours of the vertex x j are convinced if and only if the vertex x j is convinced because ∀s i ∈ N (x j ), α(s i ) = d(s i ).This implies that the vertex x j never gets convinced, which is a contradicting statement.Therefore the sets we choose form a Set Cover solution.The graph constructed here is a bipartite graph and this proof works for k = 2 as well.Hence Min-Seed-Cnt(G, α, ∞) ≥ Opt-Set-Cover(S, U).Let there exist a solution for Vertex Cover problem with s vertices.These s vertices also give us a solution for Seed(G, α, 1), because if a vertex v is not in the Vertex Cover then all its neighbours must be in the Vertex Cover.JGAA, 15(5) 683-699 (2011) 689 So all the vertices not in Vertex Cover get convinced if we convince vertices in Vertex Cover.
Let there exist a solution for Seed(G, α, 1) with size s.Now we prove that these s vertices gives a solution for Vertex Cover.Let us assume that some edge (u, v) is not covered.Both vertices u and v are not in the Seed solution.Now consider the possibilities of how the vertices u and v get convinced.In order to convince the vertex u, first the vertex v must be convinced.Similarly, in order to convince the vertex v, first vertex u must be convinced.This leads to a contradiction that neither of the vertex u nor the vertex v gets convinced.So one of the vertices u, v must be in Seed(G, α, 1) solution.
Corollary 1 For every graph G and every valid threshold function α, Min-Seed-Cnt(G, α, 1) is bounded above by the Vertex Cover Number of G.
By using the graph constructed in the Theorem 1 Case 1, we can prove that Min-Seed-D(G , α, 2, β, s) is NP-complete, where G is a complete bipartite graph formed by adding missing edges in G. Define function β like this: β = 1 for all edges belong to G and β = 1 (m+n) 2 for all newly added edges.This makes all the newly added edges dummy, and the above proof still works to prove the following theorem.
By using the graph constructed in the Theorem 1 Case 2, we can prove that Min-Seed-D(G , α, 1, β, s) is NP-complete, where G is a complete graph formed by adding missing edges in G. Define function β like this: β = 1 for all edges belong to G and β = 1 n for all newly added edges.This make all the newly added edges dummy and the above proof still work to prove the following theorem.
Proof: First we show how to reduce the r − Dominating Set problem to the Min-Seed-D(G, α, 1, r, s) problem.
Construction: Given an instance of r − Dominating Set problem with graph G = (V, E) and a positive integer s, construct an instance of Min-Seed-D(G, α, 1, r, s) problem with same graph G. Define α(v) = 1 for all v ∈ V .
Let there exist a solution for the r − Dominating Set problem with s vertices.These s vertices also give us a seed, because if a vertex v is not in r − Dominating Set then one of the vertex at distance r must be in r − Dominating Set.So all vertices not in r − Dominating Set get convinced if we convince vertices in r − Dominating Set in one round.
Let there exist a solution for Seed(G, α, 1, r) of size s.Now we prove that these s vertices also give an r −Dominating Set.Let us assume the contradiction that some vertex v is not r − dominated by any vertex.The vertex v and the vertices in N r (v) are not in Seed(G, α, 1, r) solution.The vertices belongs to N r (v) get convinced in one round but for convincing v we need two rounds.This leads to a contradiction.So either v or a vertex from N r (v) must be in Seed(G, α, 1, r).
As we are setting α(v) to the minimum possible value ∀v ∈ V , where α is any threshold function from V → N. From Lemma 1. Proof: In Theorem 4 we have shown how to reduce every instance of the Dominating Set to an instance of Min-Seed-D(G, α, 1) preserving solution size exactly.We know that every instance of the Set Cover problem can be reduced to the Dominating Set problem.It is easy to see this is an Lreduction.Feige proved the threshold of ln(n) approximation for Set Cover [8].Therefore for dominating set, there is a ln(n) threshold of approximation (dominating set is equivalent to set cover in terms of approximation ratio) [16,14].Hence the theorem.
4 Approximation Algorithms 4.1 Approximation Algorithm for Min-Seed-Cnt(G, α, 1) We now give an (H(α M ) + H(∆)) approximation algorithm for Min-Seed-Cnt(G, α, 1).The approximation algorithm for Min-Seed-Cnt(G, α, 1) is given in Algorithm 1.The technique used in this algorithm is greedy.Say C is the set of already convinced vertices.At each iteration we are choosing a vertex, v, which maximizes Let the while loop of Algorithm 1 execute s times and let the vertices chosen as the seed be v 1 , v 2 , ..., v s .Therefore the size of the seed given by Algorithm 1 Algorithm 1 : Algorithm to compute Seed(G, α, 1).
{C is the set of vertices that are convinced.At the end of the algorithm C must be equal to V} Let |S * | be an optimal seed, so that Min-Seed-Cnt(G, α, 1) = |S * |.
Proof: From the definition of c v , we know that the remaining threshold value of v after choosing v 1 , v 2 , ..., v i−1 .Therefore, Therefore, Proof: We know that S * is the optimal solution for Min-Seed-Cnt(G, α, 1).We can divide JGAA, 15(5) 683-699 (2011) 693 Proof: Let v be a vertex in V .Define z i v to be the number of unconvinced neighbours of v after the i th stage; that is, the number of nodes in is the number of neighbours of v convinced at stage i.From Algorithm 1 and from the definition of c v , we have From Algorithm 1, we know that Theorem 6 Algorithm 1 is (H(α M ) + H(∆)) approximation algorithm for Min-Seed-Cnt(G, α, 1).
Proof: From Lemma 6, we have From Lemma 5 and Lemma 7, we have

Bounded Degree and p-claw-free Graphs
Theorem 7 Min-Seed-Cnt(G, α, 1) is AP X − Complete for bounded degree graphs.
Proof: From Theorem 6 if the degree of a graph G is bounded by constant then Algorithm 1 gives a constant approximation ratio.This implies that Min-Seed-Cnt(G, α, 1) belongs to AP X.For proving AP X − Completeness we have to give an L − reduction from known AP X − complete problem.We know that Dominating Set on bounded degree graphs is AP X − Complete [11].The reduction used in Theorem 4 to show N P − complete also acts as the reduction to show AP X − Completeness with a constant a = 1 and b = 1 (See Definition 6). Therefore, Algorithm 2 : Algorithm to compute Seed(G, α, 1) in p-claw-free graphs. Require: {C is the set of vertices that are convinced.}3: i ← 0 4: while C = V do 5: Choose a Maximal Independent Set S i from V \ C Proof: Let D be the solution given by Algorithm 2 and let D * α be the optimal solution for Min-Seed(G, α, 1).Let the while loop of Algorithm 2 execute k times and let the Maximal Independent Sets chosen be S 1 , S 2 , ..., S k .From Lemma 8, we have By summation of all Maximal Independent Sets, we have From Algorithm 2, we know that At each stage, for every unconvinced vertex u, either u is included in the seed, or some unconvinced neighbour of u is included in the maximal independent set.Thus as long as u is unconvinced, at least one neighbour is newly convinced in each stage.Thus every vertex u is convinced in at most α(u) ≤ α M stages.Thus the maximum possible value for k is α M .Therefore,
Proof: The proof for this is similar to the proof of Theorem 6.The algorithm for this problem will be algorithm 1 by replacing N (v) with N r (v) and N [v] with N r [v].The analysis for the approximation is also similar.In the analysis by replacing N (v) with N r (v) and N [v] with N r [v] we will get the approximation ratio (H(n) + H(α M )).

Conclusion and Open Problems
In this paper we considered several variants of the Spreading Messages problem and provided complexity results and approximation algorithms for the same.
No approximation algorithm exists for the unbounded spreading messages problem.We have an idea of reducing the instance of Min-Seed-Cnt(G, α, ∞) to Min-Seed-Cnt(G , α, 1).The reduction algorithm is specified below: V ← V − {v}

5:
Choose a vertex v ∈ V such that ∀u ∈ N (v), α(u) < deg(u).6: end while Let the resultant graph after execution of Algorithm 3 be G = (V , E ).
Proof: Let all the vertices of the graph G be convinced.Now consider the vertices that are removed in Algorithm 3 in reverse order.Remember that the threshold of V vertices is same as V vertices.So if we add the vertices that are deleted from G in reverse order, the threshold values of V vertices are not going to change.So, if we add vertices one by one in reverse order they will also get convinced.
We proved that Min-Seed-D(G, α, ∞, s) is NP-Complete on Bipartite Graphs.So, it is also interesting to look at this problem on Bipartite Permutation Graphs.

Case 2 :
Given an instance of Vertex Cover problem with a graph G = (V, E) and a positive integer s, construct an instance of the Seed problem with the same graph G. Define α(v) = d(v) for all v ∈ V .

Corollary 2 Theorem 5
For every graph G and every valid threshold function α, Min-Seed-Cnt(G, α, 1) is bounded below by the Dominating Set Number of G.If there is a C > 0 such that a polynomial time algorithm can approximate Min-Seed-Cnt(G, α, 1) within (1 − C) ln |V |, then N P ⊆ T IM E(n O(log log |V |) ).

Lemma 3
Algorithm 1 runs in polynomial time.Proof: The while loop at line number 4 of Algorithm 1 can execute maximum |V | − 1 times.For each v ∈ V step 6 can take linear time.In worst case Algorithm 1 takes O(n 3 ) time.

7 :C
← C ∪ S i ∪ { set of vertices newly convinced by choosing S i } 8: D ← D ∪ S i 9: end while 10: return D {D is the seed} Lemma 9 Algorithm 2 is a cα M (p−1) αm approximation algorithm for Min-Seed-Cnt(G, α, 1) on p-claw free graphs, where α M is the maximum threshold in G, α m is the minimum threshold in G and c = max{1, α m p − 1 }.

Algorithm 3 : 1 : 3 :
Algorithm to reduce Min-Seed-Cnt(G, α, ∞) to Min-Seed-Cnt(G , α, 1).Require: A graph G = (V , E), a function α : V → N. Choose a vertex v ∈ V such that ∀u ∈ N (v), α(u) < deg(u).2:while Such a v exists do Update degrees of N (v) vertices 4: The proof for each case contain different reductions from different problems.If k ≥ 2 then we reduce Set-Cover to Min-Seed-D.If k = 1 then we reduce Vertex-Cover to Min-Seed-D.Case 1: In this case k ≥ 2. Given an instance of the Set-Cover with an universal set U = {x 1 , x 2 , x 3 , ..., x n }, a set of subsets S = {S 1 , S 2 , ..., S m } and an integer s, where S i ⊆ U .Construct a bipartite graph G = (X, Y, E), with |X| = {s 1 , s 2 , s 3 , ..., s m } and |Y | = {x 1 , x 2 , x 3 , ..., x n }.That is the vertex set X contains a vertex for every set of S and the vertex set Y contains a vertex for every element of U .If the element x j ∈ S i then connect the vertex s i to the vertex x j .Set α(s vertices newly convinced by choosing v