+ All Categories
Home > Documents > Graph ear decompositions and graph embeddings

Graph ear decompositions and graph embeddings

Date post: 03-May-2023
Category:
Upload: independent
View: 0 times
Download: 0 times
Share this document with a friend
14
GRAPH EAR DECOMPOSITIONS AND GRAPH EMBEDDINGS * JIANER CHEN AND SAROJA P. KANCHI SIAM J. DISCRETE MATH. c 1999 Society for Industrial and Applied Mathematics Vol. 12, No. 2, pp. 229–242 Abstract. Ear decomposition of a graph has been extensively studied in relation to graph connectivity. In this paper, a connection of ear decomposition to graph embeddings is exhibited. It is shown that constructing a maximum-paired ear decomposition of a graph and constructing a maximum-genus embedding of the graph are polynomial-time equivalent. Applications of this connection are discussed. Key words. graph connectivity, graph embedding, ear decomposition, graph maximum genus, algorithm AMS subject classifications. 05C10, 05C40, 05C85, 57M15, 68R10 PII. S0895480196304234 1. Introduction. An ear decomposition of a graph is a way of partitioning the edge set of the graph into an ordered collection of edge-disjoint simple paths called ears. It is well known that a graph has an ear decomposition if and only if it is 2-edge-connected [21]. Ear decomposition of a graph has received considerable attention recently be- cause of its close relation to graph connectivity. Lovasz [15] first noted that ear decompositions can be found quickly in parallel. Ear decompositions have been used in designing efficient sequential and parallel algorithms for 2-edge-connectivity, 2- vertex-connectivity, 3-vertex-connectivity [17], and 4-vertex-connectivity [14]. Variations of ear decomposition of a graph have also been proposed. The concept of 2-connected semisimplicial ear decomposition was introduced in the study of average genus of 2-connected simple graphs [4]. Algorithms for efficiently constructing 3- connected ear decompositions have been discussed [8]. Cheriyan and Maheshwari [9] used nonseparating ear decomposition to develop efficient algorithms for finding independent spanning trees in a graph. Ear decompositions for 4-connected graphs have also been studied [7, 20]. The maximum genus γ M (G) of a graph G is defined to be the maximum inte- ger k such that there exists a cellular embedding of G into the orientable surface of genus k. Since the introductory investigation by Nordhaus, Stewart, and White [16], maximum genus embeddings of a graph have been extensively studied. (For a survey, see Ringeisen [18].) Certain graph classes can be precisely characterized by their maximum genus. For example, a graph has maximum genus 0 if and only if it is a cactus [18], and a 2-edge-connected graph has maximum genus 1 if and only if it is a necklace (with five exceptions) [5]. Recent investigations on maximum genus have focused on developing efficient algorithms for maximum genus embeddings of a graph. A polynomial-time algorithm for constructing a maximum genus embedding * Received by the editors May 24, 1996; accepted for publication (in revised form) December 23, 1998; published electronically April 29, 1999. This research was supported in part by National Science Foundation grants CCR-9110824 and CCR-9613805. http://www.siam.org/journals/sidma/12-2/30423.html Department of Computer Science, Texas A&M University, College Station, TX 77843-3112 ([email protected]). Department of Science and Mathematics, Kettering University, Flint, MI 48504 (skanchi@ kettering.edu). The research of this author was partially supported by the Engineering Excellence Award from Texas A&M University. 229
Transcript

GRAPH EAR DECOMPOSITIONS AND GRAPH EMBEDDINGS∗

JIANER CHEN† AND SAROJA P. KANCHI‡

SIAM J. DISCRETE MATH. c© 1999 Society for Industrial and Applied MathematicsVol. 12, No. 2, pp. 229–242

Abstract. Ear decomposition of a graph has been extensively studied in relation to graphconnectivity. In this paper, a connection of ear decomposition to graph embeddings is exhibited.It is shown that constructing a maximum-paired ear decomposition of a graph and constructinga maximum-genus embedding of the graph are polynomial-time equivalent. Applications of thisconnection are discussed.

Key words. graph connectivity, graph embedding, ear decomposition, graph maximum genus,algorithm

AMS subject classifications. 05C10, 05C40, 05C85, 57M15, 68R10

PII. S0895480196304234

1. Introduction. An ear decomposition of a graph is a way of partitioning theedge set of the graph into an ordered collection of edge-disjoint simple paths calledears. It is well known that a graph has an ear decomposition if and only if it is2-edge-connected [21].

Ear decomposition of a graph has received considerable attention recently be-cause of its close relation to graph connectivity. Lovasz [15] first noted that eardecompositions can be found quickly in parallel. Ear decompositions have been usedin designing efficient sequential and parallel algorithms for 2-edge-connectivity, 2-vertex-connectivity, 3-vertex-connectivity [17], and 4-vertex-connectivity [14].

Variations of ear decomposition of a graph have also been proposed. The conceptof 2-connected semisimplicial ear decomposition was introduced in the study of averagegenus of 2-connected simple graphs [4]. Algorithms for efficiently constructing 3-connected ear decompositions have been discussed [8]. Cheriyan and Maheshwari[9] used nonseparating ear decomposition to develop efficient algorithms for findingindependent spanning trees in a graph. Ear decompositions for 4-connected graphshave also been studied [7, 20].

The maximum genus γM (G) of a graph G is defined to be the maximum inte-ger k such that there exists a cellular embedding of G into the orientable surfaceof genus k. Since the introductory investigation by Nordhaus, Stewart, and White[16], maximum genus embeddings of a graph have been extensively studied. (For asurvey, see Ringeisen [18].) Certain graph classes can be precisely characterized bytheir maximum genus. For example, a graph has maximum genus 0 if and only if itis a cactus [18], and a 2-edge-connected graph has maximum genus 1 if and only ifit is a necklace (with five exceptions) [5]. Recent investigations on maximum genushave focused on developing efficient algorithms for maximum genus embeddings of agraph. A polynomial-time algorithm for constructing a maximum genus embedding

∗Received by the editors May 24, 1996; accepted for publication (in revised form) December23, 1998; published electronically April 29, 1999. This research was supported in part by NationalScience Foundation grants CCR-9110824 and CCR-9613805.

http://www.siam.org/journals/sidma/12-2/30423.html†Department of Computer Science, Texas A&M University, College Station, TX 77843-3112

([email protected]).‡Department of Science and Mathematics, Kettering University, Flint, MI 48504 (skanchi@

kettering.edu). The research of this author was partially supported by the Engineering ExcellenceAward from Texas A&M University.

