RELAXATIONS OF L(1, 1)-LABELING FOR THE BROADCAST SCHEDULING PROBLEM

The broadcast scheduling problem asks how an arbitrary network of broadcast transceivers operating on a shared medium may share the medium in such a way that communication over the entire network is possible. In the case where transmissions are explicitly scheduled, as opposed to be determined by contention, the problem is naturally modeled as a graph coloring problem. The canonical model is the L(1, 1)-labeling, also known as the distance-2 coloring, coloring of the graph square, or strict schedule. This coloring is, however, difficult to obtain even sub-optimally and typically uses many colors, which corresponds to an undesirable over-division of the medium. This work introduces a relaxation of L(1, 1)-labeling called L̃(1, 1)-labeling or the pseudo-schedule. Whereas strict schedules guarantee that every path in the graph is a communication path, pseudo-schedules only require the existence of a communication path between any two vertices. The study shows that pseudoschedules have many superior characteristics to the canonical model, provided the relaxation is acceptable. In particular, the worst case number of colors used is linear in the degree of the graph, as opposed to quadratic for strict schedules. The formal properties of the L̃(1, 1)-labeling are comprehensively treated, including investigations of its “chromatic number,” rigorous analysis of several algorithms, and proofs of hardness of optimization and approximation. Basic results on a generalization of the coloring are obtained, and nine open problems are posed for future research.

The hidden terminal problem posits that a node may seize the medium too aggressively, as it is generally not able to sense every other node with which it may conflict. Contrarily, the exposed terminal problem shows that a node may be too conservative in taking the medium, since not every node it senses necessarily engenders a conflict. Figure 1 illustrates the problems.
A medium access control (MAC) protocol is a practical solution to the broadcast scheduling problem. The predominant approach to MAC protocol design is contention, the outstanding example of which is carrier sense multiple access (b) C senses transmissions from B but only wants to transmit to D, so simultaneous transmission should be permitted Figure 1: The hidden and exposed terminal problems, respectively. The RTS/CTS scheme; in the event of simultaneous RTSs to the same node, no CTS will be issued, and the requesters will enter a probabilistic "back-off" routine.
(CSMA); examples include the wireless Ethernet standard 802.11 [1] and the protocol B-MAC [2] for wireless sensor networks. The hidden and exposed terminal problems are avoided through the use of a "request to send/clear to send" (RTS/CTS) scheme, as illustrated in Figure 2.
The performance of contention-based protocols is known to degrade seriously under high-traffic conditions, especially in the common case of sink-oriented networks, as demonstrated by Ahn et al. [3]. Furthermore, real-time applications may require predictability that the contention paradigm is unable to provide, since contention is inherently non-deterministic. Finally, contention imposes a high dutycycle on the transceiver, since it must be ready to hear and respond to messages more or less uninterruptedly. This is a particularly undesirable property in wireless sensor networks, where transceivers are typically powered by battery.
The alternative to contention is explicit scheduling, the outstanding example of which is time division multiple access (TDMA). MAC protocols that (at least partially) integrate TDMA include (D)RAND [4], Z-MAC [5], Funneling-MAC [3], and DCQS [6]. In explicit scheduling, the hidden and exposed terminal problems can be avoided by construction of the schedule.
Explicit scheduling overcomes the aforementioned disadvantages of contention but introduces its own. First, determining a nontrivial explicit schedule is a difficult problem, especially in ad-hoc networks. Second, and relatedly, a schedule may be too "large" in the sense that it demands too much division of the medium; for example, a TDMA schedule may have an excessive number of timeslots per frame, imposing a long pause between subsequent transmissions from the same node. Finally, the transceivers must be synchronized in the sense of adhering to the schedule; thus a node under TDMA must only transmit during its assigned timeslot, and nodes must have synchronized clocks.
This study will address the first two issues by offering a new formal framework, the L(1, 1)-labeling or pseudo-schedule, in which to consider the construction of explicit schedules for broadcast networks. (The synchronization problem is extremely interesting, but several solutions exist; see the survey [7].) Our treatment will be almost entirely mathematical, albeit motivated by the practical concerns just discussed, and with practical applications that are easy to discern.
The remainder of this chapter briefly introduces the concept of modeling explicit scheduling as a graph coloring problem, the canonical L(1, 1)-labeling model, and why one would want to relax this model. These points are pursued rigorously in §2, wherein is defined the pseudo-schedule, and its fundamental properties analyzed. In §3 we encounter and analyze several pseudo-scheduling algorithms, and in §4 we prove that no efficient optimal algorithms, nor in fact a certain class of approximation algorithms, exist, unless P = NP. A natural generalization of pseudo-schedules, primarily of theoretical interest, is treated in §5, and we conclude the study in §6.

Explicit scheduling and graph coloring
Any network is easily modeled as a mathematical graph, with the network nodes as vertices and communication links as edges. The explicit scheduling of a network can then be seen as a kind of graph coloring, where each vertex is "colored" with the segment of the medium assigned to it by the schedule.
Assuming communication links are symmetric-as we will throughout the study-the broadcast scheduling problem is solved via an explicit schedule arising from a coloring of the corresponding graph such that any vertex is colored differently than any other vertex at distance one or two. Such a coloring is called an L(1, 1)-labeling, or alternately a distance-2 coloring, coloring of the graph square, or strict schedule. This is, in fact, the canonical model for explicit scheduling, and is implemented as a MAC protocol by (D)RAND.
Unfortunately L(1, 1)-labeling leads to "large" schedules: the division of the medium grows as the square of the maximum number of communication links at any node in the network. This is essentially because L(1, 1)-labeling completely bars transmission conflicts, even if such conflicts would not disconnect the network. A network with a routing tree, for example, only needs to guarantee lack of transmission conflicts on the tree-it is a matter of indifference whether offtree links are valid transmission vectors, since they are never used. In this sense, L(1, 1)-labeling "over-solves" the broadcast scheduling problem.
It is natural, then, to ask how one might solve the broadcast scheduling problem while permitting certain "harmless" conflicts. This is not a completely novel idea. Z-MAC and Funneling-MAC mix TDMA and CSMA with the notion that a network may benefit from opportunistically choosing between them. In a related but distinct vein, TSMA [8] and RIMAC [9] allow conflicts in explicit schedules while attempting to make some probabilistic guarantees about data delivery.
All the aforementioned protocols, however, abandon the determinism that constitutes one of the benefits of explicit scheduling. The pseudo-schedule, by contrast, is defined as a graph coloring, with deterministic and provable characteristics. For instance, it can be proved that no conflicts present in a pseudo-schedule actually disconnect the network.
Ren's RAC-CT [10] implements what we recognize as the greedy algorithm for pseudo-scheduling, although the analysis is only completed here (in §3.2). With a firmer formal foundation, we are also able to present and analyze two alternative algorithms with some superior characteristics.

Prerequisites
The thesis assumes familiarity with the conventional terms and notation of graph theory. Except where otherwise stated, we implicitly assume that graphs are simple, that is: unweighted, undirected, and without loops or multiple edges.
Recall that for any graph G, we typically let V (G) denote the set of vertices of G, and E(G) the set of edges. There appears to be no universally-accepted notation for the neighborhood, so let the (closed) neighborhood of a vertex v in graph G, defined as the set comprised of v and all vertices adjacent to v in G, be denoted Finally, recall that the distance between vertices u, v in G, denoted dist G (u, v), is the number of edges in the shortest path between u and v (with dist G (u, v) = ∞ for u, v disconnected).
For §2.4 the reader ought to have a basic grasp of the so-called "probabilistic method," particularly as it relates to random graphs. The textbooks of Alon and Spencer [11] and Bollobás [12] are the definitive references, respectively.
Finally, §4-5 assume that the reader is fully conversant in the theory of NP-Completeness. Any modern text in the theory of computation will suffice as a reference.
All other terms and notation are introduced and defined as needed.

Pseudo-Schedules
Having motivated the study from practical considerations in the previous chapter, we are now ready to engage in formal work. In this fundamental chapter, we define the pseudo-schedule and examine its basic properties, in particular the bounds on its "chromatic" number χ 1,1 . We obtain many minor or specialized results, but the main one is given below.
Theorem 2.1. Given a graph G with degree ∆ ≥ 1, where ∆ * is the smallest possible degree of a spanning tree of G.
Before continuing, let us note that we will often implicitly assume in our proofs that we work with connected graphs. There is no danger in this, since a disconnected graph may be taken component-by-component without loss of generality; the basic definitions have been written carefully to ensure this is so.

Definition
Let us first introduce in a very general way the "strict" structure that we wish to relax, with notation adapted from Calamoneri [1]. An L(h 1 , . . . , h k )-labeling of , is the smallest possible value of (max K − min K + 1). (Observe that when h 1 = h 2 = · · · = h k = 1, we can simply minimize |K|.) Clearly an L(1)-labeling of G is identical to a proper coloring of G, and the (1)-number χ 1 (G) (or just χ(G)) is the well-known chromatic number. For this reason the range set of the labeling function is also known as the set of "colors," and we indifferently use the name "coloring" for labeling, even outside the case of L(1). We also say that the (h 1 , h 2 , . . . , h k )-number is the chromatic number of the L(h 1 , . . . , h k )-labeling.
An L(1, 1)-labeling assigns colors to vertices such that no vertex has the same color as any other vertex within a radius of distance two. In §1 we discussed how this labeling, which is also called distance-2 coloring, coloring the graph square, or strict scheduling, is related to the broadcast scheduling problem.
We now shift perspective. Relative to some labeling function l as above, we say that the ordered pair (u, v) ∈ V (G) 2 is nonconflicting iff uv is an edge in G and (In a broadcast network, this is analogous to a node u transmitting to v without interference.) A directed path from u to v is likewise nonconflicting iff the pairs that comprise it are nonconflicting.
An L(1, 1)-labeling can be alternately defined as a labeling such that every path in the graph in nonconflicting. Immediately we conceive of a natural relaxation: instead of requiring that every path be nonconflicting, we demand only the existence of at least one nonconflicting path from u to v for every ordered pair (u, v) ∈ V (G) 2 such that u, v are connected. Such a labeling we call a L(1, 1)labeling, or pseudo-schedule. The corresponding chromatic number is called the pseudo-(1,1)-number, denoted χ 1,1 .
Finally, we will often find it convenient to work with edges uv such that both (u, v) and (v, u) are nonconflicting (under some labeling); such an edge is said to be bidirectional. A subgraph-such as a path or spanning tree-is bidirectional iff all its edges are bidirectional. Figure 3 gives an example of a pseudo-schedule.  Figure 3: A pseudo-schedule on C 4 .

