**7. Lifetime dependency (LD) graph**

Let the local lifetime dependency graph be *G* = (*V*, *E*) where nodes in *V* denote the local covers and edges in *E* exist between those pairs of nodes whose corresponding covers share one or more common sensors. For simplicity of reference, we will not distinguish between a cover *C* and the node representing it, and an edge *e* between two intersecting covers *C* and *C*� and the intersection set *C C*� . Each sensor constructs its local LD graph considering its one- or two-hop neighbors and the corresponding targets. Figure 2 shows the local lifetime dependency graph of sensor *s*<sup>1</sup> in the example network of Figure 1, considering its one-hop neighbors *N*(*s*1, 1) and its targets *T*(*s*1).

In the LD graph, we will use the following two definitions:


**Figure 2.** The local lifetime dependency graph of sensor *s*<sup>1</sup>

In Figure 2, the two local covers {*s*2,*s*3} and {*s*2,*s*4} for the targets of sensor *s*<sup>1</sup> have *s*<sup>2</sup> in common, therefore the edge between the two covers is {*s*2} and *w*({*s*2}) = 3. Therefore,*s*2's battery of 3 is an upper bound on the lifetime of the two covers collectively. It just so happens that the individual lifetimes of these covers are each 1 due to their bottleneck sensors and, therefore, a tighter upper bound on their total life is 2. In general, given two covers *C* and *C*� , a tight upper bound on the life of two covers is *min*(*lt*(*C*) + *lt*(*C*� ), *w*(*C C*� )).