229

230 JIANER CHEN AND SAROJA P. KANCHI

of a graph was developed by Furst, Gross, and McGeoch [10] based on a charac-terization of the maximum genus of a graph given by Xuong [22] and an efficientmatroid parity algorithm by Gabow and Stallmann [11]. A linear-time algorithm forconstructing a maximum genus embedding of a graph of bounded maximum genushas been developed by Chen [1].

In this paper, we exhibit an interesting connection between ear decompositionsand maximum genus embeddings of a graph. We introduce the concept of maximum-paired ear decomposition of a graph (the precise definition will be given in section 2).We prove that a maximum-paired ear decomposition of a graph G is k-paired if andonly if the maximum genus of the graph G is k. Then we show by developing effi-cient algorithms that constructing a maximum-paired ear decomposition of a graphis polynomial-time equivalent to constructing a maximum genus embedding of thegraph. Since a maximum genus embedding of a graph can be constructed in poly-nomial time [10], our results imply a polynomial-time algorithm for constructing amaximum-paired ear decomposition of a graph. Applications of this connection willalso be discussed.

We point out that our results lose no generality with the restriction that thegraph has an ear decomposition, i.e., the graph should be 2-edge-connected. In fact,the maximum genus of a graph is equal to the sum of maximum genera of its 2-edge-connected components [5]. Thus, our results can be applied directly to each2-edge-connected component of a graph if it is not 2-edge-connected.

The paper is organized as follows. Section 2 reviews the related algorithmic andtopological preliminaries and definitions. In section 3, the relationship between eardecompositions and Xuong trees, which are a kind of spanning tree closely relatedto maximum genus embeddings, is investigated. Section 4 studies the algorithmicrelationship between maximum genus embeddings and Xuong trees. Combining theresults of sections 3 and 4, section 5 concludes with the algorithmic relationshipbetween maximum genus embeddings and maximum-paired ear decompositions. Someapplications of this relationship are also described.

2. Preliminaries and definitions. It is assumed that the reader is somewhatfamiliar with the fundamentals of graph embeddings. For further description, seeGross and Tucker [12].

A graph may have multiple adjacencies or self-adjacencies. The topological spacesdiscussed in this paper are all subspaces of the 3-dimensional space. An orientablesurface is a closed and connected 2-dimensional manifold that does not contain aMobius band. It is well known that every orientable surface is homeomorphic to ageneralized torus Sg for some integer g ≥ 0, where Sg is obtained from a sphere byadding g handles. The integer g is called the genus of the surface Sg. A sphere,for example, is a surface of genus 0, a torus is a surface of genus 1, and a two-handled torus is a surface of genus 2. An embedding of a graph G to a surface S is acontinuous one-to-one mapping. The embedding is cellular if each component of S−Gis homeomorphic to an open disk. All our embeddings in this paper are cellular.

A rotation at a vertex v is a cyclic permutation of the edge-ends incident on v.A list of rotations, one for each vertex of the graph, is called a rotation system of thegraph.

An embedding of a graph G in an orientable surface induces a rotation systemas follows: The rotation at vertex v is the cyclic permutation corresponding to theorder in which the edge ends are traversed in an orientation-preserving tour around v.Conversely, by the Heffter–Edmonds principle, every rotation system induces a unique

GRAPH EAR DECOMPOSITIONS AND GRAPH EMBEDDINGS 231

embedding of G into an orientable surface (see [12]). This bijectivity enables us tostudy graph embeddings based on graph rotation systems. We will interchangeablyuse the phrases “an embedding of a graph” and “a rotation system of a graph.” Inparticular, if ρ(G) is a rotation system of a graph G, we will denote by γ(ρ(G)) thegenus of the corresponding embedding of the graph G. Moreover, there is a linear-time algorithm that, given a rotation system ρ(G) of a graph G = (V,E), traces theboundary walks of all faces in the rotation system ρ(G) [6]. Thus, the genus γ(ρ(G))of the rotation system ρ(G) can be calculated in linear time using the Euler polyhedralequation [12]:

|V | − |E|+ |F | = 2− 2γ(ρ(G)),

where F is the set of faces in the rotation system ρ(G).Let T be a spanning tree of a graph G. The edge complement G − T will be

called a cotree. The number of edges in any cotree is known as the cycle rank of G,denoted β(G). For each edge e in the cotree G − T , the unique simple cycle in thegraph T ∪ {e} is called the fundamental cycle of e with respect to the spanning treeT .

The deficiency ξ(G,T ) of a spanning tree T for a graph G is defined to be thenumber of components of G − T that have an odd number of edges. The deficiencyξ(G) of the graph G is defined to be the minimum of ξ(G,T ) over all spanning treesT of G. A spanning tree T is a Xuong tree if ξ(G,T ) = ξ(G). Xuong [22] obtained acharacterization of maximum genus γM (G) of a graph G in terms of deficiency of thegraph.

Proposition 2.1 (see [22]). Let G be a connected graph. Then

γM (G) =β(G)− ξ(G)

2.

The effect of inserting or deleting an edge in a graph embedding has been discussedin the literature (see, e.g., [18, Theorem 1.2] and [10, section 2.4]). For the reader’sconvenience, we list the related results in the following propositions.

Let ρ(G) be an embedding of a connected graph G. Suppose that we insert a newedge e = [u, v] into the embedding ρ(G), where u and v are vertices of G.

Proposition 2.2. If the edge-ends u and v of e are inserted between two cornersof the same face F in ρ(G), then the new edge e splits the face F into two faces withthe embedding genus unchanged. If the edge-ends u and v of e are inserted betweencorners of two different faces F1 and F2 in ρ(G), then both these faces are merged bye into one larger face with the embedding genus increased by 1.

Figure 2.1 illustrates how an edge is inserted in the two different situations. Fig-ure 2.1(a) inserts a new edge (u, x) between the two face corners 〈vuw〉 and 〈wxv〉,which belong to the same face. The insertion of the edge (u, x) splits the face [vuwxv]into two faces [uxvu] and [uwxu] and does not change the embedding genus. Fig-ure 2.1(b) inserts a new edge (u, y) between the two face corners 〈vuw〉 and 〈wyx〉,which belong to different faces. The insertion of the edge (u, y) merges the faces[vuwxv] and [wyxw] into a single face [uwxvuyxwyu] and increases the embeddinggenus by 1.

The inverse operation of edge insertion is edge deletion. Let ρ(H) be an embed-ding of a graph H and let e′ be an edge in H such that e′ is not a cut-edge. Then wehave the following proposition.