Comparison to other labelings
For the remainder of this section, let G be a graph of order n and degree ∆.
McCormick's seminal 1983 paper [2] proved that McCormick also establishes an approximation ratio of O( √ n) for the greedy algorithm and proves that computing the (1,1)-number is NP-hard. The only alternative to the greedy algorithm in the literature is due to Ramanathan and Lloyd [3], who prove an approximation ratio with order of the graph thickness (ie, the minimum number of planar subgraphs into which a graph can be decomposed).
Because L(1, 1)-labeling is the most common approach to broadcast scheduling, it will be the typical "foil" of the thesis, the standard against which the pseudo-schedule is compared. This chapter will demonstrate that the bounds can be lowered substantially if the pseudo-schedule is an acceptable alternative to strict scheduling, including an O(∆) improvement in the upper bound. In §3 we present several pseudo-scheduling algorithms, each with different implementation characteristics, but all sharing an approximation ratio of O(∆).
The study of various relaxations and restrictions on colorings is actively pursued by mathematicians and considered interesting in its own right. L(1)-labeling (proper coloring) may be relaxed by allowing "defects," in the sense that a coloring is d-defective iff every vertex has at most d adjacent vertices of the same color. Cowen, Goddard, and Jesurum make a review of this line of research in [4].
Pseudo-schedules are in fact defective colorings, as one can see in Figure 3, but not vice-versa; the former have additional structure.
Broersma et al. [5] have introduced the notion of backbone coloring, which is an L(1)-labeling with the additional condition that in some specified spanning subgraph, the (integer) colors differ by at least two. By operating with the square of the graph, backbone colorings can be used to generate relaxations of L(2, 1)labelings (see [1]) that resemble how pseudo-schedules relax L(1, 1)-labelings. That said, any backbone coloring of G 2 is an L(1, 1)-labeling of G, so backbone colorings do not achieve the same level of relaxation as pseudo-schedules.
Suppose that instead of one color, each vertex in G is colored with a set of b colors, with the condition that adjacent vertices must have disjoint color sets. If such a "fractional" coloring can be accomplished using a colors, G is said to be is well-defined; it is called the fractional chromatic number. (This definition is due to Scheinerman and Ullman [6].) Every coloring is a fractional coloring, so χ f ≤ χ.
That the inequality may be strict is shown by C 5 : this graph is (5 : 2)-colorable, so ) Computing the fractional chromatic number is NP-Hard [7].
Fractional coloring on the graph square is a natural alternative to L(1, 1)labeling for broadcast scheduling, although it is only relevant when the medium can be divided into arbitrarily (or at least "very") small segments. Molloy and Reed [8] give an upper bound where ω is the size of the largest clique in G. Operating on G 2 , this bound is still O(∆ 2 ).
If, on the other hand, k < 0, set G = K 3−k to begin, and label the vertices . . , x 3−k . Now to every x i attach a new vertex y i , and to y i attach a new vertex z i . Finally, introduce an edge z i v i+1 for all 1 ≤ i ≤ 2 − k. Figure 4 shows the resulting graph for k = −1.
On the other hand, G admits a pseudo-schedule in three colors: assign all x i the first color, all y i the second color, and all z i the third color. Since two colors is obviously too few, χ 1,1 (G) = 3.
Our intuition misled us because, unlike both L(1)-and L(1, 1)-labeling, or indeed any of the colorings discussed in §2.1.1, the pseudo-schedule is non-monotonic with respect to edge insertion; that is, χ 1,1 may either increase or decrease as edges are inserted into a graph. This is due to the fact that the pseudo-schedule relies definitionally on an existence condition, not a universal condition. Thus, for instance, a new edge may permit more color-efficient nonconflicting paths through the graph. For a dramatic example of this, see §2.3.1, particularly Theorem 2.7.

Bounds on χ 1,1
The proof of the bounds is in two parts, corresponding to the lower and upper bound. The lower bound we establish in this section, but the upper bound is a consequence of the analysis of Algorithm 3.3.1 in §3.3.

Lemma 2.3.
Let G be a graph with a pseudo-schedule in k colors; there exists a spanning tree of G with degree less than k.
Proof. Let s be the pseudo-schedule guaranteed by the hypothesis, and let r be any vertex in G. By definition, s must exhibit some nonconflicting path from any other vertex v to r; by taking the collection of these paths, sans any edges that produce cycles, we obtain a directed spanning tree T of G.
Suppose, for the sake of argument, that T has a vertex z such that deg T (z) ≥ k. It follows that at least two vertices of N T [z] are monochromatic. Let x be one of these vertices. If s(x) = s(z), neither (x, z) nor (z, x) is nonconflicting; otherwise let y = z denote the vertex colored like x in N T [z]. At least one of (x, z) or (y, z) must be an edge in T , but neither is nonconflicting. This contradicts the construction of T , so we conclude that ∆ T < k.
Corollary 2.4. Any graph that admits a pseudo-schedule in three colors contains a Hamiltonian path.
We can now prove the main result of this chapter.
Proof of Theorem 2.1. The lower bound follows from Lemma 2.3, for if there were a pseudo-schedule in ∆ * colors, we could obtain a spanning tree of degree less than ∆ * , which is impossible. The upper bound is established by Theorem 3.5.
Observe that the upper bound on χ 1,1 is linear in the degree of the graph, whereas it is quadratic for χ 1,1 . Therefore if the pseudo-schedule constitutes a valid alternative to the L(1, 1)-labeling, the savings in the number of colors are, in principle, substantial. How this plays out in practice is examined in §3.
The lower bound given in the preceding theorem is tight, as evidenced by any tree. Besides the vacuous example K 2 , the only graphs that I know achieve the upper bound are C 3k+2 (k ≥ 1), as we will see in §2.3.1. Hence the upper bound may not in fact be tight; and even if it is, we will see in §2.4 that almost no graph actually hits the bound.

Graphs for which χ 1,1 is known
A pseudo-schedule on any tree T must render every edge of T bidirectional, so χ 1,1 (T ) = χ 1,1 (T ) = ∆ T + 1 [1]. It is also easy to see that for the complete graph K n , χ 1,1 (K n ) = n. We also know the pseudo-(1,1)-numbers for the complete bipartite graphs K m,n .
Proof. If n = 1 then G is a tree. If m = n = 2 then G = C 4 , and we refer to Theorem 2.6 below. For the remaining case, let the vertices of G be labeled a 1 , a 2 , . . . , a m and b 1 , b 2 , . . . , b n as per the partite sets. By definition of pseudoschedules, for each 1 ≤ i ≤ m there must be some 1 ≤ j ≤ n such that (a i , b j ) is nonconflicting, which implies that no two a i may have the same color; hence Now let a i take color i and b j take color j; we will prove that this coloring is a pseudo-schedule. Clearly the edge a i b j is bidirectional when i = j. To proceed from a i to b i without conflict, we may use any path a i , b j , a k , b i where i, j, k are distinct. If m = n, the same pattern works from b i to a i ; otherwise simply use b i , a m , b j , a i with i, j, m distinct. Thus there is a nonconflicting path from any vertex in one partite set to any vertex in the other partite set.
To proceed from a i to a m (i = m) without conflict, any path a i , b j , a m suffices, provided i, j, m are distinct. From a i to a l (i = l) where l < m, we may use a i , b j , a m , b k , a l where i, j, k, l, m are distinct. If m = n, the same pattern works from b i to b j (i = j); otherwise simply use b i , a m , b j with i, j, m distinct. We conclude that there is a nonconflicting path between any two vertices in the same partite set.
We are also able to characterize the pseudo-(1,1)-number for cycles.
Proof. Label the vertices v 1 , v 2 , . . . , v n along the cycle. From Theorem 2.1 we know that a cycle's pseudo-schedule requires at least three colors. If n mod 3 ≤ 1, let v i take color i mod 3; then the path v 1 , v 2 , . . . , v n is bidirectional.
In the remaining case n mod 3 = 2, suppose C n admits a pseudo-schedule s in three colors. Consider the vertices v 1 , v 2 , v 3 , v 4 : at least two must share a color. These cannot be v i and v i+2 , for then there would be no nonconflicting path into v i+1 . Suppose, then, that s(v 2 ) = s(v 3 ). Relabel the vertices by decrementing every index, but with v 1 relabeled as v n , and consider afresh the vertices v 1 , . . . , v 4 .
If s(v 2 ) = s(v 3 ) again, there is no nonconflicting path from v 2 to v 3 since s(v 1 ) = s(v n )-we are "blocked" on both sides. Hence it must be that s(v 1 ) = s(v 4 ).
We can readily construct a pseudo-schedule on C n in four colors: for 1 ≤ i ≤ n − 2, assign v i the color i mod 3; assign v n−1 the color 3; and assign v n the color 1. It is easy to confirm that the path v 1 , v 2 , . . . , v n is bidirectional.
We conclude this section with an exploration of the wheel graph W n , which is C n−1 plus an additional vertex adjacent to all others.
Proof. Label the vertices along the circumference v 1 , v 2 , . . . , v n−1 and let v n be the dominating vertex. Under any pseudo-schedule s, there must exist some 1 ≤ i ≤ n − 1 such that (v i , v n ) is nonconflicting. Hence s(v i ) is unique in s, which forces s to use at least four colors. This obviously suffices for W 4 ; for W 5 , color the major cycle as in the proof of Theorem 2.6 and assign v n the fourth color.
It remains to treat W n for n ≥ 6. Consider the dominating vertex v n : if s(v n ) = s(v i ) for any 1 ≤ i ≤ n − 1, note that there is no nonconflicting path out of v i . We conclude that s(v n ) is unique in s, which forces s to use at least five colors. Color, preliminarily, the major cycle as in the proof of Theorem 2.6, and give the fifth color to v n . If (n−1) mod 3 = 2, there is a bidirectional spanning tree of W n comprised of the path v 1 , v 2 , . . . , v n−1 plus the edge v n−2 v n . If, alternately, (n − 1) mod 3 = 2, recolor v n−1 with the fourth color; the path v 1 , v 2 , . . . , v n−1 and the edge v n−1 v n are bidirectional.
W n provides a dramatic example of the non-monotonicity of the pseudoschedule. Note that K n−1,1 requires n colors, yet it is a subgraph of W n , which requires at most five colors, regardless of how large n may be.

