Girish Mahajan (Editor)

Queue number

Updated on
Edit
Like
Comment
Share on FacebookTweet on TwitterShare on LinkedInShare on Reddit
Queue number

In mathematics, the queue number of a graph is a graph invariant defined analogously to stack number (book thickness) using first-in first-out (queue) orderings in place of last-in first-out (stack) orderings.

Contents

Definition

A queue layout of a given graph is defined by a total ordering of the vertices of the graph together with a partition of the edges into a number of "queues". The set of edges in each queue is required to avoid edges that are properly nested: if ab and cd are two edges in the same queue, then it should not be possible to have a < c < d < b in the vertex ordering. The queue number qn(G) of a graph G is the minimum number of queues in a queue layout.

Equivalently, from a queue layout, one could process the edges in a single queue using a queue data structure, by considering the vertices in their given ordering, and when reaching a vertex, dequeueing all edges for which it is the second endpoint followed by enqueueing all edges for which it is the first endpoint. The nesting condition ensures that, when a vertex is reached, all of the edges for which it is the second endpoint are ready to be dequeued. Another equivalent definition of queue layouts involves embeddings of the given graph onto a cylinder, with the vertices placed on a line in the cylinder and with each edge wrapping once around the cylinder. Edges that are assigned to the same queue are not allowed to cross each other, but crossings are allowed between edges that belong to different queues.

Queue layouts were defined by Heath & Rosenberg (1992), by analogy to previous work on book embeddings of graphs, which can be defined in the same way using stacks in place of queues. As they observed, these layouts are also related to earlier work on sorting permutations using systems of parallel queues, and may be motivated by applications in VLSI design and in communications management for distributed algorithms.

Graph classes with bounded queue number

Every tree has queue number 1, with a vertex ordering given by a breadth-first traversal. Pseudoforests and grid graphs also have queue number 1. Outerplanar graphs have queue number at most 2; the 3-sun graph (a triangle with each of its edges replaced by a triangle) is an example of an outerplanar graph whose queue number is exactly 2. Series-parallel graphs have queue number at most 3.

Binary de Bruijn graphs have queue number 2. The d-dimensional hypercube graph has queue number at most d − 1. The queue numbers of complete graphs Kn and complete bipartite graphs Ka,b are known exactly: they are n / 2 and min { a / 2 , b / 2 } respectively.

Every 1-queue graph is a planar graph, with an "arched leveled" planar embedding in which the vertices are placed on parallel lines (levels) and each edge either connects vertices on two consecutive levels or forms an arch that connects two vertices on the same level by looping around all previous levels. Conversely, every arched leveled planar graph has a 1-queue layout. Heath, Leighton & Rosenberg (1992) conjectured that every planar graph has bounded queue number, but this remains unsolved. If the queue number of planar graphs is bounded, then the same is true for 1-planar graphs and more generally k-planar graphs. The strongest known bound on the queue number of planar graphs is not constant, but O(log n). Polylogarithmic bounds on the queue number are also known for graphs of bounded genus and more generally graphs in any minor-closed graph family.

Using a variation of queue number called the strong queue number, the queue number of a graph product can be bounded by a function of the queue numbers and strong queue numbers of the factors in the product.

Graphs with low queue number are sparse graphs: 1-queue graphs with n vertices have at most 2n − 3 edges, and more generally graphs with queue number q have at most 2qnq(2q + 1) edges. This implies that these graphs also have small chromatic number: in particular 1-queue graphs are 3-colorable, and graphs with queue number q may need at least 2q + 1 and at most 4q colors. In the other direction, a bound on the number of edges implies a much weaker bound on the queue number: graphs with n vertices and m edges have queue number at most O(√m). This bound is close to tight, because for random d-regular graphs the queue number is, with high probability,

Ω ( d n n 1 / d ) .

Graphs with queue number 1 have book thickness at most 2. For any fixed vertex ordering, the product of the book thickness and queue numbers for that ordering is at least as large as the cutwidth of the graph divided by its maximum degree. The book thickness may be much larger than the queue number: ternary Hamming graphs have logarithmic queue number but polynomially-large book thickness. It remains unknown whether the book thickness can be bounded by any function of the queue number. Heath, Leighton & Rosenberg (1992) conjectured that the queue number is at most a linear function of the book thickness, but no functional bound in this direction is known either. It is known that, if all bipartite graphs with 3-page book embeddings have bounded queue number, then all graphs with bounded book thickness have bounded queue number.

Ganley & Heath (2001) asked whether the queue number of a graph could be bounded as a function of its treewidth, and cited an unpublished Ph.D. dissertation of S. V. Pemmaraju as providing evidence that the answer was no: planar 3-trees appeared from this evidence to have unbounded queue number. However, the queue number was subsequently shown to be bounded by a (doubly exponential) function of the treewidth.

Computational complexity

It is NP-complete to determine the queue number of a given graph, or even to test whether this number is one.

However, if the vertex ordering of a queue layout is given as part of the input, then the optimal number of queues for the layout equals the maximum number of edges in a k-rainbow, a set of k edges each two of which form a nested pair. A partition of edges into queues can be performed by assigning an edge e that is the outer edge of an i-rainbow (and of no larger rainbow) to the ith queue. It is possible to construct an optimal layout in time O(m log log n), where n denotes the number of vertices of the input graph and m denotes the number of edges.

Graphs of bounded queue number also have bounded expansion, meaning that their shallow minors are sparse graphs with a ratio of edges to vertices (or equivalently degeneracy or arboricity) that is bounded by a function of the queue number and the depth of the minor. As a consequence, several algorithmic problems including subgraph isomorphism for pattern graphs of bounded size have linear time algorithms for these graphs. More generally, because of their bounded expansion, it is possible to check whether any sentence in the first-order logic of graphs is valid for a given graph of bounded queue number, in linear time.

Application in graph drawing

Although queue layouts do not necessarily produce good two-dimensional graph drawings, they have been used for three-dimensional graph drawing. In particular, a graph G has bounded queue number if and only if it is possible to place the vertices of G in a three-dimensional grid of dimensions O(n) × O(1) × O(1) in such a way that no two edges cross each other. Thus, for instance, de Bruijn graphs and graphs of bounded treewidth have three-dimensional embeddings of linear volume.

Logarithmic or polylogarithmic bounds on the queue number translate in the same way into 3d embeddings with near-linear volume, in a grid with one dimension linear and the other two polylogarithmic. Planar graphs, bounded genus graphs, and graphs of bounded local treewidth have embeddings of volume O(n log n), while graphs in minor-closed families have embeddings of volume O(n logO(1) n).

References

Queue number Wikipedia