232 JIANER CHEN AND SAROJA P. KANCHI

u

v

w

x

yu

v

w

x

y

(a)

u

v

w

x

yu

w y

x

(b)

Fig. 2.1. (a) inserting an edge between two corners of the same face; (b) inserting an edgebetween corners of two different faces.

Proposition 2.3. If both sides of the edge e′ belong to the same face F in ρ(H),then deleting the edge e′ from ρ(H) splits the face F into two faces and decreases theembedding genus by 1; while if the edge e′ is on the boundary of two different facesF1 and F2 in ρ(H), then deleting the edge e′ merges the two faces into a single facewithout changing the embedding genus.

Note that inserting an edge into an embedding never decreases the embeddinggenus and that deleting an edge from an embedding never increases the embed-ding genus.

Following the standard definition [17], we define an ear decomposition D = [P1,P2, . . . , Pr] of a graph G to be a partition of edge set of G into an ordered collection ofedge-disjoint simple paths P1, P2, . . . , Pr such that P1 is a simple cycle and Pi, i ≥ 2, isa path with only its endpoints in common with P1+· · ·+Pi−1. Each Pi is called an ear.

We now introduce the notions of pairing and maximum pairing in an ear decom-position.

Definition 2.4. A pairing in an ear decomposition D = [P1, P2, . . . , Pr] is apartition of the ears into pairs of matched ears and single ears such that each pair ofmatched ears consists of two consecutive ears Pi and Pi+1, where the ear Pi+1 has anendpoint on the ear Pi. A maximum pairing of the ear decomposition D is a pairingthat maximizes the number of pairs of matched ears.

The following theorem shows that a maximum pairing of a given ear decomposi-tion can be constructed very efficiently.

Theorem 2.5. Given an ear decomposition D = [P1, P2, . . . , Pr] of a 2-edgeconnected graph, a maximum pairing in D can be constructed in linear time.

Proof. Represent the ear decomposition D = [P1, P2, . . . , Pr] as a graph H inwhich each ear Pi is a vertex. There is an edge between two vertices Pi and Pi+1 inthe graph H if and only if the ear Pi+1 has an endpoint on the ear Pi. It is not hard tosee that the graph H is a union of disjoint simple paths and a maximum matching inthe graph H corresponds to a maximum pairing in the ear decomposition D. Finally,because of its special structure, a maximum matching in the graph H can be easilyconstructed in linear time.

GRAPH EAR DECOMPOSITIONS AND GRAPH EMBEDDINGS 233

If a maximum pairing of an ear decomposition D has k pairs of matched ears, wesay that the ear decomposition D is k-paired. A maximum-paired ear decompositionof a graph G is a k-paired ear decomposition such that k is the largest overall eardecomposition of G.

3. Ear decomposition and Xuong tree. In this section, we first developefficient algorithms to show that constructing a maximum-paired ear decomposition ofa graph and constructing a Xuong tree of the graph are linear-time equivalent. Basedon these results, a conclusion is derived that a maximum-paired ear decomposition ofa graph is k-paired if and only if the maximum genus of the graph is k.

Let H be a (not necessarily connected) graph. Two edges in the graph H areadjacent if they have an endpoint in common. An adjacency matching in H is apartition of edges of H into groups of one or two edges, called 1-groups and 2-groups,respectively, such that two edges in the same 2-group are adjacent. We say that thetwo edges in the same 2-group are matched, and the edge in a 1-group is unmatched.A maximum adjacency matching in H is an adjacency matching that maximizes thenumber of 2-groups.

Lemma 3.1. In a maximum adjacency matching of a graph H, the number ofunmatched edges is equal to the number of components of H that have an odd numberof edges. Moreover, a maximum adjacency matching of H can be constructed inlinear time.

Proof. The fact that the number of unmatched edges in a maximum adjacencymatching of the graph H is equal to the number of components of H that have anodd number of edges was first observed by Xuong [22]. A linear-time algorithm thatconstructs a maximum adjacency matching of a graph has been given in [10, Theorem3.6, pp. 529–530].

Let G be a 2-edge-connected graph and let T be a Xuong tree of G. We nameeach vertex in G by its preorder number in the tree T . Given a pair of vertices u andv, we denote by lca(u, v) the least common ancestor of u and v in the tree T . Wealso say that a vertex w is the least common ancestor of a cotree edge e = [u, v] ifw = lca(u, v). Note that the least common ancestor of a cotree edge e is the smallestvertex in the fundamental cycle of e.

Consider the algorithm Xuong-to-Ears in Figure 3.1. In the following, we provethat this algorithm constructs a maximum-paired ear decomposition for the graph G.

Lemma 3.2. If the graph G is 2-edge-connected, then every edge e in G is assigneda unique ear number ear(e) in the algorithm Xuong-to-Ears.

Proof. Let T be the Xuong tree in the algorithm Xuong-to-Ears. According tostep 4 of the algorithm, each cotree edge e gets a different number num(e). Therefore,each cotree edge e gets a unique ear number ear(e) in step 5. For each tree edge e′,since the graph G is 2-edge-connected, the edge e′ must be in the fundamental cycleof some cotree edge. Therefore, the set Ae′ of the numbers ear(e), where e is a cotreeedge such that e′ is in the fundamental cycle of e, is not empty. Now step 6 assignsthe ear number ear(e′) to equal to the minimum in Ae′ , which is unique since allcotree edges have different ear numbers. In consequence, for each tree edge e′, the earnumber ear(e′) is also well defined and unique.

Lemma 3.3. The algorithm Xuong-to-Ears constructs a valid ear decompositionfor the graph G. That is, there is an ear decomposition D = [P1, P2, . . . , Pr] of thegraph G such that the ear Pi consists of exactly those edges that are assigned an earnumber i by the algorithm Xuong-to-Ears.

234 JIANER CHEN AND SAROJA P. KANCHI

Algorithm Xuong-to-Ears

Input: a Xuong tree T of a 2-edge-connected graph GOutput: an ear decomposition of G

1. Rename each vertex of G by its preorder number in the tree T ; constructthe cotree H = G− T ;

2. construct a maximum adjacency matching M in H;3. sort all edges in the cotree H by their least common ancestors; let the

sorted list be L1;4. assign each cotree edge e a number num(e) as follows: for each pair of

matched edges L1(i) and L1(j) inM, where i < j, assign num(L1(i)) = 2iand num(L1(j)) = 2i + 1; for each unmatched edge L1(k) in M, assignnum(L1(k)) = 2k;