Bounds on χ 1,1 for almost every graph
A random graph model G(n, p) is the probability space of graphs with n vertices such that each of the n 2 possible edges is chosen independently with probability 0 ≤ p ≤ 1, where p may be an arbitrary function, although typically p = p(n). A random graph is a graph selected from G(n, p); as shorthand we say "a (random) graph G = G(n, p)." Finally, a statement P n is said to hold almost always iff Pr[P n ] → 1 as n → ∞; if the statement P n concerns the random graphs G = G(n, p), we say it holds for almost every (random) graph.
Our task in this section will be to improve the upper bound on χ 1,1 by restricting our attention to "common" graphs, thereby avoiding the structural "oddities" that force up the universal upper bound. The definitive modern treatise on random graphs is due to Bollobás [9], and the results of this section rely critically on theorems presented in that work. Theorem 2.1 shows that χ 1,1 (G) ≤ 2∆ G . As it turns out, the inequality is almost always strict under very broad conditions. Theorem 2.8. Let p = p(n) satisfy pn/ log n → ∞; then almost every random graph G = G(n, p) has χ 1,1 (G) < 2∆ G .
Proof. Suppose p ≤ 1 2 . Theorem 3.9 of [9] states that almost every G has a unique vertex r of maximum degree. It suffices to consider only the component containing r, so assume without loss of generality that G is connected. Now consider the operation of Algorithm 3.3.1 (p. 30) when r is specified as the root. The algorithm will create a spanning tree T of G and examine, for each vertex v, the neighborhood of the T -parent of v as well as the T -parents of (some) vertices adjacent to v.
Including v, the number of vertices examined is no more than 2∆ G − 1, so it is not possible for the algorithm to use more than this number of colors.
Suppose p > 1 2 . Riordan and Selby [10] show that almost every G has ∆ G > n/2, in which case we obviously require fewer than 2∆ G colors.
The preceding theorem is somewhat interesting, but what one really wants is (at least) a reduction of the multiplicative factor of ∆. The following theorem shows this is possible if p is held constant. We will utilize some standard asymptotic notation: for any function g(n), let o(g) denote the class of functions f (n) such that f /g → 0 as n → ∞; we also use o(g) to denote an arbitrary member of the class. Related to this, we say f ∼ g ⇐⇒ f (n) = (1 + o(1))g.
for almost every random graph G = G(n, p). If p > 1 2 then for almost every random graph G = G(n, p).
Proof. Corollary 10.11 of [9] tells us that almost every G has diameter two. Let ∆ = ∆ G and r be a vertex of maximum degree; once again we invoke Algorithm 3.3.1 with root r, and let T be the spanning tree constructed by the algorithm. Obviously T has height (at most) two, and for this reason, the number of colors required beyond ∆ + 1 is determined entirely by the vertices at distance two from r. (If there are none, clearly χ 1,1 (G) ≤ ∆ + 1.) In particular, if such a vertex v has T -parent u, we need examine at most deg(u)+deg(v) different vertices (including v). However, a vertex adjacent to v need only be counted if it is also at distance two from r, since the T -parent of a vertex at distance one is r itself, which is already examined in the neighborhood of u. Hence where α is the maximum number of vertices at distance two from r adjacent to any single vertex also at distance two from r.
Observe that if ∆ is large, α should be small since "lots" of vertices will be adjacent to r. Alternately, if ∆ is small, this implies p is small, and α should be small because high-degree vertices are unlikely. Intuitively, then, we hope that α should be substantially smaller than ∆ almost always.
Instead of attempting to calculate α directly, let us examine the simpler random variable X v that counts the number of r-distance-two neighbors of a given r-distance-two vertex v. There are ∆ vertices adjacent to r, one of which is the T -parent of v, leaving ∆ − 1 that may be selected at random. There are n − ∆ − 1 vertices at distance two from r, one of which is v itself, so X v ≤ n − ∆ − 2. We can imagine that v selects neighbors by the following process: first ∆ − 1 potential neighbors are chosen from between the two groups, and each potential neighbor is connected with probability p. X v then counts the actual number of r-distance-two neighbors.
The probability distribution Pr[X v = k] is known as Fisher's noncentral hypergeometric distribution. Let µ be the expectation of X v ; an asymptotic approx-imation for µ is given by Levin [11]. In particular, where elimination of additive constants is justified by the fact that both n, ∆ → ∞, the latter being a consequence of ∆ ∼ np almost always (Corollary 3.14 of [9]). To continue: according to [11]. So in fact and thus per Chebyshev's inequality, X v ∼ µ almost always.
The random variable α is the maximum of the set of random variables The random variables in this set are not independent, but they are "almost independent" in the sense of Dysktra et al. [12], so we can treat them as if they were independent for large n. But since any X v is almost always close to µ, so must be α; that is to say, α ∼ µ almost always. Thus almost always. Dividing through by ∆ yields the desired result.
This result is fine for p > 1 2 , but it fails to capture our previous intuition that α ought to be small when p is small. Assuming p ≤ 1 2 , let us reexamine the square root term: Here we have used the fact that ∆ > np almost always [10] and that ∆ ∼ np almost always. Finally we obtain The theorem yields some nice corollaries.
Corollary 2.10. Almost every graph G = G(n, 1 2 ) has Interestingly, we are able to say something meaningful about almost every random graph G = G(n, p) with constant p, even when we do not know the value of p.
Corollary 2.11. Let 0 < p < 1 be fixed. Almost every graph G = G(n, p) has We note that the proof of the p > 1 2 case actually goes through for a rather wide range of p. Theorem 2.12. Let p = p(n) satisfy p 2 n − 2 log n → ∞ and n 2 (1 − p) → ∞. For almost every random graph G = G(n, p), Before leaving this section, let us note that the methods used in the preceding proofs are relatively crude, and the results are quite unlikely to be sharp; indeed, I suspect that the "true" multiplicative factor of ∆ in the upper bound for almost all graphs is unity. It is even possible that the upper bound for almost all graphs is properly seen as a function of ∆ * . We will return to these issues when we conclude the thesis in §6.

CHAPTER 3 Algorithms
In the previous chapter we investigated the fundamental nature of the pseudoschedule and its associated chromatic number, but even there we found it useful to invoke algorithmic arguments, or even particular algorithms. The current chapter adopts the algorithmic point of view entirely, offering several alternative pseudoscheduling procedures and evaluating their trade-offs. The fundamental performance metric will be the number of colors used, although we will permit worse performance on this axis in exchange for other desirable properties. Our findings are summed up broadly in Table 1.
Before the discussing the algorithms in earnest, we will describe a special type of pseudo-schedule that, in some sense, embeds a strictly-scheduled spanning tree; all the algorithms discussed in this section will use this special pseudo-schedule.
Finally, before concluding, we will examine a customized algorithm for pseudoscheduling dismantleable graphs.

Spanning tree pseudo-schedules
Given a graph G with spanning subgraph H, we say that a pseudo-schedule s is an H-pseudo-schedule iff every edge of H is bidirectional in G relative to s.

Algorithm Worst Case Colors Avg Case Colors As Protocol
near 3∆ Very Good Table 1: Summary comparison of the main algorithms of this chapter. We list the d = 3 instantiation of d-band separately because of its particular usefulness.  Figure 5: A pseudo-schedule that is not spanning tree; arrows indicate nonconflict.
We are particularly interested in the case where H is a spanning tree, as this corresponds to the concept of a routing tree in a network. Thus we say that a pseudo-schedule s of G is a spanning tree pseudo-schedule or st-pseudo-schedule iff there exists some spanning tree T of G such that s is a T -pseudo-schedule. Not every pseudo-schedule is spanning tree, as Figure 5 demonstrates.
The chromatic number associated with the st-pseudo-schedule is the st-pseudo- is ever strict. (The reader can confirm that χ 1,1 = χ 1,1 = 4 in the graph of Figure 5.) Indeed, we can replace χ 1,1 with χ 1,1 in all of the results of the previous chapter, which notably implies that all the graphs in §2.3.1 have χ 1,1 = χ 1,1 .
As a step towards resolving the question of the equality, let us observe that it holds in the smallest nontrivial case.
Theorem 3.1. A pseudo-schedule in three colors is spanning tree.
Proof. Let s be a pseudo-schedule on G in three colors. Suppose, for the sake of argument, that s is not spanning tree; then there must be a cyclic nonconflicting path P = x, y, . . . , z, x containing at least one edge that is not bidirectional.
Without loss of generality, let xz be this edge, with (z, x) nonconflicting but not (x, z).
Now because (x, z) is conflicting, there is some vertex w adjacent to z such that s(x) = s(w). There must be some nonconflicting path P ′ from w to x. Let (p ′ , p) be the first nonconflicting pair from P ′ such that p ∈ P ; in other words, p ′ is the vertex immediately before P ′ "hits" P for the first time (possibly p ′ = w or p = x). Let p be preceded in P by o and followed by q; without loss of generality, We conclude that s is spanning tree.

