Stack and Queue Layouts of Directed Acyclic Graphs: Part I

Lenwood S. Heath, Sriram V. Pemmaraju, Ann N. Trenk
1999 SIAM journal on computing (Print)  
Stack layouts and queue layouts of undirected graphs have been used to model problems in fault tolerant computing and in parallel process scheduling. However, problems in parallel process scheduling are more accurately modeled by stack and queue layouts of directed acyclic graphs (dags). A stack layout of a dag is similar to a stack layout of an undirected graph, with the additional requirement that the nodes of the dag be in some topological order. A queue layout is de ned in an analogous
more » ... r. The stacknumber (queuenumber) of a dag is the smallest number of stacks (queues) required for its stack layout (queue layout). In this paper, bounds are established on the stacknumber and queuenumber of two classes of dags: tree dags and unicyclic dags. In particular, any tree dag can be laid out in 1 stack and in at most 2 queues; and any unicyclic dag can be laid out in at most 2 stacks and in at most 2 queues. Forbidden subgraph characterizations of 1-queue tree dags and 1queue cycle dags are also presented. Part II of this paper presents algorithmic results|in particular, linear time algorithms for recognizing 1-stack dags and 1-queue dags and proof of NP-completeness for the problem of recognizing a 4-queue dag and the problem of recognizing a 9-stack dag. Stack layouts and queue layouts of undirected graphs have appeared in a variety of contexts such as VLSI design, fault-tolerant processing, parallel process scheduling, sorting networks, and parallel matrix computations 3, 4, 7, 8]. Bernhart and Kainen 1] introduce the concept of stack layouts, under the name book embeddings. Motivated by problems in fault-tolerant processing, Chung, Leighton, and Rosenberg 3] examine stack layouts of undirected graphs and construct optimal stack layouts for a variety of classes of graphs. Motivated by problems in parallel process scheduling, Heath, Leighton, and Rosenberg 4, 8] develop the notion of queue layouts and provide optimal queue layouts for many classes of undirected graphs. However, problems in parallel process scheduling are more accurately modeled by stack and queue layouts of directed acyclic graphs (dags). Bhatt, Chung, Leighton, and Rosenberg 2] provide an example of a control-memory trade-o in parallel process scheduling, obtained by examining queue layouts of binary trees. Stack and queue layouts of dags while in residence at Dartmouth College. 1 2 LENWOOD S. HEATH, SRIRAM V. PEMMARAJU, AND ANN N. TRENK are also closely related to stack and queue layouts of partially ordered sets (posets). Nowakowski and Parker 9] and Syslo 10] initiate the study of stack layouts of posets; Heath and Pemmaraju 6] extend the study to queue layouts of posets. In this paper, we de ne stack and queue layouts of dags and develop combinatorial results for stack and queue layouts of some special classes of dags. Each of these classes arises from some property of the undirected graph underlying a dag. In particular, we consider the property of the underlying undirected graph being a path, a cycle, a tree, or a unicyclic graph. We also give forbidden subgraph characterizations of 1-queue tree dags and 1-queue cycle dags. In the companion paper 5], we develop algorithmic results for stack and queue layouts of dags. In particular, we show that 1-stack and 1queue dags can be recognized in linear time, while the problems of recognizing 9-stack dags and 4-queue dags are both NP-complete. The organization of this paper is as follows. Section 1 contains de nitions, notation, and an initial discussion of 1-queue dags. In Section 2, we examine stack layouts of tree dags and unicyclic dags. In Section 3, we examine the queue layouts of tree dags and unicyclic dags. In Section 4, we present a forbidden graph characterization of 1-queue tree dags and 1-queue cycle dags. Section 5 contains concluding remarks and a conjecture.
doi:10.1137/s0097539795280287 fatcat:bvdba6xkfbeqrgikapiw2di2pe