5. sort all cotree edges by their new assigned numbers num(·); let the sortedlist be L2; now for each cotree edge e = L2(i), assign ear(e) = i;

6. for each tree edge e′, assign ear(e′) = min{ear(e)}, where the minimum istaken over all cotree edges e whose fundamental cycle contains e′.

Fig. 3.1. The algorithm Xuong-to-Ears.

Proof. Let the cotree edges in the sorted list L2 be e1, e2, . . . , er, with ear(ei) = ifor i = 1, 2, . . . , r. First note that by our construction, only edges in the fundamentalcycle of the cotree edge ei may be assigned an ear number i, and that if an edge inthe fundamental cycle of ei has an ear number different from i, then the edge musthave an ear number less than i. In particular, the fundamental cycle of e1 containsthe root of the tree T and every edge in it is assigned an ear number 1. This formsthe first ear, P1.

Consider the cotree edge ei = [xi, yi], i > 1, with ear(ei) = i. Let the directedtree paths (directed from child to parent) from xi and yi to the vertex lca(xi, yi) beQx and Qy, respectively. If all the tree edges on Qx and Qy are assigned ear numberi, then the ear Pi is the fundamental cycle of ei. Note that if the vertex lca(xi, yi)is not the root of T , then it must be contained in the fundamental cycle of anothercotree edge ej , with j < i.

Suppose that some edge in the fundamental cycle of ei has an ear number lessthan i. We show that there are two vertices vx and vy on the paths Qx and Qy,respectively, such that all edges before the vertex vx (respectively, vy) on the pathQx (respectively, Qy) are assigned ear number i and all edges after the vertex vx(respectively, vy) on the path Qx (respectively, Qy) are assigned ear number less thani. Let f1 be the first edge on Qx with ear(f1) = j < i. Consider the cotree edgeej = [xj , yj ] with ear(ej) = j. According to steps 4 and 5 of the algorithm, we musthave either lca(ej) ≤ lca(ei), or lca(ej) > lca(ei) and {ej−1, ej} is a matched pair inM with lca(ej−1) ≤ lca(ei), for the cotree edge ej−1 = [xj−1, yj−1]. We first observethat because there is a unique directed tree path from the edge f1 to the root of thetree and the edge f1 is shared by the fundamental cycles of the cotree edges ej andei, the vertex lca(ej) is either an ancestor or a descendent of the vertex lca(ei).

Suppose lca(ej) ≤ lca(ei). Then lca(ej) is an ancestor of lca(ei). Thus, all edgeson the path Qx after the edge f1 belong to the fundamental cycle of the cotree edgeej and should have ear numbers of at most j, which is smaller than i.

On the other hand, suppose lca(ej) > lca(ei) and {ej−1, ej} is a matched pair inM with lca(ej−1) ≤ lca(ei) for the cotree edge ej−1 = [xj−1, yj−1]; then lca(ej) ison the path Qx. Since the partial path on Qx from the edge f1 to the vertex lca(ej)belongs to the fundamental cycle of the cotree edge ej , the edges on this partial path ofQx have ear numbers of at most j, which is smaller than i. It remains to examine the

GRAPH EAR DECOMPOSITIONS AND GRAPH EMBEDDINGS 235

partial path of Qx from the vertex lca(ej) to the vertex lca(ei). Since the cotree edgesej and ej−1 are matched (thus they share a common endpoint), the least commonancestors lca(ej) and lca(ej−1) must be on the same tree path from this endpoint tothe root of the tree. Now since lca(ej−1) ≤ lca(ei) < lca(ej) and the vertex lca(ei)is on the tree path from lca(ej) to the root of the tree, we conclude that the partialpath of Qx from the vertex lca(ej) to the vertex lca(ei) must be entirely contained inthe fundamental cycle of the cotree edge ej−1. Thus, all edges on this partial path ofQx have ear numbers of at most j − 1, which is smaller than i. This concludes thatall edges on the path Qx after the edge f1 have ear numbers smaller than i.

Completely similar proof shows that if we let f2 be the first edge with an earnumber less than i on the path Qy, then all edges on the path Qy after the edge f2

should have ear numbers smaller than i.Therefore, we can find a vertex vx on the path Qx and a vertex vy on the path Qy

such that the edges on the path between the vertices vx and vy that contains the edgeei in the fundamental cycle of ei are the only edges that have ear number i. Theseedges form the ear Pi.

Let H = G− T be the cotree and letM be the maximum adjacency matching inH constructed by the algorithm Xuong-to-Ears in step 2. By Lemma 3.1, the numberof unmatched edges in M is equal to the deficiency ξ(G) of the graph G. Thus, thenumber of pairs of matched edges inM is (β(G)− ξ(G))/2, which is equal to γM (G)by Proposition 2.1. Since each pair of matched edges inM is adjacent in the list L2,their ear numbers differ by exactly 1. Thus, their corresponding ears are consecutivein the ear decomposition. Moreover, they have at least one vertex in common. Thisgives us the following lemma immediately.

Lemma 3.4. The ear decomposition constructed by the algorithm Xuong-to-Earsis k-paired, where k ≥ γM (G).

In fact, the integer k in Lemma 3.4 cannot be larger than γM (G) because of thefollowing lemma.

Lemma 3.5. If a graph G has a k-paired ear decomposition, then γM (G) ≥ k.Proof. Let D = [P1, P2, . . . , Pr] be a k-paired ear decomposition of the graph G

and let P be a maximum pairing of D. We construct an embedding of G by firstembedding the cycle P1 into the plane then inserting the ears P2, . . . , Pr one by onein that order into the embedding. Inductively, suppose that we have embedded theears P1, . . . , Pj−1 and the next two ears Pj and Pj+1 are a pair of matched ears. Wefirst arbitrarily insert the ear Pj . If this increases the embedding genus, then wearbitrarily insert the ear Pj+1. On the other hand, if inserting the ear Pj does notincrease the embedding genus, then by Proposition 2.2 Pj must split a face F of theembedding of P1 + P2 + · · ·+ Pj−1 into two faces F1 and F2. Therefore, all edges ofthe ear Pj are on the boundary of the two faces F1 and F2. Now since the ear Pj+1 ismatched with Pj , it has an endpoint on the ear Pj . Thus, no matter where the otherendpoint of Pj+1 is (including the case that the two endpoints of Pj+1 are attached tothe same vertex), we are always able to insert the ear Pj+1 so that the two endpointsof the ear Pj+1 are inserted into corners of two different faces of the embedding ofP1 + P2 + · · · + Pj−1 + Pj . By Proposition 2.2 again, this increases the embeddinggenus by 1.