The greedy algorithm
Let G be a graph with spanning tree T and vertices v 1 , v 2 , . . . , v n . We can produce a pseudo-schedule on G as follows: 3. Increment i and go to step 2.
This algorithm was first presented by Ren in §2.4.2 of his doctoral thesis [1], but we are able to take the analysis of the algorithm much further here.

Proof of correctness
We shall prove that the coloring s produced by the greedy algorithm is a T - and observe that w is thereby a G-neighbor of a T -neighbor of u; or equivalently, u is a T -neighbor of a G-neighbor of w. Thus s(u) = s(w) regardless of whether u or w is colored first, so (u, v) is a nonconflicting pair. By an identical argument, (v, u) is nonconflicting; hence uv is bidirectional.

Analysis
Theorem 3.3. Let h be the number of colors used by the greedy algorithm on graph G with spanning tree T . Then Furthermore, these bounds are tight.
Proof. The lower bound is simply the (1, 1) R i with the natural root r i : we claim that r i and its neighbors can be colored by the algorithm in such a way that colors (i − 1)m + 1, . . . , im appear on them, in whatever way we like. This is easy to see for R 1 = K m,1 , and it follows for the remaining R i by induction.
By R m−1 alone we can induce m 2 − m colors, but the final m + 1 additional colors require more subtlety. Let Q be a tree with root q connected to vertices root connected to x j . Finally, construct G by introducing a vertex v connected to the roots r 1 , . . . , r m−1 and q. Note that G is a tree with degree m.
G can now be colored by the greedy algorithm such that R i exhibits colors (i−1)m+1, . . . , im in the (closed) neighborhood of its root r i , with r i itself receiving color im. In Q, we arrange for the root of R j,k to take the color (k − 1)m + j, with the remaining colors appearing in the neighborhood of the root. After this, x 1 receives color m 2 − m + 1, as it is within distance two of all preceding colors.
Similarly, x 2 gets color m 2 − m + 2, as it is within distance two of all preceding colors as well as x 1 . Running through the x j gets the number of colors to m 2 − 1.
We now come to q and note that it is, via Q, within distance two of all colors up to m 2 − 1 except im for 1 ≤ i ≤ m − 1. But these are precisely the colors appearing at the r i , so q is colored m 2 . Finally, v is colored m 2 + 1.
The degenerate case for m = 2 is given in Figure 6.
Note that the worst-case performance of the greedy algorithm is no worse than the worst-case performance of the greedy algorithm for strict scheduling, which is ∆ 2 G + 1 colors [3]; indeed, the worst case is strictly superior if ∆ T < ∆ G . The approximation ratio of an algorithm is the ratio of its cost to the optimal cost. We are able to demonstrate that the performance ratio of the greedy algorithm is O(∆ G ) if one uses the spanning tree of Fürer and Raghavachari [4], which is guaranteed to have degree at most one more than the smallest possible, and which can be determined in polynomial time.
Theorem 3.4. Given a graph with degree ∆, the approximation ratio of the greedy algorithm is less than 2∆, provided the Fürer-Raghavachari spanning tree is used.
Proof. Let h denote the number of colors used by the algorithm on G, and k denote the optimal number. If we let ∆ * denote the minimum degree of a spanning tree, Fürer and Raghavachari [4] give a polynomial-time algorithm for finding a spanning tree with degree at most ∆ * + 1; using this tree yields If we are unable to say anything about the ratio of ∆ T to ∆ * , the approxima-

Implementation issues
Under the name RAC-CT, Ren [1] implemented the greedy algorithm as a MAC protocol for broadcast networks. The greedy algorithm has some qualities to recommend it as a protocol candidate, first and foremost its conceptual simplicity.
Empirically it also seems to do much better than the worst case: Ren reports performance close to ∆ for random grids, and Table 2 suggests that the algorithm performs well below ∆ on G(n, p) with constant p. The user is also granted a great degree of freedom since he chooses both the spanning tree and the coloring order; the choice of the spanning tree is particularly important in network applications, since this corresponds to the choice of routing tree.
On the other hand, several factors militate against the greedy algorithm as a protocol candidate. However uncommon the worst case might be in practice,  it still has to be accommodated, increasing message size and/or complexity. In a similar vein, observe that the algorithm extensively uses information at distance two from the vertex it is currently coloring. In networks it is generally not possible to obtain such information except by way of an adjacent node.
Perhaps most damagingly, because a vertex cannot be colored while another vertex it must check is being colored, the greedy algorithm requires either central control, token-passing, or mutual exclusion on the two-hop neighborhood. Although Rhee et al. provide a distributed implementation of mutual exclusion in their work on DRAND [5], which Ren used as a basis for RAC-CT, this is expensive in time and bandwidth and scales poorly.

The 2∆ algorithm
The high upper bound for the greedy algorithm is due to the freedom afforded the user in specifying how the algorithm operates. If we restrict-or indeed, almost eliminate-this freedom, the upper bound can be dramatically improved.
This is the idea behind the 2∆ algorithm for pseudo-scheduling, presented as Algorithm 3.3.1.
Some notation: for any tree T rooted at r, we say that u is the parent of v iff uv ∈ E(T ) and dist T (u, r) < dist T (v, r); we write u = par T,r (v). (It will be convenient to let par T,r (r) = r.) Naturally we say that v is a child of u. We also henceforth permit ourselves the following natural abuse of notation: given a coloring s, which may be only partially defined, for any set U of vertices let s(U) denote the set {s(u); u ∈ U, s(u) is defined}.
The 2∆ algorithm for pseudo-scheduling Input: G, a graph; and r, a distinguished vertex of G.

Proof of correctness
Let us prove that the coloring s produced by the algorithm given graph G and distinguished vertex r is a T -pseudo-schedule, where T is the tree generated internally by the algorithm. Observe that T is produced by a breadth-first search process and that every vertex at r-distance i is colored before any vertex at rdistance i + 1. We can also see that if vertices u, v have distinct parents p u , p v respectively, then if p u was colored before p v , u was colored before v.
clearly. Consider next any child x of v; since u is adjacent to v = par T,r (x), we have s(u) = s(x). The only vertices left to check are those in ; let y be such a vertex. Now if dist G (r, u) < dist G (r, y), then y was colored after u, so s(u) = s(y). If, on the other hand, dist G (r, u) = dist G (r, y), then u "adopted" v before y could (line 10), which implies that u was colored before y, hence s(y) = s(x).
Let us now establish that (v, u) is nonconflicting. Obviously s(v) = s(x) for x is a child of u, since v will be checked before coloring x and viceversa. If, on the other hand, par T,r (x) = w = u, it must be that w was colored before u since the former adopted x, thus s(x) was defined when the algorithm computed s(N G [u]) (line 11) before coloring v, and s(v) = s(x).

Analysis
The next theorem indicates that the algorithm was not named capriciously.
Furthermore, these bounds are tight.
Proof. The lower bound and its tightness are obvious. To establish the upper bound, note that in order to color a vertex v, the algorithm must check the parent Figure 7: A graph for which the 2∆ algorithm hits the upper bound: J d ,described in the proof of Theorem 3.5, with x as the distinguished vertex.
u of v, every vertex adjacent to u, and additionally the parents of any vertex adjacent to v in G but not T , for a total of at most 2∆ G vertices (including v).
To establish that the upper bound is tight, we introduce the graph J d where Finally, the approximation ratio is for any graph with degree ∆ and a minimum degree spanning tree of degree ∆ * .

Implementation issues
The 2∆ algorithm is primarily distinguished by its excellent worst-case performance, but it sacrifices much in order to achieve it, in particular the user's freedom to choose the spanning tree, although it should be noted that the ability to select the distinguished vertex is modestly helpful, since this vertex can be chosen to correspond to a source/sink/central node in a network. Conceptually the algorithm is more complex than the greedy algorithm, but not by much.
Reliance on information at distance two is reduced significantly relative to the greedy algorithm, but remains substantial. The 2∆ algorithm also requires either central control, token-passing, or mutual exclusion in the two-hop neighborhood. In general, this algorithm is a weak protocol candidate, but very useful for mathematical investigations, as we saw in §2.

