SSpread and defend infection in graphs
Arya Tanmay Gupta ∗ Computer Science and Engineering, Michigan State University
Abstract
The spread of an infection, a contagion, meme, emotion, message andvarious other spreadable objects have been discussed in several works.Burning and firefighting have been discussed in particular on static graphs.Burning simulates the notion of the spread of “fire” throughout a graph(plus, one unburned node burned at each time-step), graph firefightingsimulates the defending of nodes by placing firefighters on the nodes whichhave not been already burned while the fire is being spread (started by asingle fire source).This article studies a combination of firefighting and burning on agraph class which is a variation (generalization) of temporal graphs. Nodescan be infected from “outside” a network. We present a notion of bothupgrading (of unburned nodes, similar to firefighting) and repairing (ofinfected nodes). The nodes which are burned, firefighted, or repairedare chosen probabilistically. So a variable amount of nodes are infected,upgraded and repaired in each time step.In the model presented in this article, both burning and firefightingproceed concurrently, we introduce such a system to enable the commu-nity to study the notion of spread of an infection and the notion of up-grade/repair against each other. The graph class that we study theseprocesses is a variation of temporal graph class in which at each time-step, probabilistically, a communication takes place (iff an edge exists inthat time step). In addition, a node can be “worn out” and thus canbe removed from the network, a new healthy node can be added to thenetwork. This class of graphs enables systems with high complexity to beable to be simulated and studied.
Keywords: variable burning, variable firefighting, temporal graphs, vari-able nodes, variable edges
Several models based on discrete mathematics, probability and complex calculushave been used to demonstrate the spread of an infection or a contagion througha network (of hosts, a human social network, or other biological network). ∗ [email protected] a r X i v : . [ phy s i c s . s o c - ph ] J a n raph burning is a process introduced on static graphs [6]. Definition 1.
Graph Burning.
Initially, all nodes are marked as “unburned”.Then in each time-step, any unburned node is burned from “outside”, and thenthe fire spreads to the neighbouring nodes from the nodes which were burnt uptilthe previous time-step. This process continues until all the nodes are burned.
Firefighting is another process which was introduced on static graphs [24].
Definition 2.
Graph Firefighting.
Fire is initiated from any single node inthe first time-step. From the second time-step, at each time-step, a firefighter isplaced on an unburned node, the fire spreads to all nodes neighbouring the nodeswhich were burned till the last time-step, except that a firefighted node cannotbe burned. This process stops when fire cannot spread to any new nodes.
Both firefighting and graph burning have been verified as NP-Complete prob-lems.In this article, we extend our work in [22, 23], and study a model in whichwe graph burning and firefighting are used against each other. We study moresophisticated versions of burning and firefighting in which we burn an arbi-trary number of nodes from outside, and we firefight on an arbitrary number ofnodes in each time-step, both of which are done probabilistically. The spreadof an infection and the choice of upgrading/repair of nodes is done probabilisti-cally. Further, both burning and firefighting is not permanent on the nodes. Inaddition, the graph that we study is not static. These modifications to the con-temporary definitions of burning and firefighting on the model presented in thisarticle has been done to be efficiently able to model several real-world systems.In the literature, a temporal graph G is defined as follows. Definition 3.
Temporal Graph.
A temporal graph G = ( V, E , E , . . . , E (cid:96) ) defined by a static set of nodes V ( G ) , and a sequence G , G , . . . G (cid:96) of graphswhich have the same node set as G , but for any graph G i (1 ≤ i ≤ (cid:96) ) , G i =( V, E i ) . A temporal graph G can be viewed as a graph which has constant number ofnodes, but a sequence of (not necessarily) distinct sets of edges on V ( G ). We call G i an instance of G . We study a model which presents a fusion of probabilitybased graph burning and firefighting on a variation of temporal graphs: inaddition to how temporal graphs have been defined, we allow the number ofnodes be modified in each time-step.The structure of the article is as follows. The structure of the subject classof graphs that we study is given as Section 2. Section 3 contains the prelimi-naries. In Section 4, we discuss a general algorithm that may be used for suchsimulations; in Section 5, we describe the algorithm. Section 6 provides a smallgraph example on which we demonstrate the working of the algorithm, and inSection 7 we discuss some interesting modifications that can be done while sim-ulating certain real-time systems. In Section 8, we discuss the related work inthe literature, and we conclude ourselves in Section 9.2 Structure of the subject class of networks
The model described in this article studies a network of systems where weemphasize on the spreading of an infection and the defending against it. Wereduce our discussion to the same in this article on an arbitrary graph G . Inthe model that we are going to present, the input is a graph G with a definedset of nodes. Associated with the graph G , there are some variables that wedefine in Table 1. Values to all the variables in Table 1 are provided as part ofthe input.Variable What it represents(associatedwith G ) p del probability of deletion of an infected node p ins probability of insertion of a new node to G , denotes thenumber of nodes being added in each time-step as thepercentage of the original number of nodes.Table 1: Variables associated with G This is different than the traditional temporal graphs because we allow in-sertion and deletion of nodes as well.Each node v in the graph has some associated variables which we describein Table 2. Values to all the variables in Table 2 are not provided as part ofthe input, except for v.edge probability . The default initial values for the restof the variables are discussed in Section 3.Variable What it represents(associated with v ) v.edge probability the probability that v is connected to any othernode in an instance G (cid:48) of Gv.inf ected true if v is infected, otherwise false v.type denotes the type of v , just for book-keeping. v.evident true if v.inf ected is true and the infection in v isevident and has been reported. v.evident time denotes the time-step in which v.evident was lastflipped to true (from f alse ). v.repair time the time-step when v was repaired (after gettinginfected, and then getting reported). v.upgrade time the time-step when v was upgraded.Table 2: Variables associated with each node v in V ( G )We also use some variables that are globally accessible, are commonly ap-plicable to all the nodes, but are constant for each node in G , so we do notassociate them with any node and we assume that a single copy of these vari-ables will be used by all the nodes. We define these variables in Table 3. Such3ariables define characteristics of all the nodes statistically. These variables canalso be defined as node-specific, depending on the type of nodes in the network,but we assume in our model that all the nodes are “probabilistically” similar.Values to all the variables in Table 3 are provided as part of the input.Variable What it represents(associated with allnodes: globallycommon to all) prob inf probability of any node forming an arc towards anyother node. prob evid denotes the average number of time-steps whenthe infection gets evident, as the inverse of its value. prob repair denotes the average number of time-stepsin which a node gets repaired after its infection isreported, as the inverse of its value. prob random imm denotes the average number of nodes which areupgraded in each time-step, as the percentage of totalnumber of uninfected nodes. time imm repair time(-steps) of immunity from infection after gettingrepaired. time imm upgrade time(-steps) of immunity from infection after gettingupgraded. prob new inf denotes the number of nodes that can be infectedfrom outside, as a fraction of the number of uninfectednodes.Table 3: Variables which are applicable to all nodes, but are constant for eachnode in G .Based on the variables that we have defined, in each discrete time-step t ourmodel proceeds as follows.1. The node set V ( G (cid:48) ) of an instance G (cid:48) of G is same as that of G . Forthe edge set, the edge { u, v } exists with a probability which is defined by u.edge probability and v.edge probability (we discuss this in detail as wedescribe the algorithm in Section 4).2. Any node is infected from “outside” the network with a probability of prob new int .3. From each node u which was infected until time-step t −
1, any node v which is adjacent to it in G (cid:48) gets infected with the probability prob inf .This happens only when v was repaired at least time imm repair stepsbefore t or v was upgraded at least time imm upgrade steps before t .4. The infection gets reported with a probability prob evid .5. Each infected node for which an infection is reported is repaired with aprobability prob repair . 4. A non-infected node is upgraded with probability prob upgrade .Once the infection initiates in G , we start monitoring it. After that weterminate if:1. all the nodes are infected, or2. none of the nodes is infected.If all the nodes get infected, we assume that the repair/upgrade strategy wasnot “good enough”. V ( G ) is the set of nodes in G . E ( G ) is the set of edges in G . E ( G ) = {{ u, v } | u, v ∈ V ( G ) , u (cid:54) = v } = ⇒ | E ( G ) | = | V ( G ) × ( V ( G ) − | but foreach instance G (cid:48) of G , there is a specific probability p uv which decides the exis-tence of an edge { u, v } in G (cid:48) . Before the algorithm starts to process G , each nodeis supposed to be initialized with the values v.inf ected = f alse , v.evident = f alse , v.evident time = − v.repair time = −
1, and v.upgrade time = − v.edge probability as discussed in Section 2 for each node v ∈ V ( G ), is providedwith the input to the algorithm.A trace [1] with respect to a node v ∈ V ( G ) is defined by the sequence ofstates that v goes through. A fault is a contiguous subsequence of the trace of v that is not desirable. In our model, we study only those faults which occur in v as an impact of the spread of an infection (virus, for example) from outsidethat node, which can happen from within the network G (which v is a part of)or from outside of G .From the perspective of the network as a whole, we define a state and traceas follows. While the algorithm proceeds, a state of the network G is defined bythe values in the variables v.inf ected , v.evident , v.evident time , v.repair time and v.upgrade time at a time-step for each node v in V ( G ); these are the onlyvariables that are possibly modified throughout the execution of the algorithm.A trace is a sequence of such states, that is, a sequence of sets { v.inf ected , v.evident , v.evident time , v.repair time and v.upgrade time | v ∈ V ( G ) } ateach time-step.The infection spreads between nodes only as a result of a communication.A pair of nodes u and v communicate at a time step G if and only if { u, v } ∈ E ( G (cid:48) ), where G (cid:48) is the instance of G at that time-step. Along with the originalcommunication, a node may also transfer an infection to a port of the destinationnode. A node may or may not execute a fault if it is already infected. If itexecutes fault, we assume that it is visible (throughout and outside the network)and is immediately reported, in which case it will be repaired and does not takepart in any communication until repaired. In our model, it is preferred that therepairing and (random) upgrading strategy is able to eventually result in a stateof the network G where none of the nodes is infected, despite of the spread ofthe infection. 5 Algorithm
We have G as initial graph with the properties as described in Table 1 andTable 3. We have a list of 14 functions described as follows, which we utilize inthe main algorithm. A. Instance ( G )1. V (cid:48) ← V ( G ). E (cid:48) ← φ . o ← | V ( G (cid:48) ) | .2. for u, v ∈ V (cid:48) ,3. e uv ← (cid:15) . e vu ← (cid:15) .4. With probability u.edge probability , execute: e uv ← ( u, v ).5. With probability v.edge probability , execute: e vu ← ( v, u ).6. if e uv = ( u, v ) ∧ e vu = ( v, u ), then7. E (cid:48) ← E (cid:48) ∪ { u, v }
8. Return G (cid:48) = ( V (cid:48) , E (cid:48) ).B. Outside-Infect ( G )1. I out = φ .2. ∀ v ∈ V ( G ):3. if ¬ Is-Infected ( v ),4. With probability prob new inf , execute:5. if ( v.repair time = − ∨ count − v.repair time ≥ time imm repair ) ∧ ( v.upgrade time = − ∨ count − v.upgrade time ≥ time imm upgrade ),then6. I out ← I out ∪ { v } .7. Return I out .C. Spread-Infection ( G )1. for u, v ∈ V ( G ):2. if { u, v } ∈ E ( G )3. if XOR(
Is-Infected ( u ) ∧ ¬ Is-Evident ( u ), Is-Infected ( v ) ∧ ¬ Is-Evident ( v )):4. With probability prob inf execute:5. if ( u.repair time = − ∨ count − u.repair time ≥ time imm repair ) ∧ ( u.upgrade time = − ∨ count − u.upgrade time ≥ time imm upgrade ),6. Infect ( u )7. if ( v.repair time = − ∨ count − v.repair time ≥ time imm repair ) ∧ ( v.upgrade time = − ∨ count − v.upgrade time ≥ time imm upgrade ),8. Infect ( v ) 6. Report-Infection ( G , time )1. ∀ v ∈ V ( G )2. if Is-Infected ( v )3. With probability prob evid execute4. node.evident ← true . node.evident time = count .E. Repair-Instance ( G , time )1. ∀ v ∈ V ( G )2. if v.evident , then3. With probability prob repair , execute: Repair-node ( v , time ).F. Upgrade-Instance ( G , time )1. ∀ v ∈ V ( G )2. if ¬ v.inf ected , then3. With probability prob upgrade , execute: Upgrade-node ( v , time ).G. Repair-node ( v , time )1. v.inf ected ← f alse v.repair time ← time H. Upgrade-node ( v , time )1. v.upgrade time ← time I. Infect ( v )1. v.infected ← true J. Is-Infected ( v )1. Return v.inf ected .K. Is-Evident ( v )1. Return v.evident .L. Delete-Infected ( G )1. for each node v in V ( G ),2. if if v.inf ected , then3. With probability p del , execute Delete-node ( G (cid:48) , v ).M. Insert-New ( G )1. for each i : 1 ≤ i ≤ | V ( G ) | ,2. With probability p ins , execute:3. v ← a new node. v.inf ected ← f alse . v.evident = ← f alse ., v.evident time ← − v.repair time ← − v.upgrade time ← − v.edge probability ← a random number (say, essentially betweenmin u ∈ V ( G ) { u.edge probability } and max u ∈ V ( G ) { u.edge probability } ).5. V ( G ) = V ( G ) ∪ { v } .N. Delete-node ( G , v )1. V ( G ) = V ( G ) \ { v } Algorithm 1.
Given the input graph G = ( V, E ) , where essentially the edgeset E ( G ) is empty, along with the variables discussed in Table 1, Table 2 andTable 3 provided as part of the input, perform the following steps. Infect-Repair-Upgrade ( G )Initialize time = 0 and inf ection started = f alse . Repeat the folowing stepsuntil the algorithm stops.1. G (cid:48) = Instance ( G ).2. if not inf ection started if ∃ v ∈ G (cid:48) : Is-Infected ( v ), then inf ection started = true if inf ection started :5. if ∀ v ∈ V ( G (cid:48) ), Is-Infected (v), then Stop.6. if ∀ v ∈ V ( G (cid:48) ), ¬ Is-Infected ( v ), then Stop.7. time = time + 18. nodes inf ected f rom outside = Outside-Infect ( G (cid:48) ).9. Spread-Infection ( G (cid:48) ).10. ∀ v ∈ nodes inf ected f rom outside , Infect ( v ).11. Report-Infection ( G (cid:48) , time ).12. Repair-Instance ( G (cid:48) , time ).13. Upgrade-Instance ( G (cid:48) , time ).14. Delete-Infected ( G (cid:48) ).15. Insert-New ( G (cid:48) ).16. V ( G ) = G (cid:48) .V . In the following paragraphs, we discuss one round (time-step) of the algorithmin detail.We initiate with an instance G (cid:48) of G (line 1). G (cid:48) has the same node set asthat of G . The edges in G (cid:48) are decided based on the values in v.edge probability in every node v , such that a node v may decide an arc ( v, u ) to exist based on8 .edge probability , but the edge e = { u, v } will be inserted in G (cid:48) .E only if u also decides the arc ( u, v ) to exist based on u.edge probability . Next we checkif infection has started in G (or equivalently G (cid:48) ) (lines 2-3).If infection has started in G , then we stop if every node is infected (lines 4,5). If infection has started in G , then we stop if every node is not infected (lines4, 6), which will imply that the all the nodes in the system have been “cured”.The current time-step number is stored in the variable time (line 7).Now we simulate the infection that nodes get from outside of the network G .We first get the set of nodes which can be infected from outside (line 8); eachnode gets infection from outside the network with probability prob new inf .Then we actually infect those nodes in line 10. But before actually infecting thenodes which were determined to be infected from outside, we spread the infectionfrom within the network (line 9). This is to enable these (and others whichare not infected) nodes to be infected from within the network before actuallyinfecting them, that is, setting v.inf ected each of those nodes v as true (notethat in Spread-Infection ( G ), the infection takes place only if one of the nodesis not infected). This is similar to the notion of the graph burning procedure [6].We are only spreading infection to the healthy nodes in line 9, so this would helpus simulate the notion that a node can get infection from both inside and outsideof its local network only if it is healthy. In line 9, we spread the infection fromwithin the network such an infected node u can infect an uninfected node v withthe probability prob inf if { u, v } ∈ E ( G ). In line 10, we infect the nodes whichwe decided to infect from outside the network (in line 8). Further, whether anode v is infected from outside or from within the network, it is can be infectedonly if (( v.repair time = − ∨ count − v.repair time ≥ time imm repair ) ∧ ( v.repair time = − ∨ count − v.repair time ≥ time imm repair )) holds true .When a node v gets infected, v.inf ected is set to true .The nodes which are infected may be reported as their infection gets evident(line 11), and the time of their being reported is recorded such that for eachnode v in G , v.evidence is set to true and v.evident time is set to time basedon prob evid . This simulates that the infection in a node may not get reportedas soon as they get infected. It is not necessary for a node to execute the faultstate as soon as it gets infected. As the node executes a fault state, we assumethat its infection is evident throughout and outside the network, its infectiongets reported. A node whose infection gets reported shall not take part in anycommunication in G until it is repaired.Any node which has been infected will be repaired (line 12) with proba-bility prob repair such that for each node v in G for which v.inf ected is true , v.inf ected is set to f alse and v.repair time is set to time based on prob repair .This simulates the notion that a node may take time to get repaired and cannotbe repaired immediately in the same time-step in which its infection was re-ported. The notion of probability is inserted here to create a delay for a node tobe finally repaired. Next, any uninfected node will be upgraded (line 13) withprobability prob upgrade such that for each node v in G for which v.inf ected is f alse , v.upgrade time is set to time based on prob upgrade . This simulatesthe notion that each node may not be set to upgraded at each time-step, a9ode may be chosen randomly by the system administrator to be upgraded.The notion of probability is inserted here to denote randomness of choice toupgrade a node. After a node is repaired (respectively, upgraded), it is immuneto the infection for next time imm repair (respectively, time imm upgrade )time-steps and thus cannot be infected. Also, note that we are upgrading anode irrespective of when it was upgraded latest; this may not be coherent withreal-time human social networks in the sense that if a healthy human has beenvaccinated, then it is very less probable that he gets another dose of the vac-cine in less than time imm upgrade time-steps. But this is conforming with anetwork of computers.An infected node is deleted from G (lines 14, 16) with a probability p del such that for each node v in V ( G ), v is deleted with probability p del only if v.inf ected is true . This is based on the notion that a node can get unusable,and once a fault makes a node unusable, it can be discarded completely. About p ins × | V ( G ) | new nodes can be inserted to G (lines 15, 16) such that for each v in V ( G ), a new node can be inserted with probability p ins . This denotes thepotential efforts made by the system administrators to maintain the usabilityand efficiency of the network which is also based on the number of the nodes init. Mark that V ( G ) itself is variable.Several or all the proceedings of this algorithm can be transformed fromprobabilistic to definite algorithmic procedures (for example, changing how wespread infection, or how we upgrade a node) and used to study the systemsunder those modified constraints. In this section, we demonstrate the working of Algorithm 1 on a small networkof 10 initial nodes. After that, in Section 7, we discuss the possible variationsby which this model can be used to study the several networks, with more focuson the human and biological networks. We initialized the global variables tothe following values, as described in Table 4. prob inf .2 prob evid .1 time imm repair time imm upgrade prob new inf .05 prob repair .08 prob random upgrade .15 p del p ins G of order 10 such that for 4 nodes, v.edge probability was 0.1and for 6 nodes, v.edge probability was 0.2, we ran the algorithm 10, 000 times.10ach iteration was run until all the nodes were reported not infected after theonset of the initial infection in the network. We received the following output,described in Table 5. Figure 1 shows the nature of the outputs in more detail.Here, we only focus on the average time to disinfect (for one iteration, time todisinfect). Definition 4.
Time to Disinfect . Given an input graph and the infec-tion and disinfection processes running on it, the time to disinfect is the dif-ference between the time-step number in which inf ection started was set to true (line 3, Algorithm 1), and the time-step number in which for each node v , IsInfected ( v ) is f alse , that is, when all nodes in the network are disinfectedafter the onset of infection (line 6, Algorithm 1) Average total time-steps 34.9148Average time-steps to disinfect 28.403New nodes added (average) 1.9348Infected nodes removed (average) 1.0633Infection start time (average) 6.5118Table 5: Output of sample.
In Table 1, we discussed some variables which decide the removal of “worn-out” nodes or insertion of new nodes to a network. This may represent theremoval of an infected node from the network, or insertion of a new node to anetwork. This may apply to more general and real-time systems as nodes canbe removed from a network or new nodes can be inserted to the network forseveral administrative or cost-related reasons. If no modifications to the numberof nodes is desired, then both p ins and p del can be set to zero. Clearly, temporalgraphs are a subclass of this graph class where both p ins and p del are zero.As discussed in table Table 3, the notion associated with time imm repair (respectively, time imm upgrade ) can be changed to a probability of a nodebeing immune to infection after a repair (respectively, upgrade). We have thatwhen a node is repaired (respectively, upgraded), it is vulnerable to infectionwhich is spread from within the network or introduced from outside the networkafter time imm repair (respectively, time imm upgrade ) time steps. The no-tion of the probability of infection in a node getting reported is based on the factthat a node reaches a state that is a fault is not necessary immediately whena fault is inserted. The notion of probability of repair denotes the average oftime-steps that nodes takes to get repaired. The notion of a non-infected nodeis upgraded with a probability denotes the fraction of nodes that are upgradedon an average in a single time-step.Several modifications of this model can be studied. For modelling humansocial networks, we have that a group of, say, k people meet frequently, that is11 a) (b)(c) (d) Figure 1: The output statistics based on average time to disinfect. (a) The indi-vidual values. (b) Cumulative average. (c) Mean of every consecutive 100 values(there are 9901 such sequences). (d) The distribution of values; interestingly,the distribution is very close to the partial normal distribution curve.the edge probability per node can be high for that cluster of k nodes, on theother hand, if two nodes belong to different clusters, this probability reduces. Ifthe cluster are populated far apart, then this probability can further reduce withthe edge probability being in some inverse proportion to some exponent of thedistance. This is similar for social networks in other biological ecosystems. Inthe current proposed model, the edge probability of a node v has uniform impacton all possible edges containing v in the network G . Further, the probability ofrepair may be increased in a supercluster of nodes (a cluster of clusters residinglocally with respect to each other) where the percentage of infection is greater.We have, on the other hand, we have used the value over all the nodes. Anothervery obvious and desirable modification is studying several algorithmic strategiesof a combination of burning and firefighting on several graph classes, instead tochoosing nodes based on a probability. Such variations can be used to studythe nature of the spread of infection along with an optimal vaccination strategyfrom the perspective of a human social network, or other complex biological orartificial networks. 12ore generally, the class of graphs that we study is an implementation ofthe graph class defined as follows. Definition 5.
Altered Temporal Graphs with advanced Generalization .To formally define the class of graphs that we study in this article, we first definea set of nodes V and a set of edges E such that ∀ u, v ∈ V, { u, v } ∈ E . A graph G falling in this graph class is defined as follows: G = ( V , V , ... , V (cid:96) , E , E , ... , E (cid:96) ) such that ∀ i : 1 ≤ i ≤ (cid:96), V i ⊆ V ∧ E i ⊆ E ∧ G i = ( V i , E i ) is an instanceof G . The class of graphs as defined in Definition 5 is an extension to the classof temporal graphs as defined in the literature. We can better understand thisclass of graphs as follows. Let G be a graph falling in this class. G may ormay not have well defined set of vertices V ( G ) where V ( G ) = V ∪ V ∪ ... ∪ V (cid:96) .But by the time an algorithm such as Algorithm 1 terminates, we will obtaina well defined set of vertices V ( G ) such that for each v : v ∈ G , v is also anelement of some V i such that G i : G i = ( V i , E i ) is an instance of G . For furtherformal considerations, we assume that we have a defined set V ( G ). The sets V i : 1 ≤ i ≤ (cid:96) may be decided by an algorithm (Algorithm 1 in our case), ormay be provided as part of the input. Similarly, the sets E i : 1 ≤ i ≤ (cid:96) may bedecided by an algorithm (in our case, Instance ( G ) is assigning edges to V i forAlgorithm 1), or may be provided as part of the input. At a time-step i , any set E i : E i ⊆ V ( G ) × V ( G ) is defined such that no vertex in V ( G ) \ V i takes part informing an edge at that time-step. Such a definition has practical applicationsas it allows the flexibility to the system that it can restrict some of none of thenodes in V ( G ) to not to take part in any communication at some time step; wehave already demonstrated a few related examples earlier in this section. In the literature, the trend of the spread of a virus through biological systemsis studied using several efficient models. In addition to this, spread of a virusthrough hosts (computational systems), spread of a meme, or other contagionin networks is studied or opined [4].Graph burning was first studied in [6] with a notion that only one new firesource is initiated in each time step, and in each time-step the fire spreads aswell. Graph burning has been shown to be NP-Complete in [4, 22, 23] and hasbeen studied several times in [6, 7, 5, 17, 21, 26, 27, 29, 35]. Graph burningwhere more than one (but a constant number of) nodes has been studied in [33].The notion of the firefighter problem was first described in in [24]. Thisproblem was also discussed on static graphs and with a model in which 1firefighter is to be placed in each time-step. The firefighting problem is NP-Complete [18, 20, 30] and has been studied several times in the literature[3, 2, 8, 11, 12, 13, 14, 19, 25].In addition, temporal graphs is a concept which is significant for this article,and has been studied intensively. Temporal graphs were first discussed in [28].13ince then, several works have been done on temporal graphs [9, 10, 15, 16, 31,32, 34].This article introduces the notion of firefighting with multiple firefightersbring placed on nodes in a single time-step. This article introduces the notionof variable firefighting and variable burning. Also, this article introduces amodel in which burning and firefighting are analyzed together, them being usedagainst each other. We allow firefighting to save infected nodes, which represents“repair” of an infected nodes, along with firefighting of uninfected nodes, whichrepresents “upgrade” of healthy nodes. This makes graph burning [6] and w -burning [33] special cases of this model where a constant number of nodes areburned from outside. This article also introduces a graph class as defined inDefinition 5 which an extension of temporal graphs in which number of nodesare also variable: nodes can be both added or removed. The model that wepresented in this article is an implementation of this graph class. Temporalgraphs are a special case of this model, where (a) p del = 0, and (b) p ins = 0.This also makes static graphs a special case of this model, where (a) p del = 0,(b) p ins = 0, and (c) the probability of existence of edges is either 1 or 0. Fromthe perspective of the class of graphs defined in Definition 5, we can obtaintemporal graphs by setting ∀ i, j : 1 ≤ i, j ≤ (cid:96), V i = V j , and we can obtain staticgraphs by setting ∀ i, j : 1 ≤ i, j ≤ (cid:96), V i = V j ∧ E i = E j . The model the we present in this article may be viewed as a complex fusionof graph burning (introduced in [6]) and firefighting (introduced in [24]) on avariation of temporal graphs (temporal graphs introduced in [28]) where eachinstance G (cid:48) of the underlying graph G is a probabilistic graph such that weintroduce probability on the insertion of new nodes to the underlying graph G as well as on the deletion of nodes once they get infected, along with only havingprobabilities on every edge. This is one of the variations of the graph class asdefined in Definition 5.The enforcement of the probabilities in our model, however, remains sim-ple and is based on uniform probability distribution. Several other complexprobability distributions can be enforced based on the nature of system beingsimulated.This model can be further used to study for different (heuristic) algorithmicstrategies of a quantification of repairs and upgrades (firefighting) required, aswell as to test strategies for spread of infection among the nodes (burning),independently, or (burning and firefighting) against each other. In this articlewe presented a system in which the notions of burning and firefighting havebeen modelled against each other. In the application system that we havedemonstrated our model on, we prefer firefighting to “win” over burning, thatis, the desired trace property in this example is “eventually, for each node v inthe network G , ¬ v.inf ected holds true ”. Such preferences may also changebased on the system being studied. 14his model can also be studied on larger systems such as cellular networks,molecular networks, human social networks or other biological or ecologicalsystems and study several aspects of this model including its reliability androbustness on general networks.We have also established an introductory theory of a more diverse class ofgraphs. The class of graphs as defined in Definition 5 is an advancement tothe existing definition of the class of temporal graphs; it allows a larger setof systems to be represented formally and modelled theoretically. The modelthat we have presented in this article works on these graphs: static graphsor temporal graphs would be insufficient for this model. We call this model bvfa , which stands for variable burning versus firefighting on Altered TemporalGraphs with advanced Generalization. References [1] Bowen Alpern and Fred B. Schneider. Defining liveness.
Information Pro-cessing Letters , 21(4):181 – 185, 1985.[2] Cristina Bazgan, Morgan Chopin, Marek Cygan, Michael R. Fellows, Fe-dor V. Fomin, and Erik Jan van Leeuwen. Parameterized complexity offirefighting.
Journal of Computer and System Sciences , 80(7):1285 – 1297,2014.[3] Cristina Bazgan, Morgan Chopin, and Michael R. Fellows. Parameterizedcomplexity of the firefighter problem. In Takao Asano, Shin-ichi Nakano,Yoshio Okamoto, and Osamu Watanabe, editors,
Algorithms and Computa-tion , pages 643–652, Berlin, Heidelberg, 2011. Springer Berlin Heidelberg.[4] St´ephane Bessy, Anthony Bonato, Jeannette Janssen, Dieter Rautenbach,and Elham Roshanbin. Burning a graph is hard.
Discrete Applied Mathe-matics , 232:73 – 87, 2017.[5] Anthony Bonato. A survey of graph burning, 2020.[6] Anthony Bonato, Jeannette Janssen, and Elham Roshanbin. Burning agraph as a model of social contagion. In
In: Bonato A., Graham F., Pra(cid:32)latP. (eds) Algorithms and Models for the Web Graph. WAW 2014. LectureNotes in Computer Science. , pages 13–22. Springer International Publish-ing, 2014.[7] Anthony Bonato and Thomas Lidbetter. Bounds on the burning numbersof spiders and path-forests.
Theoretical Computer Science , 794:12 – 19,2019. Special Issue on Theory and Applications of Graph Searching.[8] Leizhen Cai, Yongxi Cheng, Elad Verbin, and Yuan Zhou. Surviving ratesof graphs with bounded treewidth for the firefighter problem.
SIAM Journalon Discrete Mathematics , 24(4):1322–1335, 2010.159] Arnaud Casteigts, Ralf Klasing, Yessin M Neggaz, and Joseph Peters. Com-puting Parameters of Sequence-Based Dynamic Graphs.
Theory of Com-puting Systems , 63(3):394–417, April 2019.[10] Jiehua Chen, Hendrik Molter, Manuel Sorge, and Ondrej Such´y. ClusterEditing in Multi-Layer and Temporal Graphs. In Wen-Lian Hsu, Der-Tsai Lee, and Chung-Shou Liao, editors, , volume 123 of
Leibniz Inter-national Proceedings in Informatics (LIPIcs) , pages 24:1–24:13, Dagstuhl,Germany, 2018. Schloss Dagstuhl–Leibniz-Zentrum fuer Informatik.[11] Xujin Chen, Xiaodong Hu, Changjun Wang, and Ying Zhang. Continuousfirefighting on infinite square grids. In T.V. Gopal, Gerhard J¨ager, andSilvia Steila, editors,
Theory and Applications of Models of Computation ,pages 158–171, Cham, 2017. Springer International Publishing.[12] Pierre Coupechoux, Marc Demange, David Ellison, and Bertrand Jouve.Firefighting on trees.
Theoretical Computer Science , 794:69 – 84, 2019.Special Issue on Theory and Applications of Graph Searching.[13] Marek Cygan, Fedor V. Fomin, and Erik Jan van Leeuwen. Parameterizedcomplexity of firefighting revisited. In D´aniel Marx and Peter Rossmanith,editors,
Parameterized and Exact Computation , pages 13–26, Berlin, Hei-delberg, 2012. Springer Berlin Heidelberg.[14] Bireswar Das, Murali Krishna Enduri, Masashi Kiyomi, Neeldhara Misra,Yota Otachi, I. Vinod Reddy, and Shunya Yoshimura. On structural pa-rameterizations of firefighting.
Theoretical Computer Science , 782:79 – 90,2019.[15] Argyrios Deligkas and Igor Potapov. Optimizing reachability sets in tem-poral graphs by delaying.
Proceedings of the AAAI Conference on ArtificialIntelligence , 34(06):9810–9817, Apr. 2020.[16] Thomas Erlebach, Michael Hoffmann, and Frank Kammer. On tempo-ral graph exploration. In Magn´us M. Halld´orsson, Kazuo Iwama, NaokiKobayashi, and Bettina Speckmann, editors,
Automata, Languages, andProgramming , pages 444–455, Berlin, Heidelberg, 2015. Springer BerlinHeidelberg.[17] Zahra Rezai Farokh, Maryam Tahmasbi, Zahra Haj Rajab Ali Tehrani, andYousof Buali. New heuristics for burning graphs, 2020.[18] Stephen Finbow, Andrew King, Gary MacGillivray, and Romeo Rizzi. Thefirefighter problem for graphs of maximum degree three.
Discrete Mathe-matics , 307(16):2094 – 2105, 2007. EuroComb ’03 - Graphs and Algorithms.[19] Stephen Finbow and Gary Macgillivray. The firefighter problem: A surveyof results, directions and questions.
The Australasian Journal of Combina-torics [electronic only] , 43, 02 2009.1620] Fedor V. Fomin, Pinar Heggernes, and Erik Jan van Leeuwen. The fire-fighter problem on graph classes.
Theoretical Computer Science , 613:38 –50, 2016.[21] Rahul Kumar Gautam, Anjeneya Swami Kare, and S. Durga Bhavani.Faster heuristics for graph burning, 2020.[22] Arya Tanmay Gupta. Burning geometric graphs. mathesis, Indian Instituteof Information Technology Vadodara, India, July 2020.[23] Arya Tanmay Gupta, Swapnil A. Lokhande, and Kaushik Mondal. Np-completeness results for graph burning on geometric graphs. arXiv2003.07746 , 2020.[24] B. Hartnell. Firefighter! an application of domination. the 24th ManitobaConference on Combinatorial Mathematics and Computing, University ofMinitoba, Winnipeg, Cadada, 1995 , 1995.[25] Bert Hartnell and Qiyan Li. Firefighting on trees: How bad is the greedyalgorithm?
Congressus Numerantium , 145, 01 2000.[26] Shahin Kamali, Avery Miller, and Kenny Zhang. Burning two worlds. InAlexander Chatzigeorgiou, Riccardo Dondi, Herodotos Herodotou, ChristosKapoutsis, Yannis Manolopoulos, George A. Papadopoulos, and FlorianSikora, editors,
SOFSEM 2020: Theory and Practice of Computer Science ,pages 113–124, Cham, 2020. Springer International Publishing.[27] Anjeneya Swami Kare and I. Vinod Reddy. Parameterized algorithms forgraph burning problem. In Charles J. Colbourn, Roberto Grossi, and NadiaPisanti, editors,
Combinatorial Algorithms , pages 304–314, Cham, 2019.Springer International Publishing.[28] David Kempe, Jon Kleinberg, and Amit Kumar. Connectivity and inferenceproblems for temporal networks.
Journal of Computer and System Sciences ,64(4):820 – 842, 2002.[29] Huiqing Liu, Ruiting Zhang, and Xiaolan Hu. Burning number of thetagraphs.
Applied Mathematics and Computation , 361:246 – 257, 2019.[30] Gary MacGillivray and Ping Wang. On the firefighter problem.
JCMCC.The Journal of Combinatorial Mathematics and Combinatorial Computing ,47, 01 2003.[31] Othon Michail. An introduction to temporal graphs: An algorithmic per-spective.
Internet Mathematics , 12(4):239–280, 2016.[32] Othon Michail and Paul G. Spirakis. Traveling salesman problems in tem-poral graphs.
Theoretical Computer Science , 634:1 – 23, 2016.[33] Debajyoti Mondal, N. Parthiabn, V. Kavitha, and Indra Rajasingh. Apx-hardness and approximation for the k-burning number problem, 2020.1734] Philipp Zschoche, Till Fluschnik, Hendrik Molter, and Rolf Niedermeier.The Complexity of Finding Small Separators in Temporal Graphs. In IgorPotapov, Paul Spirakis, and James Worrell, editors, , volume 117 of
Leibniz International Proceedings in Informatics(LIPIcs) , pages 45:1–45:17, Dagstuhl, Germany, 2018. Schloss Dagstuhl–Leibniz-Zentrum fuer Informatik.[35] Marek ˇSimon, Ladislav Huraj, Iveta Dirgov´a Lupt´akov´a, and Jiˇr´ı Posp´ıchal.Heuristics for spreading alarm throughout a network.