We also arbitrarily insert all the single ears.According to the above description, we can always insert each pair of matched

ears in P in such a way that increases the embedding genus by at least 1; therefore,this construction will result in an embedding of genus at least k.

236 JIANER CHEN AND SAROJA P. KANCHI

Now we are ready for our first theorem in this section.Theorem 3.6. A 2-edge-connected graph G has maximum genus k if and only

if every maximum-paired ear decomposition of G is k-paired. Moreover, a maximum-paired ear decomposition of the graph G can be constructed from a Xuong tree of Gin linear time.

Proof. Lemma 3.5 shows that the graph G does not have a k-paired ear decom-position, with k > γM (G), while Lemma 3.4 and Lemma 3.5 together show that thealgorithm Xuong-to-Ears constructs a γM (G)-paired ear decomposition for the graphG. To complete the proof of the theorem, we need to show only that the algorithmXuong-to-Ears runs in linear time.

Step 1 of the algorithm can be done trivially in linear time. Step 2 can be donein linear time according to Lemma 3.1. To compute the least common ancestor foreach cotree edge, we use Schieber and Vishkin’s algorithm [19], which can computethe least common ancestor of any two vertices in constant time with a linear-timepreprocessing. All sortings in the algorithm can be implemented using bucket sortingthat takes linear time. Finally, to assign ear numbers to the tree edges, we pick thecotree edges sorted in the list L2. For each cotree edge ei = [xi, yi], we traversethe two tree paths Qx and Qy from the vertices xi and yi, respectively, to the leastcommon ancestor of ei and stop at a vertex that belongs to an ear of smaller index.By the proof of Lemma 3.3, exactly those edges traversed in the process should beassigned the ear number ear(ei). This process obviously can be done in linear time.This proves that the algorithm Xuong-to-Ears runs in linear time.

Furst, Gross, and McGeoch [10] have developed an O(m2n log6 n)-time algorithmthat constructs a Xuong tree for a graph G, where m is the number of edges and nis the number of vertices in G. This result with Theorem 3.6 gives us a polynomial-time algorithm for constructing a maximum-paired ear decomposition given a 2-edge-connected graph.

Theorem 3.7. A maximum-paired ear decomposition of a 2-edge-connected graphG of n vertices and m edges can be constructed in time O(m2n log6 n).

Theorem 3.6 indicates that a maximum-paired ear decomposition of a 2-edge-connected graph can be constructed from a Xuong tree of the graph. In the following,we show the converse of this fact, that is, how a Xuong tree of a 2-edge-connectedgraph is constructed from a maximum-paired ear decomposition of the graph.

Lemma 3.8. Let D = [P1, P2, . . . , Pr] be an ear decomposition of a graph G. LetS be a subset of ears in D. Let GS be a subgraph of G obtained by deleting one edgefrom each ear in S. Then the graph GS is a connected spanning subgraph of G.

Proof. It suffices to prove the lemma for the case that S contains all ears in D.Since no vertices are deleted, the graph GS is a spanning subgraph of the graph G.

The connectedness of the graph GS can be proved easily by induction on the numberof ears in the ear decomposition D, based on the following observation: Suppose thatthe graph G′S = (P1 + · · ·+ Pr−1)− S is connected; then every edge in the ear Pr isin a cycle in the graph G′S + Pr. Thus, deleting any edge in Pr from G′S + Pr stillleaves a connected graph.

Now consider the algorithm Ears-to-Xuong in Figure 3.2.Theorem 3.9. Given a maximum-paired ear decomposition of a 2-edge-connected

graph, the algorithm Ears-to-Xuong constructs a Xuong tree of the graph G in lineartime.

Proof. By Theorem 2.5, step 1 can be done in linear time. By Theorem 3.6, thepairing P has γM (G) pairs of matched ears.

GRAPH EAR DECOMPOSITIONS AND GRAPH EMBEDDINGS 237

Algorithm Ears-to-Xuong

Input: a maximum-paired ear decomposition D of GOutput: a Xuong tree T of the graph G

1. Construct a maximum pairing P in the ear decomposition D; let the γM (G)pairs of matched ears in P be {Pij , Pij+1}, 1 ≤ j ≤ γM (G);

2. for each pair {Pij , Pij+1}, let vj be a vertex shared by Pij and Pij+1,delete an edge eij in Pij and an edge eij+1 in Pij+1 such that both edgesare incident on vj ;

3. let GS be the subgraph of G after the edge deletions in step 2, construct aspanning tree T in GS ; T is a Xuong tree of the graph G.

Fig. 3.2. The algorithm Ears-to-Xuong.

It is easy to see that steps 2 and 3 take linear time. By Lemma 3.8, the graph GSis a connected spanning subgraph of G. Therefore, the spanning tree T of GS is alsoa spanning tree of the graph G. Moreover, since in the cotree G−T there are γM (G)pairs of adjacent edges eij and eij+1, 1 ≤ j ≤ γM (G), the number of components inG−T that has an odd number of edges cannot be larger than β(G)−2γM (G) = ξ(G).Therefore, the spanning tree T is a Xuong tree of the graph G.

Combining Theorem 3.6 and Theorem 3.9, we obtain the next theorem.Theorem 3.10. Constructing a Xuong tree of a 2-edge-connected graph and

constructing a maximum-paired ear decomposition of the graph are linear-time equiv-alent.

In a pairing of an ear decomposition D, pairs of matched ears and single ears are,in general, interlaced. The canonical pairing of D is the pairing of D that pairs thefirst 2k ears in the ear decomposition D into k pairs of matched ears and lets all otherears be single ears, with k being the largest possible integer. Note that the numberof pairs of matched ears in the canonical pairing of D may be less than the numberof pairs of matched ears in a maximum pairing of D.

The canonical pairing of an ear decomposition can be trivially constructed, andit has a more uniform and simpler structure than a general pairing in the ear decom-position. More importantly, the canonical pairing of ear decompositions has foundapplications in the study of upper-embeddable subgraphs (see Theorem 5.2) and inthe study of lower bound on the maximum genus and the average genus of a graph[13]. These results are based on the following theorem, which shows that Theorem 3.6is still valid even if we restrict it to only canonical pairings of ear decompositions.

Theorem 3.11. Every 2-edge-connected graph G has an ear decomposition whosecanonical pairing has γM (G) pairs of matched ears.