The d-band algorithm
Let G be a graph with a spanning tree T rooted at r. The d-band algorithm on this input produces a T -pseudo-schedule on G, provided that d is sufficiently large (see §3.4.1). Intuitively, the algorithm divides the graph into d bands based on vertices' T -distance from r modulo d, with each band being colored from its own palette, disjoint from every other. The idea is that we can thereby rule out many conflicts a priori, greatly reducing the number of vertices that have to be checked.
For the remainder of this section, we implicitly take all terms with respect to G, T, r unless otherwise noted.
The d-band algorithm is distributed and decentralized, with each vertex acting as an autonomous agent passing the following messages: • REQ-COL(L), where L is a set of excluded colors; • PUT-COL(x,k), where x is a vertex being assigned color k; • RPT-COL(k,w), where k is the sender's color (if known) and w is a vertex that must be colored before the sender is colored; or, in a "reverse report," where k is a color excluded for the sender; • RPT-PAR(k,w), where k is the color of the sender's parent (if known) and w is a vertex that must be colored before the sender's parent is colored; or, in a "reverse report," where k is the color of w, a stepparent of the sender; • DEP-REQ(w), where w is a vertex whose color must be assigned before the sender can issue REQ-COL; and • DEP-PUT(w), where w is a vertex whose color must be assigned before the sender can issue PUT-COL.
The sending vertex is implicitly included in any message, along with information about the intended receiver. We let ∞ denote an unknown color and let Along with the definitions of parent and child as in §3.3, we say also that u is a stepparent of v iff dist T (u, r) = dist T (v, r)−1 and uv ∈ E(G)−E(T ); and that x is a stepchild of y iff dist T (x, r) = dist T (y, r) + 1 and xy ∈ E(G) −E(T ). Each vertex is assumed to know its parent, children, stepparents, and stepchildren. Additionally, each vertex knows its T -distance from r. Finally, we assume that V (G) admits a strict total order ≺ that can be efficiently computed at any vertex. 1 The root vertex r assigns itself the color 0, making this known by sending RPT-COL(0,r) to its children. Any vertex besides r must acquire its color as per AcquireColor (Algorithm 3.5.2, p. 49). Any vertex with children must assign colors to its children as per AssignColors (Algorithm 3.5.3, p. 50). Finally, any non-root vertex must receive and relay reports as per ReportColors (Algorithm 3.5.4, p. 51).
The ensemble of these procedures, running independently and in parallel on every vertex simultaneously, constitutes the d-band algorithm.
We assume fully reliable transmission with synchronous communication primitives send and listen. AssignColors uses the primitive "ack-send M to x" by which is meant: send M to x and wait until M is sent back as confirmation, queuing any messages that arrive in the meanwhile for retrieval by the next call to listen.
The ensemble action of the algorithm about a vertex v can be sketched roughly as follows: 1. v listens for RPT-PARs from all of its stepchildren, building a list of excluded colors L.
2. v sends REQ-COL(L) to its parent u.
3. u listens for RPT-COLs from all of its stepchildren, building a list of forbidden colors K.
4. u sends PUT-COL(v,k v ) to v (and all stepchildren of u), where k v is the smallest color in the palette of v not in K ∪ L.
6. Each child of v sends RPT-PAR(k v ,v) to all its stepparents.
In this sketch, for the sake of simplicity we have ignored the DEP facility and the problem of dependency cycles in general.
Observe that the set of messages consumed by any of the three procedures is disjoint from the other two: AcquireColor listens for RPT-PAR from  RPT-PAR/DEP-PUT from (step)parents, and PUT-COL from (some) stepparents. Therefore each procedure may be assumed to operate on its own received message queue independently from the others.
In general, the d-band algorithm colors the leaves of T first and proceeds towards the root, although significant parallelism is possible. Refer to Figure 8 for an example.

Proof of correctness
We say that the d-band algorithm terminates on graph G with r-rooted spanning tree T iff AcquireColor returns on every vertex of G, a condition equivalent to the coloring being a total function. Unlike our previous algorithms, it is not at all obvious that the d-band algorithm terminates, so we must prove it explicitly.
AcquireColor on vertex v does its main work in the loop beginning at line 6.
As this loop is bypassed when v has no stepchildren, assume that it does. We say that v has a request dependence on u when u is the parent of a stepchild of v; and just as v depends on u, u may depend on t, and so on. If we can follow the dependency chain to some terminal a that has no stepchildren, there is no problem, since we can inductively work back to v. However, the dependency chain may in fact be a cycle, in the sense that v has request dependence on u, u has request dependence on t, and so on up to a, but then a has request dependence on v. This we call a dependency cycle of type I.
Given C, a dependency cycle of type I, let v = min ≺ C. Assume, for the time being, that C is the only dependency cycle in the graph. v issues DEP-REQ(v) to its children, and via ReportColors one of the children sends RPT-PAR(∞,v) to x, which depends on v. But since v ≺ x, x issues DEP-REQ(v) to its children, one of which then sends RPT-PAR(∞,v) to y, which depends on x, and so on.
Let u be the vertex in C on which v depends, creating the cycle. u issues DEP-REQ(v) to its children, and one of them transmits RPT-PAR(∞,v) to v. At this point v can detect the dependency cycle, and v breaks the cycle by ignoring its dependence on u (see line 12 of AcquireColor). As per our assumptions, v is now free of request dependencies, or at worst sits in linear depedence chains that are naturally resolved; that is, v (eventually) acts as if it has no stepchildren, and proceeds to issue REQ-COL to its parent p.
Let us assume that p eventually assigns a color to v via PUT-COL. v then broadcasts RPT-COL, resolving the now-linear dependency chain. (The resolution is a little unusual at u, where we have registered a "reverse dependence" on v-but this will be cleared by the RPT-COL broadcast from v, which causes a "reverse report" RPT-PAR to be sent to u from one of its children.) Hence every vertex in C gradually becomes free to issue REQ-COL, and if we assume that every one of their parents replies with PUT-COL, then AcquireColor terminates on every vertex in C.
We now shift our attention to AssignColors. A vertex v with parent p v is said to have a put dependence on any stepchild of p v . (It is convenient for the dependence to be registered at p v .) Just like request dependencies, put dependencies can be chained and may form a cycle; this we call a dependency cycle of type II. It is not hard to see that a type II cycle is broken by essentially the same method used for the type I cycle, with DEP-PUT and RPT-COL standing in for DEP-REQ and RPT-PAR, respectively. (Once again, there is a special "reverse dependence" facility. Let p v have stepchild u with parent p u . If a type II cycle is broken at p v , then p u will register the reverse dependence of u on the children of p v . Resolution comes when p u finishes coloring its children, with "reverse report" RPT-COLs being sent to p u via u.) Hence the d-band algorithm terminates in the presence of a dependency cycle of type II, provided that REQ-COL is issued.
Finally, a dependency cycle of mixed type is possible. AcquireColor handles the transition from request to put dependency by repackaging RPT-PAR as RPT-COL (line 20), while ReportColors handles the reverse transition by first repackaging DEP-PUT as RPT-COL (line 17) and then relaying the latter as RPT-PAR (line 11). But observe that a cycle of mixed type can be broken by the methods previously described; it is treated exactly as if it were a cycle of type I or type II if it is broken by AcquireColor or AssignColors, respectively. The same mechanisms then assure that the resolution proceeds across the cycle. See Figure 9 for a simple example. We conclude that the d-band algorithm terminates if there is no more than one dependency cycle in the graph (of whatever type).
Given a dependency cycle C (of any type), observe that there exists some l such that dist T (v, r) = l for all v ∈ C; call l the level of C. Clearly cycles with different levels cannot affect each other; additionally, disjoint cycles do not interact.
Thus the d-band algorithm terminates given any number of disjoint dependency  Unfortunately a graph may contain many overlapping dependency cycles-yet we claim the algorithm terminates regardless. Let C be a family of intersecting dependency cycles. As there is a strict total order ≺ on vertices, there exists some v = min ≺ C∈C

C.
Observe that AcquireColor must terminate on v, since all dependency cycles in C containing v will be broken at v, if not elsewhere. After breaking all such cycles and resolving all newly-linear chains, let C ′ be the remaining cycles. Obviously |C ′ | < |C|, and we can apply the same argument to C ′ inductively. We conclude that the d-band algorithm terminates.

At this point we have shown that the coloring function produced by the d-band
algorithm is total. We now prove that it is a T -pseudo-schedule.
Theorem 3.6. Let G be a graph with spanning tree T rooted at r. The d-band algorithm produces a T -pseudo-schedule provided that d ≥ min height(T ) + 1, max Proof. Let s be the coloring produced by the algorithm. Consider uv ∈ E(T ) such that u is the parent of v; first we establish that (u, v) is nonconflicting. Observe that we only need consider the stepparents of v, for any other vertices in N G [v] are colored from a different palette than u, given our choice of d. In general a stepparent t of v waits until u is colored before requesting a color from its parent p t , precisely in order to exclude s(u). This will not obtain if a dependency cycle is broken by AcquireColor at t; but in this case, v issues DEP-REQ to u, causing u to register a "reverse dependence" on t. The RPT-COL of t announcing its color is forwarded by v to u as a "reverse report" RPT-PAR, and u will add s(t) to its set of excluded colors when it requests a color from its parent. So even in this case,

s(u) = s(t).
Now consider (v, u). Observe that we only need consider the children and stepchildren of u, for any other vertices in N G [u] are colored from a different palette than v per our choice of d. Now any child x = v of u must have s(x) = s(v) since u assigns the colors of its children. In general u also waits for its stepchildren to be colored before assigning colors to its children, but this would not have been the case if a dependency cycle was broken by AssignColors at u. However, when breaking the dependency cycle, u issues DEP-PUT to its stepchildren, and any such stepchild y forwards DEP-PUT to its parent p y , which registers a "reverse dependence" of y on the children of u. Every PUT-COL issued by u is subsequently copied to y, which sends a "reverse report" RPT-COL to p y . In this way p y comes to know the colors of the children of u, and will subsequently assign a color to y distinct from those. This implies s(v) = s(y).
It is clear from the preceding theorem that d ≥ 3. Requiring d = 3 is useful and not, in practice, very restrictive, since the 3-band algorithm works on trees that minimize distance to the root.
Corollary 3.7. If T is an r-rooted spanning tree of G such that dist T (v, r) = dist G (v, r) for any v ∈ V (G), then the 3-band algorithm produces a T -pseudoschedule.
Finally, suppose G is such that for any uv ∈ E(G) − E(T ), | dist T (u, r) − dist T (v, r)| = 1. In this case dependency cycles cannot occur at all, and the algorithm becomes almost trivial!

Analysis
The analysis of the d-band algorithm is blessedly simpler than the proof of correctness. For this section, we say that a d-band coloring s uses (max Image(s))+ 1 colors; this forces us to account for "gaps" in the set of colors actually appearing in s. For the upper bound, consider a vertex v with dist T (v, r) = d − 1. Its parent p v has at most ∆ G − 2 neighbors distinct from v but at the same T -level as v.
Additionally, v has at most ∆ G − 1 stepchildren, each of which could have a distinct parent. This is a total of 2∆ G − 2 vertices (including v), so which yields the upper bound.
To establish tightness, first construct T as follows: fix some m ≥ 2, introduce vertex r, and attach to it two paths of length d−2 each. Let the endpoints be called p x and p y , and attach to each the vertices x 1 , x 2 , . . . , x m−1 and y 1 , y 2 , . . . , y m−1 respectively. Finally, to each y i attach a vertex z i (1 ≤ i ≤ m − 1).
To build G, take T and introduce the edges x i z j for every 1 ≤ i, j ≤ m − 1. T is a spanning tree of G and ∆ G = ∆ T = m. Furthermore, it is easy to confirm that every vertex in {x 1 , y 1 , x 2 , y 2 , . . . , x m−1 , y m−1 } must be colored differently under any T -pseudo-schedule. Since these vertices are all at T -level d − 1, we hit the upper bound.
In general we obtain an approximation ratio of 2 3 d∆.