Proof. Let D = [P1, P2, . . . , Pr] be an arbitrary maximum-paired ear decompo-sition of the 2-edge-connected graph G. Let P be a maximum pairing of D. ByTheorem 3.6, P has γM (G) pairs of matched ears.

If the canonical pairing of D has less than γM (G) pairs of matched ears, then wecan find an index i such that in the pairing P, the ear Pi is a single ear, while the earsPi+1 and Pi+2 are a pair of matched ears. We show that we can always “shift” thesingle ear Pi two positions to the right and the pair of matched ears Pi+1 and Pi+2

one position to the left. There are three possible cases.Case 1. No endpoint of the ears Pi+1 and Pi+2 is an interior vertex of the ear

Pi. Then the sequence

D1 = [P1, . . . , Pi−1, Pi+1, Pi+2, Pi, Pi+3, . . . , Pr]

is also a valid maximum-paired ear decomposition of the graph G. Note that the

238 JIANER CHEN AND SAROJA P. KANCHI

single ear Pi has been shifted two positions to the right and the pair of matched earsPi+1 and Pi+2 has been shifted one position to the left.

Case 2. The ear Pi+1 has an endpoint on an interior vertex of the ear Pi. Thenwe make the ears Pi and Pi+1 a pair of matched ears and let Pi+2 be a single ear.Thus, in this case, we also have shifted a single ear in the pairing P two positions tothe right and shifted a pair of matched ears one position to the left.

Case 3. The ear Pi+2 has an endpoint on an interior vertex of Pi. Let the endpoint

of Pi+2 on Pi+1 be u, and let the ear Pi+1 be the path P(1)i+1uP

(2)i+1, where P

(1)i+1 and

P(2)i+1 are subpaths on Pi+1. Without loss of generality, we assume P

(1)i+1 contains at

least one edge. Then we rearrange the ears Pi, Pi+1, and Pi+2 into three new ears P ′i ,P ′i+1, and P ′i+2, as follows: P ′i = Pi, P

′i+1 = Pi+2 + P

(2)i+1, and P ′i+2 = P

(1)i+1. It is easy

to verify that the sequence

D2 = [P1, . . . , Pi−1, P′i , P

′i+1, P

′i+2, Pi+3, . . . , Pr]

is a valid maximum-paired ear decomposition of the graph G. If we construct a pairingof D2 that is identical to P except that we make P ′i and P ′i+1 a pair of matched earsand make P ′i+2 a single ear, then again this pairing has “shifted” in the pairing P asingle ear two positions to the right and a pair of matched ears one position to theleft.

Therefore, for any maximum-paired ear decomposition D of the graph G, if thecanonical pairing has less than γM (G) pairs of matched ears, then we can start witha maximum pairing P of D and apply the above process that constructs a maximum-paired ear decomposition D′ of G and a maximum pairing P ′ of D′ that shifts inthe pairing P a single ear two positions to the right and a pair of matched ears oneposition to the left. If the canonical pairing of the resulting ear decomposition D′

still has less than γM (G) pairs of matched ears, then we apply the above process onD′ and P ′ again. It is easy to see that after a finite number of applications of theprocess, we must end up with a maximum-paired ear decomposition of the graph Gwhose canonical pairing has exactly γM (G) pairs of matched ears.

We point out that, with a careful implementation of the process presented in theproof of Theorem 3.11, we can derive a linear-time algorithm that, given a maximum-paired ear decomposition of a graph G, constructs a maximum-paired ear decompo-sition of G whose canonical pairing has γM (G) pairs of matched ears. We leave thedetails of this implementation to the interested reader.

4. Maximum genus embedding and Xuong tree. We have shown that con-structing a maximum-paired ear decomposition and constructing a Xuong tree arelinear-time equivalent. It is well known that the Xuong tree of a graph is closelyrelated to the maximum genus embedding of the graph [10, 22], which induces a closerelationship between maximum-paired ear decompositions and maximum genus em-beddings. In this section, we discuss the algorithmic relationship between constructinga Xuong tree of a graph and constructing a maximum genus embedding of the graph.

An O(m2)-time algorithm was developed by Furst, Gross, and McGeoch [10],based on the construction by Xuong [22], that constructs a maximum genus embeddingof a graph G of m edges from a Xuong tree of the graph. The basic idea of thealgorithm is to start with a one-face embedding of the Xuong tree T , for which thecotree G − T has γM (G) pairs of matched edges, then add each pair of the matchededges in such a way that increases the embedding genus by 1. This construction resultsin a maximum genus embedding of the graph G. Recently, Chen [2] developed a new

GRAPH EAR DECOMPOSITIONS AND GRAPH EMBEDDINGS 239

Algorithm Embed-to-Xuong

Input: a maximum genus embedding ρ(G) of GOutput: a Xuong tree T of G

1. G′ = G; ρ′(G′) = ρ(G);2. while there is an edge e on boundary of two different faces in ρ′(G′)

delete the edge e from G′ and ρ′(G′);3. let M = φ;4. while G′ is not empty do

3.1. find an edge e1 in G′ such that a subwalk δ1 between the two sidesof e1 is the shortest in the face boundary walk of ρ′(G′);

3.2. if δ1 is emptythen delete e1 and its degree-1 end from ρ′(G′) and G′else let δ1 = l(e2)δ′1; delete e1 and e2 from ρ′(G′) and G′; add e1

and e2 to the set M ;5. let G0 = G−M ; construct a spanning tree T for G0, which is a Xuong tree

for the graph G.

Fig. 4.1. The algorithm Embed-to-Xuong.

data structure for graph embeddings on which each of the basic embedding operationssuch as edge insertion and edge deletion can be performed in time O(logm). Based onthis new data structure, the above construction from Xuong tree to maximum genusembedding can be implemented in an algorithm of running time O(m logm).

Proposition 4.1 (see [2, 10]). A maximum genus embedding of a graph can beconstructed from a Xuong tree of the graph in time O(m logm).

We now consider how to construct a Xuong tree of a graph G from a maximumgenus embedding ρ(G) of the graph. This is done in two steps. First, we find aspanning subgraph G′ of G such that the induced embedding ρ′(G′) of G′ from ρ(G)is of genus γM (G) and has only one face. Second, we construct a Xuong tree of Gfrom the embedding ρ′(G′). Consider the algorithm Embed-to-Xuong in Figure 4.1.