Implementation issues
The worst-case number of colors used by the d-band algorithm is, importantly, linear in the degree of the graph, but typically one should expect performance worse than either the greedy or 2∆ algorithms due to the potentially large gaps in the image of the coloring function. We do recover complete freedom in the choice of spanning tree, but with potentially explosive consequences for d; in practice one must use spanning trees that (nearly) minimize distance to root. Conceptually the algorithm is qualitatively more complex than the alternatives due to the problems of resolving dependencies.
That said, the d-band algorithm is almost surely the best protocol candidate of the three algorithms we have encountered. Reliance on information at distance two is quite modest thanks to the division of the graph into bands that operate virtually independently. Most importantly, the algorithm is distributed and decentralized, requiring no mutual exclusion mechanisms: determining when to "wait" flows naturally out of the algorithm's state semantics. Very aggressive parallelism is also possible, although this is spoiled by the presence of dependency chains and cycles. As a rule of thumb, spanning trees should be constructed (more or less) greedily to avoid such cycles-but of course this tends to boost ∆ T , which in turn tends to increase color consumption. Finally, the d-band algorithm is an example of self-organization as defined by Dressler [6]: Self-organization is a process in which structure and functionality (pattern) at the global level of a system emerge solely from numerous interactions among the lower-level components of a system without any external or centralized control. The systems components interact in a local context either by means of direct communication or environmental observations without reference to the global pattern.
Indeed, the d-band algorithm is arguably a very strong example of a self-organizing system, since its global structure is provably, not just heuristically or empirically, guaranteed. 2 The ideas realized in the design of the algorithm may be useful in the general study of self-organization.

Dismantleable (cop-win) graphs
Dismantleable graphs are also called cop-win because they are precisely the graphs on which the following vertex pursuit game, played by a "cop" and a "robber," can always be won by the cop: the cop chooses a starting vertex, followed by the robber; the players move alternately, starting with the cop, with each move consisting of staying put or going to an adjacent vertex. The game is played with complete information, and the cop wins iff he moves into the vertex occupied by the robber. The equivalence of the two classes was discovered by Nowakowski and Winkler [7].
A third characterization of dismantleable graphs is due to Prisner [8]. For any graph G, let the pared graph P (G) be defined as follows: first, identify all vertices with the same closed neighborhood with a single representative; then remove all dominated vertices. We can pare the graph as many times as we like, so let the kth pared graph P k (G) be defined as P (P k−1 (G)) where P 0 (G) = G. A graph is dismantleable iff there exists some nonnegative integer k such that the kth pared graph is trivial; the smallest such k is called the pare-index of G.
Via the pared graphs, any dismantleable graph has a natural spanning tree: for any vertex v in P k (G) but not P k+1 (G), let the parent of v be a vertex that dominates it in P k (G). Observe that the height of the resulting spanning tree is equal to the pare-index of G.
Let a dismantleable graph G have r-rooted spanning tree T as just described, and let dom(v) denote the parent of v in T . Algorithm 3.5.1 produces a T -pseudoschedule on G. We require some notation: a vertex u is prior to v iff u is adjacent to dom(v). We write u v iff u is prior to v, or u is prior to some x such that x v; observe that is a preorder (a reflexive, transitive binary relation). Finally, that ∼ partitions V k and that the blocks of V k / ∼ have a natural total strict order (possibly by linear extension).

Proof of correctness
We show that the coloring s produced by Algorithm 3.5.1 on a dismantleable graph G, given a dom spanning tree T rooted at r, is a T -pseudo-schedule. Note First we show that (u, v) is nonconflicting. Clearly s(u) = s(v). Now for any is adjacent to x and dom(x) is adjacent to u, so s(u) = s(x), regardless of which is colored first. If, alternately, the distances are equal, then x is adjacent to u, thus Algorithm 3.5.1: Pseudo-scheduling the dismantleable graph Input: G, a dismantleable graph with dom spanning tree T rooted at r.
add p → k to s 10 return s 11 dom(x) is adjacent to u, and s(u) = s(x). In the final case, dom(x) is adjacent to v, hence u is adjacent to dom(x), and s(u) = s(x).

Now consider (v, u). For any
within one of dist T (r, u). If the former is no more than the latter, s(v) = s(w) is obvious, since w was colored first. In the remaining case, note that w is prior to v. If w was colored first, s(v) = s(w); if, however, v was colored first, it must be that v, w are in the same block B ∈ V dist T (r,v) / ∼. But then w could not have been given the same color as any T -child of u in B. We conclude that s(v) = s(w).

Analysis
Theorem 3.9. Let h denote the number of colors used by Algorithm 3.5.1 on a nontrivial dismantleable graph G with dom spanning tree T rooted at r. Then Furthermore, these bounds are tight. To see that the upper bound is tight, begin with K 4 : let one vertex be r, and call the other vertices p x , p y , p z . Fix m ≥ 2. Attach to p x the vertices x 1 , x 2 , . . . , x m , to p y the vertices y 1 , y 2 , . . . , y m , and to p z the vertices z 1 , z 2 , . . . , z m . Finally, introduce the edges x i p y , y i p z , z i p x for all 1 ≤ i ≤ m. This graph has a dom spanning tree as such: dom(p x ) = dom(p y ) = dom(p z ) = r, dom(x i ) = p x , dom(y i ) = p y , and dom(z i ) = p z . There are 3m + 4 vertices, and it is not hard to see that each one receives a unique color. The degree of the graph is 2m + 3, and the degree of the spanning tree is m + 1, so the upper bound is achieved.
The improvement in colors over the 2∆ algorithm is only marginal, but here we have the advantage of a spanning tree with rich semantic content, as opposed to one selected for the algorithm's peculiar advantage. We could, for example, set up a detection network modeled on a dismantleable graph to direct an automaton intercepting an intruder: the "cop-win" structure guarantees interception eventually-in number of turns not exceeding the pare-index, in fact-while network communications are organized by means of the st-pseudo-schedule.

List of References
[1] T. Ren, "Graph coloring algorithms for TDMA scheduling in wireless sensor networks," Ph.D. dissertation, University of Rhode Island, 2007.
[5] I. Rhee, A. Warrier, J. Min, and L. Xu, "DRAND: distributed randomized TDMA scheduling for wireless ad-hoc networks," in Seventh ACM International Algorithm 3.5.2: AcquireColor Input: v, "this" vertex.  Hardness In this chapter we consider the hardness of optimization (more precisely, the hardness of the related decision problem) and the hardness of approximation of pseudo-scheduling algorithms.
Let PSCHED be the set of ordered pairs (G, d) such that The set can be described as a language of strings by canonical encoding methods.
We can also define the analogous set/language STPSCHED where It is easy to prove that both sets are in NP. For STPSCHED, we require as witness, in addition to s, a spanning tree T .
We confirm that T is a spanning tree and that for each e ∈ E(T ), e is bidirectional under s-all of which can be done in polynomial time. If the checks are passed, then s is a T -pseudo-schedule, thus an st-pseudo-schedule.
The main results of this chapter are presented below.