Theorem 4.2. Given a maximum genus embedding of a graph of m edges, thealgorithm Embed-to-Xuong constructs a Xuong tree of the graph in time O(m2).

Proof. According to Proposition 2.3, deleting an edge on the boundary of twodifferent faces in an embedding reduces the number of faces by 1 and does not changethe embedding genus. Moreover, note that a cut-edge of a graph always has its twosides on the boundary of the same face in any embedding of the graph. Therefore,deleting an edge on the boundary of two different faces in an embedding does notdisconnect the graph. Consequently, step 2 results in a connected subgraph G′ of Gand a one-face embedding ρ′(G′) of genus γM (G).

Now we consider step 4. The method we use here is similar to the one used byGross and Tucker in establishing Xuong’s characterization of graph maximum genus(see [12, proof of Lemma 3.4.9]). Each time, we look at the subgraph G′ and the one-face embedding ρ′(G′). We either delete a single edge from ρ′(G′) without changingthe embedding genus, or delete a pair of adjacent edges from ρ′(G′) and decrease theembedding genus by 1.

Consider the boundary walk of the unique face of ρ′(G′). Suppose that e1 is anedge such that a subwalk between the two sides l(e1) and r(e1) of e1 is the shortest.Therefore, the boundary walk of the face of ρ′(G′) can be written as l(e1)δ1r(e1)δ2,where δ1 and δ2 are subwalks, and δ1 is the shortest in the above sense. There aretwo cases.

If the subwalk δ1 is empty, then the boundary walk of the face is l(e1)r(e1)δ2,and one end of the edge e1 must have degree 1. Thus, deleting the edge e1 and its

240 JIANER CHEN AND SAROJA P. KANCHI

degree-1 end from the embedding ρ′(G′) neither changes the embedding genus, nordisconnects the graph G′. Moreover, the embedding after deleting the edge e1 is stilla one-face embedding.

If the subwalk δ1 is not empty, then the boundary walk of the face can be writ-ten as l(e1)l(e2)δ′1r(e1)δ2. The other side r(e2) of the edge e2 should not be con-tained in the subwalk δ′1, since otherwise the subwalk between the two sides of e2

would be shorter than δ1, contradicting the selection of the edge e1. Therefore,the boundary walk of the face of the embedding ρ′(G′) can be further written asl(e1)l(e2)δ′1r(e1)δ′2r(e2)δ′′2 . Note that the edges e1 and e2 are adjacent. We claim thatdeleting the pair of adjacent edges e1 and e2 reduces the embedding genus by 1 anddoes not disconnect the graph G′.

First consider the graph G′−{e1}. All edges that have an edge side in the subwalkl(e2)δ′1 are contained in the same connected component of G′ − {e1}, and all edgesthat have an edge side in the subwalk δ′2r(e2)δ′′2 are contained in the same connectedcomponent of G′ − {e1}. Since the edge e2 is in both components, we conclude thatthe graph G′ − {e1} is connected. By Proposition 2.3, deleting the edge e1 splits theunique face l(e1)l(e2)δ′1r(e1)δ′2r(e2)δ′′2 of ρ′(G′) into two faces, l(e2)δ′1 and δ′2r(e2)δ′′2 ,and reduces the embedding genus by 1. Now since the edge e2 is on the boundaryof these two different faces, the edge e2 is not a cut-edge in the graph G′ − {e1},thus deleting the edge e2 still results in a connected graph. Moreover, by Proposi-tion 2.3 again, deleting the edge e2 merges the two faces into a single face withoutchanging the embedding genus. Thus, after deleting the edges e1 and e2, the graphG′ remains connected and ρ′(G′) is a one-face embedding of G′ with embedding genusdecreased by exactly 1, which prepares for the next execution of the while loop bodyin step 4.

Since each deletion of a pair of adjacent edges in step 4 reduces the embeddinggenus by exactly 1, we conclude that after step 4, the set M contains exactly γM (G)pairs of adjacent edges.

We need to ensure that the subgraph G0 = G −M in step 5 is connected. Thiscan be proved by induction on the number of times the while loop body in step 4adds a pair of adjacent edges to the set M . Before any pair of adjacent edges is addedto M , M = φ and G−M is a connected graph. Now suppose that a new pair (e1, e2)of adjacent edges is to be added to the set M . By the inductive hypothesis, beforeadding (e1, e2) to M , the graph G−M is connected. As we proved above, the edge e1

is not a cut-edge of the subgraph G′ and the edge e2 is not a cut-edge of the subgraphG′ − {e1}. Therefore, the edge e1 is contained in a cycle in G′ and the edge e2 iscontained in a cycle in G′ − {e1}. Note that the graph G′ is actually a subgraphof G −M . Thus, the edge e1 is contained in a cycle in G −M and the edge e2 iscontained in a cycle in (G −M) − {e1}. Therefore, the graph (G −M) − {e1, e2} isconnected. In consequence, after adding the adjacent pair (e1, e2) to the set M , thegraph G−M is still connected.

Since no vertex is removed, the connected subgraph G0 = G−M in step 5 is alsoa spanning subgraph of G. Therefore, the tree T constructed by the algorithm Embed-to-Xuong is a spanning tree of the graph G. Moreover, since the set M contains γM (G)pairs of adjacent edges, the cotree G − T contains at least γM (G) pairs of adjacentedges. By the definition of a Xuong tree, the tree T constructed by the algorithmEmbed-to-Xuong is a Xuong tree.

We analyze the algorithm. Each execution of the while loop body in step 2 takestime O(m) by traversing the face boundaries of the embedding ρ′(G′). Thus, step 2

GRAPH EAR DECOMPOSITIONS AND GRAPH EMBEDDINGS 241

takes time O(m2). For each execution of the while loop body in step 4, we find anedge e1 in the one-face embedding ρ′(G′) such that a subwalk between the two sides ofe1 is the shortest. This can be done by traversing the face boundaries and recordingthe (circular) position for each edge side. Then the length of the subwalks betweentwo edge sides of an edge can be computed in constant time. Thus, finding the edge e1

takes time O(m). All other steps can also be done in time O(m). Therefore, step 4 ofthe algorithm takes time O(m2). In conclusion, the time complexity of the algorithmEmbed-to-Xuong is bounded by O(m2).

5. Conclusions. Combining Theorem 3.10, Proposition 4.1, and Theorem 4.2,we obtain the following interesting theorem.

Theorem 5.1. Constructing a maximum-paired ear decomposition of a 2-edge-connected graph G and constructing a maximum genus embedding of the graph arepolynomial-time equivalent. More precisely, a maximum genus embedding of G can beconstructed from a maximum-paired ear decomposition of G in time O(m logm), anda maximum-paired ear decomposition of G can be constructed from a maximum genusembedding of G in time O(m2).

Theorem 5.1 should have further applications in the study of theory and com-plexity of graph embeddings and graph connectivities. We illustrate two applicationsof the theorem as follows.

A graph G is upper-embeddable if its maximum genus is equal to bβ(G)/2c. Upper-embeddability of graphs has been studied extensively. Many interesting graph classes,including complete graphs and complete bipartite graphs, are upper-embeddable (see[18]). The following theorem relates the upper-embeddability to the connectivity of a2-edge-connected graph.

Theorem 5.2. Every 2-edge-connected graph G contains an upper-embeddablesubgraph G′ such that G′ is 2-edge-connected and the maximum genus of G′ is γM (G).Moreover, the subgraph G′ can be constructed from G in time O(m2n log6 n).

Proof. We first construct in time O(m2n log6 n) a maximum genus embeddingρ(G) of the graph G using the algorithm developed in [10]. According to Theorem 4.2,a Xuong tree T of G can be constructed from ρ(G) in time O(m2). Now basedon the Xuong tree T , we construct a maximum-paired ear decomposition D of thegraph G, using Algorithm Xuong-to-Ears. Finally, based on the maximum-paired eardecomposition D, we construct an ear decomposition D0 whose canonical pairing hasγM (G) pairs of matched ears (Theorem 3.11 and its proof). Let the first 2γM (G)ears in D0 be P1, P

′1, . . . , Pt, P

′t , where t = γM (G), and ears Pi and P ′i are matched,

i = 1, . . . , t. It is easy to verify that the subgraph G′ = P1 + P ′1 + · · ·+ Pt + P ′t of Gis upper-embeddable, has maximum genus γM (G), and is 2-edge connected.

A more complicated application of Theorem 5.1 is given by Kanchi and Chen [13],in which, based on a maximum-paired ear decomposition of 2-edge-connected graphs,a tight lower bound for maximum genus of 2-edge-connected graphs is derived (seealso [3]).

We believe that Theorem 5.1 may suggest an alternative and more direct approachfor developing polynomial-time algorithms for maximum genus embeddings of a graph.

Acknowledgments. The authors would like to thank Jonathan Gross, ArkadyKanevsky, Vijaya Ramachandran, and Arthur White for their comments and discus-sion. The authors also express their sincere thanks to two anonymous referees, whosecomments and suggestions have significantly improved the presentation of the paper.

242 JIANER CHEN AND SAROJA P. KANCHI

REFERENCES

[1] J. Chen, A linear-time algorithm for isomorphism of graphs of bounded average genus, SIAMJ. Discrete Math., 7 (1994), pp. 614–631.

[2] J. Chen, Algorithmic graph embeddings, Theoret. Comput. Sci., 181 (1997), pp. 247–266.[3] J. Chen, D. Archdeacon, and J. L. Gross, Maximum genus and connectivity, Discrete Math.,

149 (1996), pp. 19–29.[4] J. Chen and J. L. Gross, Limit points for average genus (I): 3-connected and 2-connected

simplicial graphs, J. Combin. Theory Ser. B, 55 (1992), pp. 83–103.[5] J. Chen and J. L. Gross, Kuratowski-type theorems for average genus, J. Combin. Theory

Ser. B, 57 (1993), pp. 100–211.[6] J. Chen, J. L. Gross, and R. G. Rieper, Overlap matrices and imbedding distributions,

Discrete Math., 128 (1994), pp. 73–94.[7] J. Chen and A. Kanevsky, On assembly of four-connected graphs, in Graph-Theoretic Con-

cepts in Computer Science, Lecture Notes in Comput. Sci. 657, Springer-Verlag, New York,1993, pp. 158–169.

[8] J. Chen, A. Kanevsky, and R. Tamassia, Algorithm for triconnected ear decomposition of agraph, presented at 22nd Southeastern International Conference on Combinatorics, GraphTheory, and Computing, Baton Rouge, LA, 1991.

[9] J. Cheriyan and S. N. Maheshwari, Finding nonseparating induced cycles and independentspanning trees in 3-connected graphs, J. Algorithms, 9 (1988), pp. 507–537.

[10] M. Furst, J. L. Gross, and L. A. McGeoch, Finding a maximum-genus graph imbedding, J.Assoc. Comput. Mach., 35 (1988), pp. 523–534.

[11] H. N. Gabow and M. Stallmann, Efficient algorithms for graphic matroid intersection andparity, in Automata, Languages and Programming, Lecture Notes in Comput. Sci. 194,Springer-Verlag, New York, 1985, pp. 210–220.

[12] J. L. Gross and T. W. Tucker, Topological Graph Theory, Wiley-Interscience, New York,1987.

[13] S. P. Kanchi and J. Chen, Tight lower bound on maximum genus of a 2-connected simplicialgraph, submitted.

[14] A. Kanevsky and V. Ramachandran, Improved algorithms for graph four-connectivity, J.Comput. System Sci., 42 (1991), pp. 288–306.

[15] L. Lovasz, Computing ears and branchings in parallel, in Proc. 26th Annual IEEE Symposiumon Foundations of Computer Science, Portland, OR, IEEE Computer Society Press, LosAlamitos, CA, 1985, pp. 464–467.

[16] E. Nordhaus, B. Stewart, and A. White, On the maximum genus of a graph, J. Combin.Theory Ser. B, 11 (1971), pp. 258–267.

[17] V. Ramachandran, Parallel open ear decomposition with applications to graph biconnectivityand triconnectivity, in Synthesis of Parallel Algorithms, J. Reif, ed., Morgan-Kaufmann,1993, pp. 275-340.

[18] R. Ringeisen, Survey of results on the maximum genus of a graph, J. Graph Theory, 3 (1979),pp. 1–13.

[19] B. Schieber and U. Vishkin, On finding lowest common ancestors: Simplification and paral-lelization, SIAM J. Comput., 17 (1988), pp. 1253–1262.

[20] P. J. Slater, A classification of 4-connected graphs, J. Combin. Theory Ser. B, 17 (1974),pp. 281–298.

[21] H. Whitney, Non-separable and planar graphs, Trans. Amer. Math. Soc., 34 (1932), pp. 339–362.

[22] N. H. Xuong, How to determine the maximum genus of a graph, J. Combin. Theory Ser. B,26 (1979), pp. 217–225.


Recommended