Hardness of optimization
Our method of proving that PSCHED is NP-Hard will be analogous to Karp's proof of the hardness of L(1)-labeling [1] and McCormick's proof of the hardness of L(1, 1)-labeling [2]; that is, reduction from 3SAT, the language of satisfiable Boolean formulas in conjunctive normal form with exactly three literals per clause.
It is convenient to describe 3SAT in set-theoretic terms. Given a set of n variables {x 1 , . . . , x n }, we can give a set of 2n literals {x 1 , x 1 , . . . x n , x n }. A clause is a three-element subset of the literals. A formula is a set of m clauses {C 1 , . . . , C m }.
Then a formula F on variables X is in 3SAT iff there exists some truth assignment We make the following assumptions about F : 1. No clause of F contains both x and x for any variable x.
2. For every variable x, both x and x appear in different clauses of F .
These assumptions hold without loss of generality, as any well-formed formula can be converted into the desired form in polynomial time.
Our aim is to exhibit, for any formula F with n variables and m clauses, a graph G(F ) that admits an (st-)pseudo-schedule in m + n + 5 colors iff F ∈ 3SAT.
The first element of G(F ) is the color gadget K m,n where Note that K m+n+5 is a graph minor of K m,n by contraction of the edges {k i , k i,j }.
Also comprising G(F ) are the variable gadgets X i where The final component of G(F ) are the vertices {C 1 , . . . , C m }, which represent the clauses.
We can now completely define the graph G(F ). The vertex set is given by The edge set is given by  Proof. Let K consist of one "false color" ⊥; n "true colors" ⊤ 1 , . . . , ⊤ n ; m "clause colors" α 1 , . . . , α m ; and four "separator colors" ω 1 , . . . , ω 4 . We shall show that there exists an st-pseudo-schedule s : V (G(F )) → K provided there exists a truth assignment φ satisfying F .
We start by defining s over the color gadget, beginning with the following assignments: For the next set of assignments, we will find it convenient to let k b,a be an alias for k a,b when a < b; we also consider all subscripts to be modulo m + n + 5.
Furthermore, we allow ourselves to refer to the color s(v) whenever s is already defined on the vertex v. Let us continue, then, with the vertices on the major cycle: and then the cycle in steps of two: To complete the color gadget, we introduce the mappings for all 0 ≤ i < j ≤ m + n + 4 where k i,j has not yet been colored.
We now turn to the variable gadgets. For all 1 ≤ i ≤ n, color X i as follows: To complete the definition of s, we need only add the mappings Figure 10 shows a portion of s for a particularly simple formula.
Having defined s, let us now show that it is an st-pseudo-schedule. We note first that the cycle L 0 = k 0 , k 0,1 , k 1 , . . . , k m+n+4 , k m+n+4,0 , k 0 is bidirectional. Every vertex k i,j not on L 0 has a bidirectional edge to either k i or k j ; and whichever vertex cannot be reached directly from k i,j is reachable via L 0 .
Therefore s is an st-pseudo-schedule over the color gadget.
For each variable gadget X i , either the path k i+3 , x i,i+3 , x i or k i+3 , x i,i+3 , x i is bidirectional in s, depending on whether φ(x i ) is true or false, respectively; let us denote the bidirectional path by L i . Furthermore, for any there is bidirectional edge with k j when it is colored differently than k i ; otherwise it has a bidirectional edge with x i (x i ). As x i , z i , x i is also bidirectional, this and L i provides a means for every vertex in X i to reach any other vertex in the same variable gadget, or via L 0 any vertex in the color gadget and all other variable gadgets.
Finally, the edge between a clause vertex C j and a literal vertex is bidirectional if the literal is true-colored-but every clause vertex is adjacent to a true-colored literal since φ satisfies F .
It is worth noting in the proof above that how we color G(F ) is, in some sense, tightly constrained by the very structure of the graph. This turns out to be an essential factor in proving the converse lemma (and makes the proof less intricate). Proof. Observe that if a vertex v is adjacent only to the two distinct vertices x and y, then any (spanning tree) pseudo-schedule of the graph must assign x and y to different colors-for if not, neither (x, v) nor (y, v) are nonconflicting, and there is no nonconflicting path to v. It follows immediately that the color gadget K n,m requires m + n + 5 colors, and thus so does G(F ). Let s be a (st-)pseudo-schedule of G(F ) in m + n + 5 colors; without loss of generality we may assume that the colors of k 0 , . . . , k m+n+4 are named as in the proof of Lemma 4.4.
Reasoning as above, it must be that s(x i ), s(x i ) ∈ {⊥, ⊤ i }, and further that s(x i ) = s(x i ), for all 1 ≤ i ≤ n. Therefore a truth assignment φ can be defined by the natural interpretation of the color of each positive literal vertex.
Each clause vertex is reachable by a nonconflicting path only if there is at least one true-colored vertex adjacent to it, which corresponds exactly to the condition of φ being a satisfying assignment for F .
We can now proceed to the completeness proof. The proof for STPSCHED is identical in form.

Hardness of approximation
Theorem 4.2 suggests that the search for optimal polynomial-time algorithms is unlikely to be fruitful, or more precisely, success is too fruitful to be likely. We therefore resort to approximate algorithms, as in §3, but we would like to understand if our algorithms are tight. Unfortunately we are far from understanding this for the pseudo-scheduling problem, but the reduction presented in the previous section immediately rules out the existence of an FPTAS, assuming P = NP.
The presentation in this section follows Vazirani's textbook [3].
A problem Π is strongly NP-Hard iff every problem in NP can be polynomially reduced to Π in such a way that numbers in the reduced instance are written in unary; in other words, numbers are polynomially bounded by the length of the original instance. 3SAT is vacuously strongly NP-Hard since its natural instance form, the formula, contains no numbers.
PSCHED and STPSCHED do contain numbers, but the reduction from 3SAT described in the previous section produces the number m + n + 5, where m is the number of clauses and n the number of variables in the 3SAT instance.
This is clearly polynomially (actually linearly) bounded by the 3SAT instance, so PSCHED and STPSCHED are strongly NP-Hard.
Proof of Theorem 4.3. Observe that k = χ 1,1 (k = χ 1,1 ) is bounded by the length of any instance of PSCHED (STPSCHED) written in unary, since the instance describes the graph, and k is trivially no greater than the number of vertices.
Garey and Johnson [4] showed that a strongly NP-Hard problem satisfying this condition refuses an FPTAS, unless P = NP.
List of References problem in radio networks. L(h, k)-labelings with h ≥ 3 or k ≥ 1 appear to be of purely theoretical interest; Calamoneri [3] surveys known results.
In this chapter we will establish bounds and hardness results on χ h,k .
where ∆ * is the smallest possible degree of a spanning tree of G.
Fiala et al. [4] proved that the decision problem version of L(h, k)-labeling is NP-Complete. This is also the case for L(h, k)-labeling. We can also rule out the existence of an FPTAS; since the proof is basically identical to the proof of Theorem 4.3, we present the result without further comment. To obtain the upper bound, we need only modify the proof of Theorem 3.5, which calculated the upper bound of the 2∆ algorithm. Observe that a vertex needs to have color h away from its parent, excluding at most 2h − 1 colors; and furthermore the color must be k away from the as many as 2(∆ G − 1) vertices at distance two that are checked, excluding at most 2(∆ G − 1)(2k − 1) colors.
Summing the number of excluded colors and adding one for the vertex itself yields the upper bound.
The lower bound is tight: for any m ≥ 1, take K m,1 , color the dominant vertex with 0, and color the remaining vertices h, h + k, . . . , h + k(m − 1). I do not know if the upper bound is tight-recall that this is unresolved even for h = k = 1.
On a related note, let us observe that all the algorithms presented in §3 will work for L(h, k)-labeling after making the obvious modifications, with the exception of the d-band algorithm. Even there, however, we can simply multiply every palette by h, although this seems wasteful when h > k. A more sophisticated choice of palette may be possible in this case.

Hardness
For fixed integer parameters h ≥ k ≥ 1, let PLABEL h,k be the set of ordered The set can be described as a language of strings by canonical encoding methods.
We also define STPSCHED h,k where To establish Theorem 5.2, we will proceed somewhat differently than in §4. In that chapter we reduced from 3SAT; here we reduce from NAE3SAT, the language of Boolean formulas in conjunctive normal form with exactly three literals per clause that are satisfiable with a truth assignment that exhibits at least one false literal per clause. NAE3SAT can be described as a set: where the formula F is a set of clauses C, each clause being a three-element subset of the literals L over variables X such that L = {x, x; x ∈ X}. The function φ : X → {⊥, ⊤} is a truth assignment.
NAE3SAT was shown to be NP-Complete by Garey and Johnson [5]. Without loss of generality, we may assume that no clause contains both x and x for any variable x; and that for any variable x, both x and x appear in (different) clauses of F . (Observe that a formula not conforming to these assumptions can be transformed into an equivalent conforming formula in polynomial time.) Schematically, our proof method will be to show that for every (possibly empty) well-formed formula F , one can efficiently construct a graph G F such that F admits a satisfying assignment iff G F has a L(h, k)-labeling in some efficientlycomputable number of colors.

Hardness of PLABEL h,1
It is not difficult to show the hardness of PLABEL(h, k) by our constructions if the hardness of PLABEL(h, 1) is already established, so we take the latter problem first. From this point forward, we consider a formula F with m clauses C 1 , . . . , C m and n variables x 1 , . . . , x n , conforming to the assumptions mentioned above.
The formula graph G F is comprised of a color gadget K h,m,n ; n variable gadgets X 1 , · · · , X n ; and vertices C 1 , . . . , C m coinciding with the clauses of F . Intuitively, the color gadget forces to minimum number of colors to a certain "useful" level.
The variable gadgets connect to the color gadget in such a way that particular colors can be identified with the Boolean values ⊤ and ⊥, certain vertices can be identified with the literals, and these "literal" vertices are labeled with "Boolean" colors in a meaningful manner. Finally, each clause vertex is set adjacent to the literals it contains.
Let us first consider the color gadget K h,m,n . Its vertex set is comprised of N = 2h 2 + 2h + m + n main vertices and N 2 intermediate vertices.
The intermediate vertices can be seen as "straddling" the edges in what would otherwise be a clique over the main vertices.
The critical thing to note is that no two main vertices can be assigned the same color in any pseudo-labeling; for if this were the case for two main vertices k a , k b The edges of the vertex gadget are also constructed according to the principle of "straddling" edges in order to force color difference.
At this point we are ready to assemble the formula graph itself. The vertices are simply the vertices of the assorted gadgets, plus the clause vertices.
Finally we connect the color gadget to the variable gadgets, and the variable gadgets to the clauses (while, of course, retaining all the edges previously introduced).
The global structure of G F induces a sufficient condition on the existence of a satisfying assignment.
Lemma 5.4. Fix h ≥ 1 and let F be some formula of m clauses over n variables.
Proof. If m = n = 0, the result is vacuously true, so assume not. The color gadget ensures that no L(h, 1)-labeling occurs in fewer than N = 2h 2 + 2h + m + n colors.
Let s be a (spanning tree) pseudo-(h, 1)-labeling of G F in N colors. Since we can name colors anything we want, let s(k 0 ) be the "false color" ⊥, and s(k N −m−1 ) be the "true color" ⊤.
There is an intermediate vertex in the variable gadget X i between either literal vertex and every main vertex of the color gadget, save k 0 and k N −m−1 , so x i and x i must be colored either ⊥ or ⊤. Furthermore, the intermediate vertex between these literals compels them to be colored differently from one another. Therefore we can define a Boolean function φ over the variables based on whether each x i is colored "true" or "false." Now consider any clause vertex C j where 1 ≤ j ≤ m. In order for a nonconflicting pair terminating at C j to exist, at least one of the three literal vertices adjacent to C j must be colored uniquely relative to the other two. Thus φ is a not-all-equal satisfying assignment of F .
Next we establish the converse, at least for nearly every case.
Lemma 5.5. Fix h ≥ 2 and let F be some formula of m clauses over n variables.
We begin with the color gadget K h,m,n . The main vertices are simple enough: From this point forward, we implicitly take colors and subscripts modulo N and let k b,a be an alias for k a,b where a < b. (Thus, for instance, k N −1,N = k N −1,0 = k 0,N −1 .) For all 0 ≤ i < N and 1 ≤ j ≤ h 2 : Finally, for all 0 ≤ i < j < N such that k i,j remains uncolored: where the mapping is defined by the first listed condition that is true. (For example, We say that a color α is "free" on vertex v when α / ∈ s(N G F [v]). Note that • the colors 0 and N − m − 1 are free on all k i where h 2 + h ≤ i < h 2 + h + n; • the color h 2 +h+j is free on k i and k N −m−i−1 for all 1 ≤ i < h and 0 ≤ j < n;

and
• the color h 2 + h + j is free on k i for all N − m ≤ i < N and 0 ≤ j < n.
This will come in handy when we color the vertex gadgets.
Claim. The function s is a spanning tree L(h, 1)-labeling of K h,m,n .
Proof. The following set T of edges, which contains a spanning tree of K h,m,n , are all bidirectional: "to the right." The remaining intermediate vertices k i,j adjacent to k i present no potential conflicts at k i , since they will either be colored i or j.
We partition the intermediate vertices to the left and right as follows: and note that these vertices take colors in the intervals respectively. N is large enough to ensure that disjoint intervals remain disjoint even modulo N, so we conclude that the only vertices potentially conflicting at k i are in L 1 ∪ R 1 ; ie, they lie within "radius" h − 1 of k i .
Let 0 < a, b < h and consider the vertices k i−a,i and k i,i+b with colors i − a + h(h − a + 1) and i + h(h − b + 1), respectively. If these colors were equal (modulo and once again N is too large for the congruence. We conclude that vertices in L 1 ∪ R 1 do not cause conflicts at k i , and since k i was chosen arbitrarily, the claim is proved.
An immediate consequence of the claim is the truth of the lemma for the empty formula.
We are now ready to complete the construction of s. The clauses are easy to color: For the variable gadget X i where 1 ≤ i ≤ n: Here, clearly, we are designating 0 as the "false color" and N − m − 1 as the "true color." As φ is a not-all-equal satisfying assignment, we are guaranteed that for every clause vertex C q (1 ≤ q ≤ m) there exists some literal l ∈ C q such that (l, C q ) is nonconflicting.
Note that if the vertex x i,j is colored j, the edge {x i , x i,j } is bidirectional; if it is colored α, then {x i,j , k j } is bidirectional since α is free on k j ; and for x i,h 2 +h+i−1 , both incident edges are bidirectional. Furthermore, the edge {x i , z i } is bidirectional, and (C, x i ) is a nonconflicting pair for all clauses C such that x i ∈ C.
We now color the intermediate vertices adjacent to negative literals. We can use essentially the same approach, with all appropriate "switching" for the negation. Also, we no longer need a special case for j = h 2 + h + i − 1, for reasons we will discuss shortly. So with i, j, α as in the preceding paragraph: Observe that the edge {x i , z i } is bidirectional. The pair (C, x i ) is nonconflicting for all clauses C such that x i ∈ C.
Let B i denote the bidirectional edges in X i . If e ∈ B i is incident on the color gadget, we attach it to the bidirectional spanning tree already described on the color gadget; otherwise add it to a set T i . Now observe that the bidirectional path x i , x i,h 2 +h+i−1 , k h 2 +h+i−1 "bridges" the spanning tree on the color gadget and T i ; hence we conclude that s is a spanning tree pseudo-(h, k)-labeling over the color and variable gadgets.
To complete the proof, it suffices to show just one bidirectional edge incident on each clause vertex-but this is precisely what the assignment φ allows us to claim.
At this point we have enough to show hardness in the case h > k = 1, but in fact we are already so close to the general case that we can proceed directly to the proof.
Proof of Theorem 5.2. The proof of Lemma 4.1 establishes that the problems are in NP for the case h = k = 1, and the algorithm given there is easily adapted for the general case.
NP-Hardness of the case h = k = 1 was established in §4.1, so consider every other case. Given formula F in m clauses and n variables, consider G F as defined above. Due to the structure of the color gadget, the only way to color it is to assign a unique color to every vertex, and then multiply each color by k. The number of colors is then k(2h 2 + 2h + m + n) − k + 1 = k(2h 2 + 2h + m + n − 1) + 1.
We claim that G F admits a (spanning tree) pseudo-(h, k)-labeling in k(2h 2 + 2h + m + n − 1) + 1 colors iff F ∈ NAE3SAT. For the forward implication, we argue precisely as in the proof of Lemma 5.4, modifying only the number of colors as per the preceding considerations. For the reverse implication, we simply color G F as in the proof of Lemma 5.5, then multiply each color by k.
Our claim shows that there is a reduction from NAE3SAT to PLABEL h,k (ST P LABEL h,k ). Furthermore, this reduction is polynomial-time, since G F has only O((m + n) 2 ) vertices. (Remember that h, k are treated as fixed constants.) We conclude that PLABEL h,k (ST P LABEL h,k ) is NP-Hard.

CHAPTER 6 Conclusion
Recall from §1 that the study offered to present a new formal framework for explicit scheduling solutions to the broadcast scheduling problem that would both be algorithmically tractable and reduce schedule size. Our investigation has surely demonstrated that the L(1, 1)-labeling is such a framework, and we have made substantial progress in the formal analysis of this new type of graph coloring problem. While we can be satisfied that the study is complete in that sense, by no means have we exhausted the subject.
In this, the concluding chapter, we will consider a series of questions that we have either had to leave unresolved or were not able to raise until now.

Open problems
Problems are presented in the order in which the relevant topics were encountered.
Open Problem 1. Establish whether the upper bound 2∆ on χ 1,1 is tight. If not, find a tight upper bound; if so, characterize the graphs that achieve the upper bound.
As mentioned in §2.3, the only graphs I know that achieve the 2∆ upper bound are K 2 -for which the upper bound equals the lower bound-and C 3k+2 (k ≥ 1), although in this case ∆+ 2 may be what is "really" happening. On the other hand, 2∆ is an intuitively appealing upper bound. I consider this the top open problem, since it represents a chink in the armor of fundamental results.
If 2∆ is a tight bound, we would like to establish a kind of "Brooks' Theorem" for it by characterizing the graphs that hit the bound. Theorem 2.8 demonstrates that such a class, if it exists, is "small." Open Problem 2. Characterize the graphs G such that χ 1,1 > ∆ G + 1.
Refer to Table 2 on p. 29: the empirical data suggests that graphs with pseudo-(1, 1)-number above ∆ + 1 are "rare." I even find them hard to construct deliberately. A characterization of such graphs would be immensely useful; merely having meaningful necessary or sufficient conditions would also be desirable, particularly if they related to graph classes frequently studied as network models (scale-free, unit disk, etc).
Open Problem 3. Let p = p(n) be "sufficiently far" from zero or one (eg, 0 < p < 1 is a constant). Establish whether for almost every random graph G = G(n, p).
Referring again to Table 2, the empirical data suggests that the expectation µ of ( χ 1,1 − ∆) goes to −∞ as n → ∞. If this is true, and furthermore the variation can be shown to be o(µ 2 ), by Chebyshev's inequality we can establish the desired result. Indeed, we would have χ 1,1 − ∆ ∼ µ almost always, a very powerful result, provided we can say anything specific about µ.
Open Problem 4. Establish whether χ 1,1 (G) = χ 1,1 (G) for all graphs G. If not, characterize the graphs for which this holds and investigate the preceding open problems relative to χ 1,1 .
In Figure 5 on p. 24 we saw that not every pseudo-schedule is spanning tree, but I do not know any graph for which χ 1,1 = χ 1,1 . If indeed χ 1,1 = χ 1,1 , we would gain a powerful proof tool, since the additional structure of st-pseudo-schedules makes them easier to investigate. We would also be spared a lot of work, since a from u. A pseudo-schedule is then defined in the normal way, but note that we have effectively required nonconflicting paths to proceed over E, while additionally having to avoid conflicts induced by I.
The interference graph is a more realistic model for broadcast networks, although the fact that one cannot normally assume that communication is possible over interference edges means that the discovery of the interference graph is itself a difficult problem. The protocol RID of Zhou et al. [1] solves the problem by varying transmit power and letting I be more or less synonymous with links realized in a high-power mode but not under normal power.
Assuming the interference graph is discoverable, we would like to refactor the d-band algorithm ( §3.4) for such graphs, since we assessed this algorithm to be a strong protocol candidate. Supposing G has an r-rooted tree T , note that the d-band algorithm already works without modification when | dist T (x, r) − dist T (y, r)| = 1 for all (x, y) ∈ I, provided d is sufficiently large, since the algorithm ignores all such edges anyway. Thus the easiest modifications would involve choosing r and/or T such that this condition is realized, although I do not know that this is always possible. If indeed not, changes to the algorithm proper are probably unavoidable.
Open Problem 7. Establish fixed-parameter hardness results for PSCHED and STPSCHED, and hardness results for particular graph classes.
Similarly, we would like to show that there exists some constant c such that it is NP-Complete to determine if the (st-)pseudo-(1, 1)-number of a graph is more than c. It is reasonable to suspect that c = 3, 4.
It is also hard to determine the (1, 1)-number of many graph classes, including unit disk graphs and planar graphs [2]. We would like to resolve similar questions for PSCHED (STPSCHED), particularly relative to classes that model networks.
The discovery the PCP Theorem, which characterizes NP in terms of the class of decision problems with probabilistically checkable proofs, known as PCP, marked a revolutionary advance in the study of inapproximability; see §29 of [3]. Our inapproximability result, Theorem 4.3, is a very weak finding based on techniques that predate the PCP Theorem. Using a modern approach, we would like to derive tighter inapproximability results; I suspect that a proof that χ 1,1 ( χ 1,1 ) cannot be approximated within any constant factor may not be too difficult.
Open Problem 9. Investigate the preceding open problems relative to pseudo-(h, k)-labeling.